Problem z Attiny2313

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
Awatar użytkownika
grysek67
Użytkownik
Posty: 315
Rejestracja: 27 cze 2007, 6:34
Lokalizacja: Limanowa
Kontakt:

Problem z Attiny2313

Post autor: grysek67 » 05 mar 2008, 20:32

Witam!!!


Kupilem programator do AVR i attiny2313 i zaprogramowalem go na jakis prosty programik
sprawdzilem zawartosc pamieci i wszystko ok... podłaczylem rezonator, zasilanie i nie dziala
sprawdzilem juz chyba wszystko i dalej to samo... prosze o odpowiedz

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 05 mar 2008, 20:40

A jak ustawiłeś fusebity?

Awatar użytkownika
grysek67
Użytkownik
Posty: 315
Rejestracja: 27 cze 2007, 6:34
Lokalizacja: Limanowa
Kontakt:

Post autor: grysek67 » 05 mar 2008, 20:43

nie ustawilem ale program jest wporzadku tylko niewiem czemu w praktyce nie dziala... pozdrowienia

[ Dodano: 2008-03-05, 20:48 ]
a tak wogole to attiny2313 potrzebuje kwarc??

ZbeeGin

Post autor: ZbeeGin » 05 mar 2008, 20:50

grysek67 pisze:a tak wogole to attiny2313 potrzebuje kwarc??
Jeśli to nowy sklepowy to nie. Pracuje z wewnętrznym taktowaniem 1MHz.

Poprosimy jeszcze listing programu.
Ostatnio zmieniony 05 mar 2008, 20:51 przez ZbeeGin, łącznie zmieniany 1 raz.

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 05 mar 2008, 20:50

Napisz może coś więcej. Do czego stosujesz ten mikrokontroler (może być schemat), jakim napięciem go zasilasz i jak masz aktualnie ustawione fusebity?

Awatar użytkownika
grysek67
Użytkownik
Posty: 315
Rejestracja: 27 cze 2007, 6:34
Lokalizacja: Limanowa
Kontakt:

Post autor: grysek67 » 05 mar 2008, 20:59

zasilam go 5V zaraz podrzuce listing i schemat

[ Dodano: 2008-03-06, 06:55 ]
Nawet tak prościutki programik nie dziala:(

Kod: Zaznacz cały

Do
 Set Portd.6
 Waitms 100
 Reset Port.6
 Waitms 100
Loop 
[ Dodano: 2008-03-06, 06:58 ]
pozdrowienia!

[ Dodano: 2008-03-06, 07:13 ]
I jeszcze jedno pytanko... jak ustawic wewnetrzny kwarc?? ;)
Załączniki
bez tytułu.JPG
bez tytułu.JPG (9.17 KiB) Przejrzano 15081 razy
Ostatnio zmieniony 06 mar 2008, 14:47 przez grysek67, łącznie zmieniany 1 raz.

Awatar użytkownika
kris74
Użytkownik
Posty: 270
Rejestracja: 16 sie 2006, 17:36
Lokalizacja: Gorzów Wielkopolski

Post autor: kris74 » 06 mar 2008, 8:40

A z konfigurowałeś odpowiednio wyjścia dla procesora? Zwiększyłbym na początku czasy przełączania, usuń ten układ resetu z nóżki nr 1.

ZbeeGin

Post autor: ZbeeGin » 06 mar 2008, 9:28

grysek67 pisze:Nawet tak prościutki programik nie dziala:(

Kod: Zaznacz cały

Do
  Set Portd.6
  Waitms 100
  Reset Portd.6
  Waitms 100
Loop
Bo w zasadzie nie ma prawa działać poprawnie. Brakuje na początku paru definicji:

Kod: Zaznacz cały

$regfile = "attiny2313.dat"             'bo taki używamy
$crystal = 1000000                      'bo tak taktowany jest domyślnie procesor

Config Pind.6 = Output                  'bo chcemy aby PD6 było wyjściem

Do
  Set Portd.6
  Waitms 500
  Reset Portd.6
  Waitms 500
Loop

End
grysek67 pisze:I jeszcze jedno pytanko... jak ustawic wewnetrzny kwarc?? ;)
ATTiny2313 nie ma wewnętrznego kwarcu, jest "Calibrated RC Oscillator @8MHz" i taką opcję musi mieć włączoną nowiutki procesor. Na razie nic nie zmieniaj bo chwila nieuwagi i popędzisz po nowy do sklepu.

