Pe Internet, există un număr foarte mare de circuite diferite, construite pe microcontrolerele Microchip PIC și microcontrolerele din familia Atmel AVR.
Și un amator de radio novice care vrea să asambleze ceva pe microcontroler ridică imediat întrebarea cum și cum să-l programezi. În ceea ce privește microcontrolerele PIC, acest lucru este descris în detaliu aici. În acest articol, ne vom uita la circuitul LPT al programatorului și, de asemenea, cum și ce pot fi programate de controlorii AVR. Există multe dispozitive care pot bloca controlerul AVR. Să luăm în considerare câteva dintre ele.
Programare cu cinci fire.
Microcontrolerele AVR pentru programare au următoarele concluzii:
- ieșire MOSI - concepută pentru recepționarea de date;
- ieșire MOSO - pentru ieșirea de date;
- ieșire SCK - ieșire de impulsuri de sincronizare;
- ieșire RESET - vorbește de la sine, este resetată.
- Al cincilea fir este un fir comun.
Prin conectarea acestor cinci conductori prin rezistoarele de limitare actuale către portul paralel al PC-ului, obținem un programator LPT simplu pentru microcontrolerele AVR.
Când montați acest circuit, este necesar ca cablul de conectare a microcontrolerului și a portului LPT al calculatorului personal să fie cu ecranul (puteți folosi un cablu inutil de la imprimantă). Dacă nu utilizați un cablu ecranat, atunci lungimea acestuia nu trebuie să fie mai mare de 15 cm, deoarece la lungimi mai mari sunt posibile erori de programare.
LPT programator bazat pe cip 74HC244
Unul dintre dezavantajele diagramei de mai sus este probabilitatea mare ca, daca circuitul este instalat necorespunzator sau conexiunea acestuia cu calculatorul nu este corecta, este posibil sa se arda portul LPT. Pentru a le proteja și pentru a crește imunitatea la zgomot a programatorului, această schemă trebuie să fie completată cu un buffer, folosind cipul 74HC244.
În diagramă, LED-ul HL2 este destinat să indice tensiunea de alimentare, iar LED-ul HL1 indică procesul de programare.
Se pare că hardware-ul a fost sortat, acum să trecem la procesul de programare în sine.