Category Archives: MCU

ATMEGA USB 001 (schema)

Kaip jau minėjau, prisirankiojau aš keliolika ATMEL ATMEGA16 procesoriukų. Nutariau pasinagrinėti šio mikrokontrolerio darbą ir ką nors sukonstruoti. Kadangi šis mikrokontroleris turi kiek daugiau atminties, nutariau surankioti iš interneto C kalbos paprogrames ir pritaikyti savo eksperimentams. Visos programos įdėtos į šiuos interneto puslapius bus ištestuotos ir veikiančios. Bandysim ištaisyti visas galimas klaidas- pvz. vienoje USB programoje ir draiveriuose buvo supainioti vieno baito MSB ir LSB. Tai kainavo man dvi dienas darbo 🙂 kol suradau svetimą klaidą. Kas mėgino programuoti, žino kaip sunku isijausti į svetimą programą.

AVR USB

Kadangi internete prisirankiojau visokių projektų, teko pasidaryti specialią plokštę. Jis šiek tiek universali- todėl daugumas skirtingu projektų veikia ant tos pačios hardwarės.
Projektuose bus nagrinėjama: ADC, USB komunikacija, I2C, LCD modulių pajungimas, IR imtuvas (distancinis valdymas) ir t.t.
Šiam multi projektui reikia įsigyti ATMELio ATMEGA16 (gal ir tiks ir kitos, bet aš naudosiu 16 nes daug turiu), 12MHz kvarcą, USB B lizdą (iš usb imamas ir maitinimas), keletos rezistorių ir kondensatorių ir keletos šviesos diodų ir vieno kintamo resitoriaus. Taip pat reikės kištuko programatoriui ir LCD moduliui (nors modulį galima prilituoti laideliais).
PCB plokštelė padaryta ant vienpusio folguoto tekstolito, todėl PCB lengva pasidaryti namuose. Mano lazerinis printeris višai nupušo, todėl aš stengiuosi daryti plokšteles su kiek galima storesniais takeliais. Plokštė reikalauja 8 laidelių (airwires).
LCD modulis- pats paprasčiausias 2×16 simbolių alphanumerinis indikatorius su populiariausiu HD44780 kontroleriu.

“Aparato” schema:
AVR USB
(spauskit ant paveiksliuko kad pažiūrėti smulkiau)

Spausdintos plokštės eskizas:
AVR USB

Schema ir PCB Eagle formate .

MCU programuojamas su Altera ByteBlaster MV programatorium, su AVREAL programa. Beja, turiu pranešti, kad eksperimentuodamas sudeginau savo kompiuterio motinos LPT1 portą ir dabar naudoju papildomos kortos LPT adapterius.

avreal/WIN32 - AVR controllers LPT programmer by Redchuk Alexandr
v1.25rev5 (Jan 15 2007 20:02:38) http://www.ln.com.ua/~real/avreal
bug-reports, suggestions and so on mail to avreal@real.kiev.ua

Todėl aš kiek pakeičiau “make” failą. Tiksliau jo “programavimo” dalį. Pasikoreguokite pagal savo turimą programatorių arba nenaudokit “make program” komandos.

2012.08.05
Ši PCB ir kogero schema paseno. Nuo šios datos naudojama nauja versija. This PCB is absolete, please check new one in this web blog entry.

USB namuose

Tesiu savo kovą su printerio porto nebenaudojimu. Kiek pasiknaisiojes internete ir dėl to, kad viena Lietuvos elektronikos firma pamaitino mane keliolika ATMEGA16 16AI mikroschemų teko pasidaryti eksperimentinę plokštę.

USB- multiport adapter

Tai nieko naujo ar neįprasto- minėta ATMEGA16, 12MHz kvarcas ir keletas rezistorių. Kiek teko pakeisti programos kodą iš interneto ir tarp kompiuterio įrenginių atsirado AVR309: USB to UART protocol converter. Tai aparačiukas kuris prijungia prie kompo ATMEGA per USB ir su softu galima valdyti visas megos kojytes. O tai gana daug kojycių… 🙂

Dabar reikia tik nusikrauti Delfi7 ir pasirašyti savo programinę įrangą, kad per USB pumpuoti duomenis į FPGA konstrukcijas. Gal ir užkrauti FPGA konfiguracija iš pagrindinio kompiuterio. O tada atsiveria plačios lankos visokiems LCD displėjams, skaitmeniniams oscilografams ir šiaip “digital home” sistemom.

device manager

Čia device manager langelis.
Continue reading →

MSP430

Šiaip netaip iš Texas Instruments atsisiunčiau MSP430 komplektėlį. Aišku TI nusiuntė siuntinį į Lichtenšteiną o ne į Lietuvą, nes dar TI galvočiai neatrodo daugybės EU šalių. Visas komplektėlis man kainavo 34 nuinfliavusius dolerius. Už šią sumą pinigų aš gavau:

MSP430

Ant dėžutės parašyta: MSP430 Ultra-Low-Power MCUs eZ430-F2013 Development Tool. Viduje ten kompakčiukas su programine įranga, USB adapteris ir mažyčiukė dukterinė plokštelė su F2013 kontroleriuku.

Kol kas, nieko gero iš šio komplekto neišspaudžiau- tik mažyte programėlą kuri mikčioja šviesos diodą. Ir tiek. Programinė įranga kiek man nelabai suprantama ir nėra labai jau “user friendly”. Gerai, kad yra visokiausiu asemblerio ir C kalbos pavyzdukų, todėl galima aklai eksperimentuoti.

USB “pirštelis” atsidaro ir galima pasikeisti dukterinę plokšelę, ar prilituoti vieną kitą laidą. Windows XP šį stebūklą atpažysta kiek savotiškai, suinstaliuoja draiverius iš kompakto.

WindowsXP device manager

Talpos matuoklis su PIC

Vokiškuose (sprut.de) puslapiuose aš radau mažą schemutę kuri matuoja kondensatorių talpą. Schema skirta testuoti elektrolitinius kondensatorius. Teorinė dalis aprašyta autoriaus puslapiuose- ten paaiškinta, kad matuojama krovimosi ir išsikorvimo greitis. Pagal autorių, schema gali matuoti talpas nuo ~10µF iki ~65 500 µF. Prietaisas nėra labai tikslus, bet visai tinkamas testuoti elektrolitus iš motininių plokščių.

Schemą surinkau ant maketinės plokštės. Tas spalvotas kabelis einantis už paveikslėlio ribų yra ICSP kabelis į mano Willem programuotoja.

Capacitance meter

Schema yra labai paprasta. Procesorius tai Microchip PIC16LF876A-I/SP (išbandžiau būtent tokį) ar PIC16F876A.

Circuit diagram- matuoklio schema
Didesnė schema spausdinimui.

ICSP jungties aprašymas: DATA-RB7(pin 28), CLCK-RB6(pin 27), Vpp-MCLR(pin 1), Vcc-Vdd(pin 20), GND-GND(pins 8 & 19).

Dėmesio! Prieš jungiant kondensatorių prie schemos, jį reikia iškrauti. O kitaip supliaškinsit PICą.

Programinė įranga (ASM ir HEX).