wtorek, 17 marca 2015

ML-23 ML-USBASP , błąd rc=-1 i jak to jest z prędkościami programowania

Co doprowadziło do powstania buforkowanego programatora usbasp, z możliwością zasilania zewnętrznego układu napięciami 5V i 3.3V, zaraz napiszę.



1. W razie wystąpienia zwarcia na liniach programatora spali się scalaczek SN 74 HC 244 ( znaczy się na wyjściach buforków są rezystory 330R więc musiałoby by to być długotrwałe zwarcie ), a nie mega8
2. Z urządzeń wtykanych do gniazda usb toleruje tylko pamięci przenośne
3. Dodałem jeszcze jedno "gniazdo" ( 6 pinów, które jak ulał pasuję pod atmega32 ) do podłączenia programowanego układu
4. Początkowo układ miał się mieścić w obudowie z-76, dlatego też zasilanie układu docelowego z usb przepuściłem przez mosfet-a którym steruje "tajemnicze" ustrojstwo które to nadaje się też do "dabounce"-owania przycisków ( drgania styków...... ) i co najważniejsze znane już było za czasów radzieckich . Stwierdziłem że nie będę wkładał programatorka do obudowy ........

Musiałem zmienić nieco firmware, więc pozwolę sobie napisać "....programator zawiera nasz autorski firmware...." choć to Thomas Fischl wymyślił programator.

Pisałem o błędzie -rc=1 czyli wtedy gdy chcemy do świeżo zakupionego procesorka  ( taktowanie 1MHz ) wgrać ( najpierw odczytać sygnatury itd )jakiś program. Po dłuższym czasie nieużywania programotora zapominamy o załączeniu zworki slow sck lub wpisaniu w konsoli "avr-owego kolesia" -B 8 i mamy zgryz czy to ja coś........ poniszczyłem czy może jakiś ten procek trefny....... Z tego co się orientuje to usbasp programuje w 3 trybach prędkościowych. Pierwszy tryb - jeśli nić nie kombinujemy z szybkością programowania to programuje z jakąś ustaloną AUTOmatyczną prędkością która wynosi 375 kHz, co jest za dużo jak na 1MHz. Drugi tryb - wpisujemy w konsoli "kolesia" np -B 8 dla f = 8kHz lub -B 2 dla f = 750 kHz.W trzecim trybie zakładamy zworkę slow sck i f = 8kHz. W większości przypadków "lecimy" na AUTOmatycznym ustawieniu i mamy problem z nowym prockiem. Na szczęście nie muszę się już katować zworką czy szukać konsoli, zmieniłem f automatyczną na 187.5 kHz, jak założę zworkę ssck to programuje nie z 8 kHz tylko 32 kHz. Dodatkowo tuż przed zaświeceniem diody led sygnalizującej programowanie steruje bazą tranzystora npn który pozwala na działanie buforka 74hc244, albo mogę zmienić piny do tych diód........ ale po co. Jutro zrobię speed test buforka z generatorem i oscyloskopem..... Wgrałem "autorski" firmware do swojego małego programatorka za 8zł i jest super. Z ciekawostek to "na" mosfecie tracę tylko 15mV, a buforek cały czas jest podłączony do zasilania docelowego układu.
********************************************************************************
Buforek pracuje przy 3.1V z f = 1 MHz, więcej mój generator nie wyciąga, ale mega32 z 16 MHz kwarcem daje radę zaprogramować przy f spi równej 1.5 MHz .
Poniżej schemat, te diody schotkiego przy usb to zenerki ( obudowa w eaglu mi pasowała ), od strony układu programowanego dałem zwykłą 4007, reszta to 5817. Diody "za" mosfetem nie montowałem gdyż napięcie układu programowanego musiało by być około 5.5V aby się "siłować" z napięciem USB.
Pozostaje jeszcze jedna kwestia, jak zaprogramować nasz usbasp nie mając drugiego programatora, le mając przejściówkę usb > rs232 na scalaku ft232rl, potrzebne pliki avrdude można ściągnąć  z działu download po prawej stronie. Jak w szczegółach wygląda programowanie przy pomocy ft232rl opiszę w kolejnym poście.
 

Brak komentarzy:

Prześlij komentarz