Al mijn toepassingen schrijf ik in assembler. Vele van die toepassingen zijn tijdskritisch. Lib functie's zijn hiervoor niet kant en klaar beschikbaar. Vandaar, gewoon direct in assembler schrijven. Je moet eerst de pdf file grondig doorlezen en begrijpen. Eens je dit echter beheerst is er geen enkele beperking meer om gewoon te programmeren waar je zin in hebt.
Ik betaal meer aan goede toolkits zoals de STK600 + DIL sockets maar voor de toepassingen zelf gaat het dan weer heel lowcost. Een goede AVR controller kost minder dan 2 euro zoals de ATtiny26. Wat je daar allemaal mee kunt doen is enorm.
Zo heb ik vandaag het eerste printje uit een reeks van 4 stuks ( verschillende) af. Ik hoef helemaal geen dure printen te laten maken. Gewoon low cost gaatjesprint is voldoende. Dit kost veel minder dan zelfs de vrij goedkope Arduino koopprinten die nog niet eens passen in de design van je toepassing. Hierbij een fototje van mijn lowcost versie:
Bevat een ATtiny26, maakt 150V uit 6xAA batterijen en regelt die tussen 150V en 151V. Er is een flash elco aansluiting voorzien (elco staat niet op de print) van 820uF/330V. Hiermee stuur ik razendsnel een magneet om mijn externe shutter van de camera binnen 5 msec open te krijgen. De voedingspanning wordt ook gemeten, er zijn 2 potmeter aansluitingen om een gevoeligheid in te stellen en de highpiower UV leds te sturen. Er zijn controle leds voorzien met verschillende status aanduidingen en alle gegevens worden nog eens doorgestuurd naar de centrale CPLD board via een SPI highspeed verbinding.
Dit kost bijna niets, de ATtiny26 kost 1.67 euro en de weerstanden kosten 0.02 euro per stuk De software is eerst volledig geschreven en getest op mijn STK600 toolkit. Daarnaast gebruik ik nogeens eens Intronix 34 channel logic analyser die al mijn SPI verbindingen mooi weergeeft en via een gedefinieerd eigen protocol direct de serieele waarden op het scherm leesbaar weergeeft. Ik hoef dus geen bitjes te gaan analyseren om te zien welke data er doorgestuurd wordt. Nu zijn dat 4 bytes (32 bits data) en die gaan erdoor in totaal 9.4 usec.
Vele geven te weinig uit aan goede tools en te veel aan aangekochte bestukte boards. Tools moet je zien als investering over een langere termijn. Daar kun/moet je iets meer voor betalen maar als resultaat heb je een veel snellere ontwikkeling en weet je beter wat er gebeurt.
Maar ik vermoed dat TS nog weinig ervaring heeft. In dit geval moet je toch eerst wat basis proberen te leren. Zolang je niet echt logische schakelingen kunt uitwerken zal een uitgebereide toolkit je ook niet meteen een goede oplossing bieden. Dan zou ik eerder gaan naar het voorstel van it0.