Oleks vaja C-koodist HEX fail kompileerida aga endal puuduvad vähimadki kogemused. Olen jännanud juba pea 2 nädalat aga ikka on mingisugused errorid ja warningud. Minu mõistus on otsas! Asi ise paikneb siin: http://www.myplace.nu/avr/thermo/index.htm. Äkki aitaks keegi nõuga või teeks mingi pisitasu eest selle õnnetu HEX-i valmis?
Teade
Collapse
Foorumi reeglid.
Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less
Paluks abi AVR C koodiga
Collapse
X
-
Vs: Paluks abi AVR C koodiga
need C failid on kuidagi imelikud. see vend on lambist defineerinud asmi käske ja muud p**ka (cbi ja sbi). ja librarid on kõik valedes kohtades. osad librarid on valed (progmem.h on juba ammu pgmspace.h). mina neid asmi käske korda ei saanud seega ei saa sind aidata (ei oska C'sse sisse kirjutada asmi käske veel). kui leiad käsu, kuidas seda GCC's teha, anna teada ja ma kütan sulle hex faili.
ise kasutan libc'd ja AVRstudio4'ja GCC pluginaga. võibolla Win AVR kütaks ära, pole proovinud. proovi. kõik on tasuta. (nendest progredest)
Comment
-
Vs: Paluks abi AVR C koodiga
Esmalt postitatud bloody-orc pooltneed C failid on kuidagi imelikud. see vend on lambist defineerinud asmi käske ja muud p**ka (cbi ja sbi). ja librarid on kõik valedes kohtades. osad librarid on valed (progmem.h on juba ammu pgmspace.h).
Mul õnnestus avr-gcc 3.4.5 -ga kogu asi kompileerida küll, muutmist tahtis muidugi palju. Ei julge küll garanteerida, et asi toimib, aga kui oma e-maili annad, siis saad proovida.
Comment
-
Vs: Paluks abi AVR C koodiga
Suhteliselt lihtsa vaevaga sain asjad kompileerima... aga muidugi kuna ma ei testinud midagi, siis võib seal buugisid sees olla veel mitu.
Muudatusi:
1) mingid ürgvanad include headerid... Tuli uuendada.
2) mingid huvitavad sbi, cbi funktsioonid, mida ei paista kuskil olevat. Kirjutasin kerge vaevaga paar define't juurde ja asi korras.
Kood:#define sbi(a,b) (a)|=(b) #define cbi(a,b) (a)&=~(b) #define outp(a,b) (b)=(a) #define inp(b) (b)
4) mingi huvitav registrinimede define'dega koonerdamine ja aritmeetika defineeritud registrite nimedele liitmise-lahutamisega... Uuemate avr-gcc'de registrinimede define'des on juba registri poole pöördumise funktsioon ümber ja seal enam pointeraritmeetikat teha ei saanud. Natuke puhastust, et see jama ära visata.
5) makefile kasutas mingit incluuditud kraami, mida polnud kaasa panna. paar rida uut makefile't oli kõige kiirem lahendus.
proovi omal vastutusel seda, binaari jätsin ka sisse:
Tulemuste eest muidugi ei vastuta.
Comment
-
Vs: Paluks abi AVR C koodiga
Unustasin enne lisada, et Make1 ja Make2 failideks on kasutatud kellegi Volker Oth'i kirjutatud faile ja need võib leida aadressilt http://home.arcor.de/0xdeadbeef/gcctest.zip, kaustast include.
Autorile olen ka kirjutanud. Tema vastas lihtsalt, et tal ei ole aega sellega tegeleda.
Minu meiliaadress: rolandr@hot.ee
Comment
-
Vs: Paluks abi AVR C koodiga
Probleem järgmine - oleks tarvis juhtida SIPO-na kasutatavat nihkeregistrit 74HC595, kuid ei oska täisarvu (int) vasakule nihutada ja seejärel vanimat bitti 1-ga võrrelda.
Tüüpiline konstruktsioon pordis F mingi kinda biti c seadmiseks on näit.
PORTF |=(1<<c). Uurisin google abil leitud inglisekeelset lehte, kuid pärast
c-korda vasakule nihutamist muutus asi arusaamatuks. Ehk keegi viitsib lahti seletada.viimati muutis kasutaja 6p45s; 25 m 2007, 00:22.Hoiatus - muudan oma postituse sisu kuni 30 minuti vältel pärast postitamist.
Comment
-
Vs: Paluks abi AVR C koodiga
Tänud näidete eest!
Siiski on vaja lahendada see võtmeküsimus - kuidas nihutada registrisse saadetavat muutujat vasakule, kui muutuja dta= 10000000=0x80 või siis
dta-d paremale. Näidetes sai dta oma uue väärtuse kas analoog-digitaal-muundamise osas või mujal programmis.Hoiatus - muudan oma postituse sisu kuni 30 minuti vältel pärast postitamist.
Comment
-
Vs: Paluks abi AVR C koodiga
Juba sain aru.
Tarvis on seada registri sisend DATA= 1, kui registrisse saadetava kahendarvu vanim bitt on 1 ja DATA=0, kui vanim bitt on 0.
Tegevuse üldisem eesmärk on valgusdioodindikaatoriga kiirendusmõõtja
,,tõstmine" pic16f690-st ATmega128-projekti koosseisu, kuid ajapuudusel
pole registrite lülitusest eemaldamine soovitav.
Näidetes teeb for(x=128; x>0; x/2) seda, mida tarvis.
Lihtsalt ei osanud pic-i assembleri RRF käsuga seostada.Hoiatus - muudan oma postituse sisu kuni 30 minuti vältel pärast postitamist.
Comment
-
Re: Vs: Paluks abi AVR C koodiga
Kui vähegi progremist oskad, siis soovitan kogu see 595 interfeiss SPI külge ümber tõsta. töötab väga edukalt ja kiiremini (Segab vähem teiste asjade tööd). see library, mis ennist andsin oli see, mida enne kasutasin. nüüd olen SPI peal (Hardware SPI. samad pinid, mis ISP progremisel).
Ah ja seda ka, kui aru ei saanud juhuslikult, et see ...c.txt tuleb ümber nimetada .c'ks ja ...h siis vastavalt .h'ks. siis saan need tegelased includida ja otse kasutada. Kirjutatud AVR GCC's.
Comment
Comment