Skocz do zawartości

AVR Problem z fusebitami (zablokowana)


Mateusz

Pomocna odpowiedź

Hej.

Zmieniłem na atmedze 8 fusebity w taki sposób:

Low: 0xC0

High: 0xD9

I teraz już nie mogę jej zaprogramować. Mam podłączony zewnętrzny kwarc 12Mhz.

Taki błąd mi wyskakuje w avrdude:

avrdude.exe: stk500v2_command(): command failed

avrdude.exe: stk500v2_command(): command failed

avrdude.exe: stk500v2_program_enable(): cannot get connection status

avrdude.exe: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

avrdude.exe done. Thank you.

Link do komentarza
Share on other sites

Na tej stronie masz schemat który może Ci pomóc ( mi pomógł) 😉 :

http://www.elektroda.pl/rtvforum/topic1172348.html

schemat ten z jednym rezystorem i kondensatorem

(rezystor 10k chyba a kondensator 27pf (pewnie go masz bo takich używa się przy kwarcach)

Co do fusebitów polecam tą stronę:

http://mirley.firlej.org/fuse_bity_w_mikrokontrolerach_avr

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Udało się z innego procka zrobić generator i da się zaprogramować. Jednak jak zaprogramuje fuse bity:

H D9

L FF

I tak nie mogę pracować na zewnętrznym kwarcu. Jak ustawie na kwarc wewnętrzny to działa.

Link do komentarza
Share on other sites

Schemat nie jest pełny ale kwarc jest 🙂

I jeszcze pytanko.

Czy jeżeli zasilam atmege 3.3V to tez musze coś we fuse bitach zmienić ?

Bo próbuje zrobić komunikacje po USART ale dostaje same zera od procka. Pewnie coś nie tak z BaudRate, być może przez to taktowanie procka.

wywolanie w main.c

USART_send_string("ala ma kota");

header file UART_ATM8.h

#ifndef UART_ATM8_H_
#define UART_ATM8_H_

#define FOSC 8000000UL// Clock Speed
#define BAUD 19200
#define ubrr FOSC/16/BAUD-1

void USART_Init();
void USART_send_string(char *string);

#endif

USART_ATM8.c

#define F_CPU 8000000UL
#include <avr/io.h>
#include <stdio.h>
#include "UART_ATM8.h"

void USART_Init()
{
/* Set baud rate */
UBRRH = (unsigned char)(ubrr>>8);
UBRRL = (unsigned char)ubrr;
/* Enable receiver and transmitter RX interrupt enable*/
UCSRB = (1<<RXCIE) | (1<<RXEN) | (1<<TXEN);
/* Set frame format: 8data, 1stop bit */
UCSRC = (1<<UCSZ0) | (1<<UCSZ1);
}

void USART_send_string(char *string)
{
  char znak;
  while (0!=(znak=*(string++)))
  {
	while ( !( UCSRA & (1<<UDRE)) );
	UDR=znak;
  }
} 
Link do komentarza
Share on other sites

Jest podłączony 🙂 Tylko na schemacie tego nie widać. Bo tak jak mówiłem schemat nie jest pełny, komputer mi się sformatował i tylko to udało mi się odzyskać 😉.

Chyba wiem gdzie skopałem.

Mam atmegę 8 a nie 8L. A zasilam 3.3V.

Link do komentarza
Share on other sites

Ale to nie tłumaczy, dlaczego na wewnętrznym działa, a na zewnętrznym nie przy zasilaniu 3,3V.

Może sygnał z kwarcu ma za małą amplitudę?

Czeka mnie teraz niemiła wymiana atmegi. Ehhh będzie nauczka 😋

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.