A szeregowo z diodą LED ma być rezystor 270Ω.

Awatar użytkownika
grysek67
Użytkownik
Posty: 315
Rejestracja: 27 cze 2007, 6:34
Lokalizacja: Limanowa
Kontakt:

Post autor: grysek67 » 06 mar 2008, 13:23

a no to jeszcze jedno pytanko.... czy za każdym razem musze konfigurowac piny jak chce ich uzywac??

pozdrowionka
Ostatnio zmieniony 06 mar 2008, 14:48 przez grysek67, łącznie zmieniany 1 raz.

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 06 mar 2008, 14:37

grysek67 pisze:a no to jeszcze jedno pytanko.... czy za każdym razem musze konfigurowac piny jak chce ich uzywac??
Musisz, musisz... bo jak zamierzasz korzystać z uC nie używając jego wyprowadzeń? :D
Domyślnie wyjścia są ustawione w stan Hi-Z, czyli stan wysokiej impedancji.

ZbeeGin

Post autor: ZbeeGin » 06 mar 2008, 14:46

Ddevil pisze:Domyślnie wyjścia są ustawione w stan Hi-Z, czyli stan wysokiej impedancji.
Domyślnie wyprowadzenia procesora są wejściami w stanie wysokiej impedancji. Wynika to z zawartości rejestrów sterujących wyjściami: PORTx oraz DDRx.

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 06 mar 2008, 17:18

ZbeeGin pisze:Domyślnie wyprowadzenia procesora są wejściami w stanie wysokiej impedancji. Wynika to z zawartości rejestrów sterujących wyjściami: PORTx oraz DDRx.
Wyjścia w sensie wyprowadzenie uC - skrót myślowy.

Awatar użytkownika
grysek67
Użytkownik
Posty: 315
Rejestracja: 27 cze 2007, 6:34
Lokalizacja: Limanowa
Kontakt:

Post autor: grysek67 » 06 mar 2008, 19:01

Dzieki!!! wszystko dziala i jest ok :wink: ... dla was to moze banalne pytania ale ja jestem poczatkujacy w AVR... do tej pory to tylko w 8051 a tam nie trzeba konfigurowac pinow itd.
I nasuwa mi sie pytanie czy jakbym podpial LCD to tez musze kofigurowac piny bo tez nie bedzie dzialal??

[ Dodano: 2008-03-06, 19:03 ]
Pozdro dla Ddevil i ZbeeGin

Awatar użytkownika
kris74
Użytkownik
Posty: 270
Rejestracja: 16 sie 2006, 17:36
Lokalizacja: Gorzów Wielkopolski

Post autor: kris74 » 06 mar 2008, 19:26

W przypadku LCD są dwie drogi. Pierwsza to podpinasz wyświetlacz tak jak w kompilarze jest napisane. A drugi sam konfigurujesz.

ZbeeGin

Post autor: ZbeeGin » 06 mar 2008, 19:27

grysek67 pisze:I nasuwa mi sie pytanie czy jakbym podpial LCD to tez musze kofigurowac piny bo tez nie bedzie dzialal??
Instrukcja CONFIG LCD lub samo użycie gdziekolwiek w programie poleceń związanych z alfanymerycznym wyświetlaczem LCD powoduje, że ustawienia kierunków działania portów związanych z LCD są wykonywane w tzw. prologu programu (To takie coś co nie widać, a znacznie opóźnia start symulacji :) w tych programach.)

Generalna zasada pisania programów w BASCOM: Wszystko co się da konfigurujemy nie z panelu ukrytego pod poleceniem menu Compiler -> Options, tylko za pomocą CONFIG oraz dyrektyw kompilatora robimy to na początku programu. Dlaczego?
1. Wszystko widać w programie jak na dłoni.
2. Program jest przenośny sam w sobie i udostępnienie pliku BAS załatwia wszystko.

ODPOWIEDZ