Bascom ATtiny13V problem z zaprogramowaniem

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!
ODPOWIEDZ
Awatar użytkownika
XAX
-
Posty: 7
Rejestracja: 22 cze 2010, 21:42
Lokalizacja: Kraków

Bascom ATtiny13V problem z zaprogramowaniem

Post autor: XAX » 01 sty 2014, 22:57

Witam

Mam następujący problem z zaprogramowaniem i działaniem programu na ATtiny13V.
Procek ma pracować na wewnętrznym oscylatorze 4,8MHz i ma odpowiednio sterować LEDami (program to tylko wersja testowa czy układ działa).

Kod: Zaznacz cały

$regfile = "attiny13.dat"
$crystal = 4800000
$hwstack = 32
$swstack = 18
$framesize = 8

Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output

Config Pinb.4 = Input

Set Portb.0
Set Portb.1
Set Portb.2
Set Portb.3

Dim X As Byte

Do

   Reset Portb.0
   Reset Portb.1
   Reset Portb.2
   Reset Portb.3

   Waitms 250
   Waitms 250

   Set Portb.0
   Set Portb.1
   Set Portb.2
   Set Portb.3

   Waitms 250
   Waitms 250

Loop
End
Programator USBasp i wygląda że działa poprawnie bo się komunikuje z procesorem.
Przy programowaniu inicjuje wszystko po wykonaniu „Buffer read” wyrzuca mi błąd:
Chip differs at byte address :0000


Wydaje mi się że fuse bit są dobrze ustawione ale zawsze mogę się mylić:

Chip
Name – TINY13
Calibration 0 – 68
Lockbits – FF
Lockbit 21 – 11:No memory lock features enadled
Fusebits – 39
Fusebit H – 0:Enabel serial programing
Fusebit G – 0:Preserve EEPROM memory when chip is erased
Fusebit F – 1:Watchdog timer always off
Fusebit E – 1:Divide clock by 8, OFF
Fusebit DCBA – 1001:Int. RC Osc. 4.8 MHz
Fusebits High – FF
Fusebits High 7 – 1:Selfprog disabled
Fusebits High 6 – 1:DEBUG WIRE disabled
Fusebits High 54 – 11:BOD disabled
Fusebits High 3 – 1:External reset enable

Może ktoś z bardziej doświadczonych kolegów mi powie co jest nie tak?

Awatar użytkownika
Ertew
Użytkownik
Posty: 1414
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

Post autor: Ertew » 04 sty 2014, 20:01

Nie wiem czy te 4Mhz to nie za mało do programowania uC.
Ja bym spróbował przestawić uC na wyższe taktowanie albo założył w UsbASP zworkę która obniży prędkość programowania.

Kolejne problemy z programowaniem na jakie się natknąłem to fakt że nie wyczyściłeś pamięci przed jej zaprogramowaniem (chip erase),
zbyt słabe filtrowanie napięcia zasilającego (brak kondensatora ceramicznego),
zbyt niskie zasilanie (uC odpowiada na komendy ale nie daje rady się przeprogramować).

Awatar użytkownika
XAX
-
Posty: 7
Rejestracja: 22 cze 2010, 21:42
Lokalizacja: Kraków

Post autor: XAX » 04 sty 2014, 23:23

Witam

Wszystko już działa i się programuje :)
Problem leżał w konstrukcji układu i był spowodowany zbyt dużą pojemnością kondensatora podłączonego miedzy wyprowadzenie RESET a masę układu.

Temat do zamknięcia :)

ODPOWIEDZ