Biztosítékbitek átállítása

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Köszönöm, próbálnám, de a Compile gomb hirtelen nem működik. Nosza, van fenn régebbi
verzió. Az meg hibajelentő ablakkal elszáll már a FILE LOAD-kor. Tudtommal semmi frissítés nem
volt a gépen, szóval most akkor várat magára egy kicsit a feladat.
JAni
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

No, belebonyolódtam. (előtúrtam egy régebbi Bascom-AVR-t, ez az újabb nem szeret engem)
Bootloader (Mega329 van a programban, de gondolom jó) lefordít, ISP-vel bele. Beállít 2kword Boot méretet, bár hibával jön vissza (Fuse extended error) az SPI feltöltő, hogy nem tudja írni a FUSE biteket, de jónak látszik. Lock-bits-ről fogalmam sincs, mi lenne a jó...
Feltöltés után indul a bootloader, küldözget 0-kat, de gondolom, ez a ciklikus újraindulás (?). Programozó típus átállít external-ra, ott batch file hívja az exe-t.
Elindít, azonnal összejönnek, a program feltöltődik, fut. ISP-vel visszaolvasom a memóriát, 0x7800-tól kezdődik a bootloader, ott is van.
A programban van soros, belevéstem, hogy ha 123-at "{"-t kap, Goto &h3C00. Na, innentől kezdve soha többet nem jelentkezik be a bootloader,
de elmegy valahova, mert a soros rutin sem működik többet, de a főprogram meg fut, szóval mint ha reset lett volna.
Soros_in:
Besor = Inkey()
If Asc(besor) = 123 Then Goto &H3C00
............... Hát gondolom, ez jó. Szóval hogyan tudom meghívni ezt az átkot a soros programrészemből?
Ha a PC-n elindítom az exe-t, akkor reset után felveszi a kapcsolatot, tehát a bootloader nem sérült.
Ehhh, egy ilyen egyszerű dologgal ennyi időt elkapálni...
JAni
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Kód: Egész kijelölése

$regfile = "m328pdef.dat"

Ddrd = &B00000010
Ddrb = &B00100000
$baud = 38400

Do
   If Inkey() = 123 Then
      Print "boot"
      Goto &H3C00
   End If

Toggle Portb.5
Waitms 255
Loop

End
Ennek azért működni kellene, nem?
Ha elindítom a PC-n a letöltőt és utána nyomok RESET-et, akkor feltölti. Menet közben nem ugrik oda :(
JAni
Avatar
SirLeslie
Pákabűvész
Hozzászólások: 247
Csatlakozott: 2005. április 14. csütörtök, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: SirLeslie »

winnerbt írta: Ennek azért működni kellene, nem?
Ha elindítom a PC-n a letöltőt és utána nyomok RESET-et, akkor feltölti. Menet közben nem ugrik oda :(
JAni
Próbáld meg kivenni a print-et - lehet hogy nem esik jól neki a visszabeszélés... amúgy mennie kellene (én lcd-re iratom print helyett, hogy feltöltés következik, így simán megy nálam)

Laci
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Ne kérdezzetek semmit, a program elején engedélyezni kellett a megszakításokat.
(amit első lépésként a bootloader kitilt persze)
Azóta működik a röptében programletöltés.
Köszönöm az ötleteket, fel lesznek használva!!!
JAni
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Sziasztok!
Egy külföldi srác kér segítséget, de én sülthal vagyok az AVRDUDE-hoz. A fentebb említett fusecalc oldalon bepötyögtem:
Attiny85 uC, PLL-ről 16MHz-ről kellene mennie, tehát 8-as osztó ki, PLL választás be.
Nekem 0xC1 jött ki. Ha valaki ránézne, hogy az úgy jó-e, mert nem akarom elküldeni az erdőbe a srácot, főleg kizárni nem akarom a chip-ből.
"-U lfuse:w:0xc1:m " ír ki. (jelentsen ez bármit is)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: Robert »

A PLL clock esetén kéne tudni, hogy a bekapcsolási stabilizálódásra mennyi idő/órajelet kell hagyni. 4 féle is van :) 4 v. 64msec +1k v. 16 clock.

BOD level nálad disable, de a 1.8V-t bekapcsolnám....
Leghosszabb késleltetés+1.8V BOD:
AVRDUDE: -U lfuse:w:0x61:m -U hfuse:w:0xde:m -U efuse:w:0xff:m


Itt számoltam: http://www.engbedded.com/fusecalc/
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Köszönöm, elküldtem neki. A PLL beállás nem érdekes, mert a program induláskor állítja be a PLL engedélyezést és nemes egyszerűséggel vár 10msec-et, addigra majd felpörög, nem okozott gondot. Remélem meg tudja csinálni, nem igazán szakmabeli (küldtem volna Neki uC-t, de igen messze van és ismerve a posta sebességét...). Magát a hex filet be tudta égetni, csak összejön. Nagyon köszönöm a segítséged!!!
Avatar
winnerbt
Elektronbűvölő
Hozzászólások: 907
Csatlakozott: 2007. március 25. vasárnap, 6:00

Re: Biztosítékbitek átállítása

Hozzászólás Szerző: winnerbt »

Kicsit megakadtunk (az időeltolódás ugye):
avrdude -c usbtiny -p attiny85 -U flash:w:programfile.hex után csak beírja az általad javasolt "-U lfuse:w:0x61:m -U hfuse:w:0xde:m -U efuse:w:0xff:m" parancsokat vagy a program feltöltés után kell?
Ha a program már sikeresen feltöltődött, akkor hogy néz ki a parancssor a fuse-bitek állításához?
(bocs, de nem használom, a kapcsolókat sem ismerem)
Válasz küldése