ATtiny2313 - pierwszy raz

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!
matheos
-
Posty: 5
Rejestracja: 14 lut 2007, 14:07

ATtiny2313 - pierwszy raz

Post autor: matheos » 14 lut 2007, 14:13

Witam !!
Po raz pierwszy zabieram się za programowanie mikrokontrolerów. Posiadam programator STK200/300 oraz program BASCOM AVR Demo.
Czy mógłby być ktoś łaskawy i wprowadzić mnie w ten temat ?
Na początek jak co poustawiać. Grzebałem troszkę w opcjach lecz nie wiem czy wszystko dobrze ustawiłem. Chcę programować na ATtiny 2313.
Na początek chcę zrobić program, który zapala diodę.
Za wszystko bardzo dziękuję.
Pozdrawiam

Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

Post autor: Michał17 » 14 lut 2007, 14:18

jeśli masz na myśli porgram to polecam ci mikroprocesorową oślą łączkę w postaci książki "mikrokontlery dla początkujących" pana Piotra Góreckiego
Kupisz ją np. w BTC

[ Dodano: 2007-02-14, 14:19 ]
https://elportal.pl/ea/prog001.html

matheos
-
Posty: 5
Rejestracja: 14 lut 2007, 14:07

Post autor: matheos » 14 lut 2007, 14:21

Tak... już to wszystko przeczytałem ;) (link) Biorę się za to od dwóch lat. Szukam jakiegoś prostego programu, żeby mi ktoś wyjaśnił jaki parametr za co odpowiada.
Pozdrawiam

Awatar użytkownika
marcing
Użytkownik
Posty: 868
Rejestracja: 14 lut 2006, 14:13
Lokalizacja: z pociągu...
Kontakt:

Post autor: marcing » 14 lut 2007, 14:25

Ale tam właśnie wszystko jest opisane, krok po kroku... z wyjaśnieniami co i za co odpowiada.

matheos
-
Posty: 5
Rejestracja: 14 lut 2007, 14:07

Post autor: matheos » 14 lut 2007, 14:27

Tak, lecz tam jest to wszystko oparte na AT90S2313. Wiem że niewiele się on różni od ATtiny2313. Jak zmienić listing tego programu ?

Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

Post autor: Michał17 » 14 lut 2007, 14:28

raczej nicnie zmieniaj

matheos
-
Posty: 5
Rejestracja: 14 lut 2007, 14:07

Post autor: matheos » 14 lut 2007, 14:30

Aha....
Wiem że program powinien się rozpoczynać od:

Kod: Zaznacz cały

$regfile = "attiny2313.dat"
$crystal = 1000000

Config Portd = Output
Config Portb = Input
Co dalej ??
Trzeba cos zmieniac w wewnetrznych ustawieniach programu ?

Awatar użytkownika
marcing
Użytkownik
Posty: 868
Rejestracja: 14 lut 2006, 14:13
Lokalizacja: z pociągu...
Kontakt:

Post autor: marcing » 14 lut 2007, 14:36

Rożnice pewne są, czasami dość denerwujące przy przenoszeniu programów...

Po pierwsze - domyślnie tiny2313 działa z wewnętrznym generatorem 1MHz, i należy zmienić to ustawienie by móc wykorzystać zewnętrzny kwarc. Ew. w programie w dyrektywie $crystal podać wartość 1000000
Po drugie (związane z pierwszym) - po wpisaniu program - bez zmian w ustawieniach procesora - będzie wykonywał się wolniej... o ile oczywiście częstotliwość zegara dla której był pisany jest wyższa niż 1MHz...

Reszta w zasadzie jest taka sama, no ale należy pamiętać by w kompilatorze ustawić odpowiedni typ uP...
ATtiny2313 ma "trochę" większe możliwości niż jego starszy brat - wszystko w odpowiednich notach Atmel'a (szczególnie dotyczących migracji).

matheos
-
Posty: 5
Rejestracja: 14 lut 2007, 14:07

Post autor: matheos » 14 lut 2007, 14:39

Rozumiem. Przeczytalem wszysko jak nalezy jeszcze raz.
Zaraz sie biore do roboty ;)
Dziękuję za odpowiedzi

[ Dodano: 2007-02-14, 14:54 ]
Wsystko napisalem i tak:

Wyswietlaja sie bledy jak chce zaprogramować :

Kod: Zaznacz cały

Could not identify chip with ID:FFFFFF
po chwili pokazuje się następny komunikat

Kod: Zaznacz cały

Selected chip and target chip do not match AT90S2313 <> ATtiny2313
Natomiast gdy dodalem na gorze linijki :

Kod: Zaznacz cały

$regfile = "attiny2313.dat"
$crystal = 1000000
Pojawił się błąd

Kod: Zaznacz cały

Could not identify chip with ID:FFFF80
Co to znaczy ?

Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

Post autor: Michał17 » 14 lut 2007, 17:07

albo masz starszą wersję bascoma albo jakieś problemy z programatorem

mathieiov
Moderator
Posty: 829
Rejestracja: 31 lip 2005, 9:04
Lokalizacja: --

Post autor: mathieiov » 14 lut 2007, 18:29

Sprawdź programator i kable. W odpowiednim oknie konfiguracji Bascoma musisz wybrać typ programatora oraz adres portu LPT.

zajcew
-
Posty: 12
Rejestracja: 15 lut 2007, 14:42
Lokalizacja: Szczecin

Post autor: zajcew » 15 lut 2007, 14:49

daj se spokój z bascomem jak chcesz pisać w przyszłości jakieś poważniejsze programy.
kod generowany przez bascoma jest średnio 20-30% większy od kodu z C/C++.
Polecam na początek AtmanAVR ma świetnego wizarda i debugera.
a do programowania ściągnij sobie PonyProg200 ze stronki
Pony prog

ZbeeGin

Post autor: ZbeeGin » 15 lut 2007, 17:52

zajcew pisze:a do programowania ściągnij sobie PonyProg200 ze stronki
Pony prog
I tutaj lepszym rozwiązaniem jest używanie programatora z BASCOM-a. Ma o wiele, wiele lepiej rozwiązaną sprawę Fuse-bits. A jest to dla początkujących czarna magia i sporo osób zablokowało sobie programowanie ISP bądź procesor wogóle przez nieumiejętne operowanie opcjami wyboru w PonyProg-u.

:idea: Trzebaby stworzyć grupę nacisku by MCS Electronics wypuściło moduł programatora także jako osobną aplikację!!!

mathieiov
Moderator
Posty: 829
Rejestracja: 31 lip 2005, 9:04
Lokalizacja: --

Post autor: mathieiov » 15 lut 2007, 19:10

ZbeeGin pisze::idea: Trzebaby stworzyć grupę nacisku by MCS Electronics wypuściło moduł programatora także jako osobną aplikację!!!
Popieram ten pomysł: często potrzeba aplikacji łatwej w obsłudze a zarazem umożliwiającej coś więcej niż tylko wysłanie programu do procesora.

Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

Post autor: Michał17 » 15 lut 2007, 20:26

Także jestem za, taka aplikacja przydała by się wielu, i żeby obsługiwała wiele programatorów

ODPOWIEDZ