IPB

Vítejte, hoste ( Přihlásit se | Registrace )

 
Reply to this topicStart new topic
> Programování ATtiny13a
Trombley
příspěvek 1.4.2016 10:53
Příspěvek #1


Osvícený
**

Skupina: Člen
Příspěvků: 96
Registrován: 21.4.2011
Člen číslo: 2 845



Ahoj. Chci si udělat blikačku s dvěma LED s upraveným driverem Nanjg AK-47A (čip attiny13A). PCB jsem upravil tak, aby každá LED měla jeden AMC7135, a druhá LED byla ovládaná pinem 5 (PB0). Podle proměření je to zapojeno správně.
Přiložený obrázek


Nějak ale nemůžu přimět tu druhou LED k fungování. První na PB1 funguje správně. Přičítám to špatnému programu, jsem v tom začátečník (i když s jednou LED už jsem si hezký program do svítilny udělal smile.gif). Zkoušel jsem kde co, ale prostě to nejde.
Pochopil jsem, že je potřeba nastavit výstupy DDRB = 0b00000011 (zkoušel jsem i samotný 0b00000001) a místo OCR0B používat OCR0A. Teď se to pro jednoduhost snažím přepsat z MiniDrv od DrJones.
Přpsal jsem DDRB na 1 (měla by fungovat jen PB0) a OCR0B přepsal na OCR0A. TCCR0A/B jsem nechal jak jsou. Nefunguje. Neví nekdo prosím co dělám špatně?

EDIT: už se mi to podařilo, bylo třeba jen jít více do hloubky, pročíst datasheet a pochopit význam bitů TCCR0A. Takže to v něm chtělo jen povolit výstup OCR0A (TCCR0A=0b10100001)

Tento příspěvek byl editován Trombley: 1.4.2016 14:20


--------------------
UltraFire noname (EDC)- Nichia 219B @1.4A; UltraFire WF-502B- XP-G2 dedomed @1.4A; Convoy M1- XM-L T6-3C @2.8A; Surefire M951 (oldgen)- XP-E2 WW @1.2A
Go to the top of the page
 
+Quote Post
Trombley
příspěvek 11.7.2016 18:04
Příspěvek #2


Osvícený
**

Skupina: Člen
Příspěvků: 96
Registrován: 21.4.2011
Člen číslo: 2 845



Řeším opět menší problém- po nějaké době mi přestal fungovat můj kód na Nanjg driveru. Nahrání kódu funguje bez upozornění na jakoukoliv chybu, ale svítilna se chová jinak, než by měla. Používám vícenásobný klik s hlídáním doby vypnutí "noinit") a skupiny režimů a nějak mi to zlobí.
Mám podezření na chybu samotného USBasp, protože nahrávám stále na stejný typ driveru Nanjg 101-AK-A1 a dříve vše fungovalo naprosto bez problému. Před vyskytnutím chyby jsem nahrával na jiný, vlastní obvod a občas jsem zapomněl po nahrání odpojit kleště.

Teď otázka- přečetl jsem flash paměť z čipu a porovnal ji s .hex které nahrávám- nejsou stejné. Je to normální stav?

EDIT: Už dříve se mi podařilo nahrát jeden Nanjg 105D, ale 101-AK-A1 jsem zkoušel tři, přičemž u jedné jsem odpájel všechny součástky, zkontroloval DPS, vyměnil attiny za úplně nový a pokaždé to bylo bez úspěchu. Teď jsem opět zkusil 105D a opět úspěch, tak jsem obětoval další 101 a... tahle funguje. Ty "nefunkční" se mi stále nedaří zprovoznit. Takže jsem z toho jelen a vůbec netuším, v čem byl problém. No budu si hrát, třeba rozeběhnu i ty kryply. Nebo narazím na další nefunkční biggrin.gif

Tento příspěvek byl editován Trombley: 11.7.2016 19:57


--------------------
UltraFire noname (EDC)- Nichia 219B @1.4A; UltraFire WF-502B- XP-G2 dedomed @1.4A; Convoy M1- XM-L T6-3C @2.8A; Surefire M951 (oldgen)- XP-E2 WW @1.2A
Go to the top of the page
 
+Quote Post
sirpetr
příspěvek 11.7.2016 18:55
Příspěvek #3


Flashaholic
***

Skupina: Člen
Příspěvků: 418
Registrován: 12.11.2009
Člen číslo: 453



USBasp nepoužívám, já mám AVR Dragon, ale předpokládám, že by programovaná a přečtená paměť měla být stejná. Doporučuju snížit rychlost při programování, je možné že čip nestíhá správně program přijmout. Zároveň bych i zkontroloval fuses, jestli tam třeba není DIV8 (osminásobné zpomalení kmitočtu).


--------------------
Lucifer čelovky | výkonné čelovky vyráběně kompletně v Čechách

LUCIFER Z2Mini/Micro - 850lm, 1x CREE XP-L2, 18650 nebo 18500 baterie
LUCIFER S2RED - 800lm, 1x CREE XP-L2, 1x18650 protected baterie v tubě, váha 164gr.
LUCIFER S2X - 1200lm, 2x CREE XP-L2, 1x18650 protected baterie v tubě, váha 164gr.
LUCIFER M6 - 1700lm, 2x CREE XP-L2, 2x18650 zalepený batterypack, váha 226gr.
LUCIFER L - 3200lm, 4x CREE XP-L2, 4x18650 zalepený batterypack
LUCIFER X - 5000lm, 6x CREE XP-L2, 3x18650 nebo 6x18650 zalepený batterypack
LUCIFER ULTRA - 8000lm, 9x CREE XP-L2, 4x18650 nebo 8x18650 zalepený batterypack

Naše stránky : http://www.luciferlights.net
Naše video : http://vimeo.com/103687386
Stránky na FB : https://www.facebook.com/luciferlights
Go to the top of the page
 
+Quote Post
Benik3
příspěvek 11.7.2016 20:11
Příspěvek #4


Flashaholic
***

Skupina: Člen
Příspěvků: 5 553
Registrován: 5.2.2011
Bydliště: Plzeň
Člen číslo: 1 102



Zkontroluj fuses (pěkný kalkulátor zde, ale bacha na správné nastavení. Dá se v tom třeba vypnout programování přes sériové rozhraní SPI biggrin.gif)
Sniž rychlost programování jak zmínil Sirpetr a pokud máš možnost druhého programátoru (alespoň na zapůjčení) doporučuji aktualizovat firmware v tom USBasp (z nějakého důvodu číňani stále rádi používají zastaralou verzi, která si třeba neumí dohodnout rychlost programování s MCU).
http://www.fischl.de/usbasp/

P.S. programátor lze udělat i přímo z Arduina smile.gif http://shannonstrutz.com/uncategorized/upd...re-with-arduino
P.S.2: pěkná grafická nástavba nad avrdude je AVRDUDESS smile.gif

EDIT: Našel jsem dokonce pokračování orginálního firmwaru, kde jsou opraveny ještě malé chybky
https://github.com/bperrybap/usbasp/tree/1.06-alpha

Tento příspěvek byl editován Benik3: 11.7.2016 20:28
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 členů čte toto téma (1 hostů a 0 anonymních uživatelů.)
0 Členů:

 



RSS PDA verze Aktuální čas: 28.3.2024 - 13:20