| Author |
Message
|
Balu Poziom 24

Joined: 02 Mar 2003 Posts: 4373 Location: Będzin / Gliwice
|
#1
21 Apr 2008 16:48 [AVR] Jeśli nie działa Ci AVR - sprawdź dlaczego! |
|
|
|
Ostatnie czasy na Elce coraz więcej nie działających procesorów/Programatorów/za szybko wykonywujących się opóźnień... W związku z tym może warto by było zrobić coś w stylu "Kompedium" co zrobić, jeśli nie działa...Jeśli macie jakieś z życia przykłady piszcie, będę uzupełniał:)
Nie działa procesor:
1) sprawdź czy jest zasilanie na WSZYSTKICH Nóżkach na których być powinno (AVCC, VCC)
2) Sprawdź czy masa jest tam gdzie być powinna (GND, AGND). (Nie przez procesor nie przepuszcza się gnd'a, trzeba podłączyć z ZEWNĄTRz do KAŻDEJ nóżki oznaczonej jako GND potencjał GND.
3) Czy są kondensatory na liniach zasilania (100nF między VCC a GND BLISKO procesora).
4) Czy napięcie VCC wynosi tyle ile powinno?
5) Czy na resecie nie ma niskiego stanu?
Nie mogę się skomunikować z programatorem:
1) Sprawdź połączenia używając "piszczka" / "dzwonka" w multimetrze od nóżki w procesorze oznaczonej jako MISO/MOSI/SCK/RST do nóżki w buforze (jeśli to stk200).
2) Czy są kondensatory 100nF?
3) Czy zmieniałeś FuseBity? Jeśli tak, to czy masz dolutowany kwarc i kondensatory ~30pF do każdego wyprowadzenia kwarcu (i drugą stroną do masy)?
4) Czy któraś z linii MISO/MOSI/SCK/RST nie jest przywarta do VCC/GND/czegokolwiek?
5) Jeśli to M128/M2561 czy używasz lini PE0 i PE1 (zamiast PB... MISO/MOSI mają tutaj inną funkcję - są po prostu SPI)?
6) Czy Programator USBasp jest przestawiony na mniejsza częstotliwość w przypadku zegara AVR ustawionego ponizej 1,5MHz (Zworka SLOWSCK)
Jeśli procesor działa, ale zawiesza się / resetuje/ nie działa część pinów(portów):
1) Czy są kondensatory 100nF?
2) Czy nie masz włączonego watchdoga?
3) Czy masz zasilanie na AVCC?
4) Czy masz dobrze ustawione rejestry DDRxn?
| Code: |
1- WYJŚCIE
0- WEJŚCIE
|
5) Jeśli to PORTC, czy masz wyłączony JTAG?
6) Czy jest podciąganie na linii reset do VCC (przez rezystor ok. 1...20kOhm).
Problemy z przerwaniami:
1) W kółko wyzwala się przerwanie od INTx
Jak masz skonfigurowane przerwanie (LOW LEVEL/FALLING/RISING). Jęsli LOW LEVEL, czy nie masz przypadkiem stanu niskiego na nóżce na stałe?
2) Nie wyzwalają się przerwania?
Czy masz globalne zezwolenie na przerwania (asm/c/bascom - sei/sei()/Enable interrupts).
3) Nie wyzwala się przerwanie od X a od Y się wyzwala.
Czy masz włączone zezwolenie na przerwanie od Y?
Jeśli procesor robi coś za szybko / za wolno:
1) Czy zmieniałeś FuseBity?
2) Czy ustawiłeś w programie odpowiednio C/Bascom F_CPU/$crystal
3) Czy na pewno to co masz zadeklarowane w $crystal odpowiada temu co masz wybrane fusebitami?
Problemy z UARTem:
1)Jeśli procesor wysyła śmieci...
-Czy na pewno dobrze baud rate ustawiłeś?
-Czy oba urządzenia mają ten sam baud?
-Czy używasz wew. generatora RC (jeśli tak, rozważ zmianę na kwarc / kalibrację dla danych warunków pracy).
-Zwolnij transmisję
Pozdrawiam:)
|
|
| Back to top |
|
 |
Google

|
#
21 Apr 2008 16:48 |
|
|
|
|
|
| Back to top |
|
 |
rhn Poziom 7

Joined: 22 Aug 2008 Posts: 20 Location: z daleka
|
#2
23 Mar 2010 15:56 Re: [AVR] Jeśli nie działa Ci AVR - sprawdź dlaczego! |
|
|
|
Do problemów z działaniem attiny 2313:
Upewnij się, czy piszesz do pamięci flash.
Przed chwilą sam zmagałem się z tym problemem, omyłkowo pisząc do eeprom (nie mogłem nigdzie znaleźć, jak odbywa się start procesora po podłączeniu napięcia).
|
|
| Back to top |
|
 |
Google

|
#
23 Mar 2010 15:56 |
|
|
|
|
|
| Back to top |
|
 |
York Poziom 11

Joined: 18 Apr 2003 Posts: 67 Location: Katowice
|
#3
21 Jun 2010 23:35 Re: [AVR] Jeśli nie działa Ci AVR - sprawdź dlaczego! |
|
|
|
Ha,ha,
czy wyłączyłeś JTAG?(bascom)
czy przełączyłeś kwarc na zewnętrzny/wewnętrzny?
podstawa
sory Balu,nie doczytałem,pisałeś wcześniej o JTAG,sam się naciąłem kilka razy na to ,bezwiednie,bo to takie proste,juz nie mówię o moim podstawowym błędzie(bascom) pomylić input z output:
pind.4....
portd.4....
pisząc z rozpędu to taka mała różnica.....,haha,i nic nie działa
oczywiście pind to wejście
portd to wyjście,eh.
|
|
| Back to top |
|
 |