|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
program_er Član
Pridružen-a: Sob 08 Mar 2008 13:47 Prispevkov: 2173 Aktiv.: 11.12 Kraj: Maribor (Pohorje)
|
Objavljeno: Sre Apr 28, 2010 11:34 pm Naslov sporočila: |
|
|
Bascom-AVR simulatorja za simuliranje LEDic ne uporabljam. No, dejansko, simulatorja sploh ne uporabljam. Razen ko je treba pogledati, koliko ciklov (ali uS) traja nek ukaz ali rutina. Nekako mi ga nikoli ne uspe pripraviti do tega, da bi sploh kaj pokazal v tistem LCD/LED/ADC okencu.
Treba bo kupiti en breadboard in čipek ter preiskušati. Teoretično bi tvoj program moral delovati. |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Čet Apr 29, 2010 3:49 am Naslov sporočila: |
|
|
Bascom simulator slabo dela, čim imaš kakršnekoli wait-e, bascom jih sicer simulira, a ne s frekvenco 4M, kot je v kristalu.
Oglej si v helpu, kaj naredi $sim.
Pozdrav
vs |
|
Nazaj na vrh |
|
|
program_er Član
Pridružen-a: Sob 08 Mar 2008 13:47 Prispevkov: 2173 Aktiv.: 11.12 Kraj: Maribor (Pohorje)
|
Objavljeno: Čet Apr 29, 2010 8:44 am Naslov sporočila: |
|
|
vilko je napisal/a: |
Bascom simulator slabo dela, čim imaš kakršnekoli wait-e, bascom jih sicer simulira, a ne s frekvenco 4M, kot je v kristalu.
Oglej si v helpu, kaj naredi $sim.
Pozdrav
vs |
To je sicer res, ampak ko se ustavi na Wait stavku lahko stisneš "Jump to next line" in gre naprej. Lahko pa simuliraš program tudi brez $sim stavka in je (teoretično) real time.
Glede Knight Riderja:
Zadnjič je nekdo nekje prilepil link do Binary Angle Control (ali Binary Angle Modulation), ki naj bi delovalo podobno kot PWM a na neomejenem število pinov, kar bi bilo dobro za Knight Riderja. |
|
Nazaj na vrh |
|
|
Alex17 Član
Pridružen-a: Ned 28 Feb 2010 21:46 Prispevkov: 476 Aktiv.: 2.78 Kraj: Ljutomer
|
Objavljeno: Čet Apr 29, 2010 11:09 am Naslov sporočila: |
|
|
Mogoče bi moral dodati še $sim na začetku, da simulator preskoči ukaze za čakanje, ki se drugače izvajajo zeloo dolgo.
Edit: spregledal drugo stran |
|
Nazaj na vrh |
|
|
kotnikd3 Neznanec
Pridružen-a: Sre 28 Apr 2010 16:42 Prispevkov: 5 Aktiv.: 0.03
|
Objavljeno: Čet Apr 29, 2010 3:50 pm Naslov sporočila: |
|
|
tudi s $sim sem sprobal. čemu potem sploh služi tist lcd/simulator v bascomu, če pa ne moreš preveriti kaj si sprogramiral? |
|
Nazaj na vrh |
|
|
klemen88 Član
Pridružen-a: Tor 01 Jan 2008 17:37 Prispevkov: 747 Aktiv.: 3.78 Kraj: Slovenj Gradec
|
Objavljeno: Čet Apr 29, 2010 4:08 pm Naslov sporočila: |
|
|
Zato je pa najbolje, da si narediš eno preprosto plato na kateri boš imel par tipk, LED-ic, LCD, ... in boš lahko testiral razne programe. Za začetek čisto dovolj.
Ko boš pa osvojil osnovno znanje pa si narediš drugo ploščico na katero dodaš UART, SPI, I2C, GLCD, Matrična tipkovnica, itd. |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.83 Kraj: Mengeš
|
Objavljeno: Čet Apr 29, 2010 5:33 pm Naslov sporočila: |
|
|
Včasih pomaga če vrednost kristala definiraš veliko manjše, kot boš potem uporabil. Jaz sem recimo v nekem programu, ko je bil kristal drugače 12M nastavil na 180000 (čim manj, dokler ne začne težiti zaradi baud-rate) in je simulacija delovala čisto dobro, ukazi WAIT pa so bili cca realno taki,kot definirani. Samo pred programiranjem čipa ne pozabit popravit kristal, drugače zadeva ne deluje - preverjeno... |
|
Nazaj na vrh |
|
|
kotnikd3 Neznanec
Pridružen-a: Sre 28 Apr 2010 16:42 Prispevkov: 5 Aktiv.: 0.03
|
Objavljeno: Čet Apr 29, 2010 7:11 pm Naslov sporočila: |
|
|
evo fantje sem pogruntal. v Bascomu sem naredil program, v programu Proteus pa vezje. program iz Bascoma sem importal v čip attiny26 v programu Proteus, tako da imam delujočo simulacijo v programu Proteus (Isis).
zagotovo vas bom še kaj vprašal, vsaj glede programske kode. hvala za pomoč ter nadaljno pomoč! |
|
Nazaj na vrh |
|
|
kotnikd3 Neznanec
Pridružen-a: Sre 28 Apr 2010 16:42 Prispevkov: 5 Aktiv.: 0.03
|
Objavljeno: Čet Apr 29, 2010 9:05 pm Naslov sporočila: |
|
|
evo...tole me zanima, če mi lahko pomagate. Attiny26 oz. Attiny261 ima na portu PB7 reset funkcijo, tako da mi v simulatorju Proteus ledica na tem portu ne zasveti. Kaj moram narediti, da mi bo port PB7 zaznal kot izhod, ne pa kot reset?
Hvala
http://wiki.noone.at/_media/hardware:attiny26.png?w=&h=&cache=cache |
|
Nazaj na vrh |
|
|
program_er Član
Pridružen-a: Sob 08 Mar 2008 13:47 Prispevkov: 2173 Aktiv.: 11.12 Kraj: Maribor (Pohorje)
|
Objavljeno: Čet Apr 29, 2010 9:10 pm Naslov sporočila: |
|
|
Lahko ga definiraš kot Output in poiskusiš, če bo delalo. Ker najbrž ne bo, moraš še v Fuse bitih izklopiti External Reset (daš na OFF). Vendar pazi, če boš prepogramiral RESET pin oz ga boš uporabil kot izhod, programiranje ne bo več mogoče (razen z paralelnim programatorjem, ampak nisem siguren, če ima tiny26 potrebne pine). |
|
Nazaj na vrh |
|
|
kotnikd3 Neznanec
Pridružen-a: Sre 28 Apr 2010 16:42 Prispevkov: 5 Aktiv.: 0.03
|
Objavljeno: Čet Apr 29, 2010 9:20 pm Naslov sporočila: |
|
|
Kje pa ga to definiram? V kodi oz. v Bascomu?
Config Portb.7 = Output imam že. Mogoče je fora v tem, da v Bascomu uporabljam Attiny26, v simulatorju Proteus pa Attiny261, ker v26 ni. Vendar ne verjamem, saj sta si čipa po portih podobna. |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.83 Kraj: Mengeš
|
Objavljeno: Čet Apr 29, 2010 9:43 pm Naslov sporočila: |
|
|
ČE v fuse bitih ne boš izklopil reseta ti pb7 definitivno ne bo delal. Ampak, kot rečeno, potem ne boš mogel več programirati z ISP programatorjem. Če imaš možnost, raje uporabi drug portbit, druge rešitve ni...
Drugače fuse nastavljaš lahko v bascomu, tam kjer programiraš... |
|
Nazaj na vrh |
|
|
jurem Član
Pridružen-a: Tor 02 Dec 2003 15:53 Prispevkov: 408 Aktiv.: 1.84 Kraj: Ljubljana
|
Objavljeno: Čet Apr 29, 2010 11:22 pm Naslov sporočila: |
|
|
kotnikd3 je napisal/a: |
tudi s $sim sem sprobal. čemu potem sploh služi tist lcd/simulator v bascomu, če pa ne moreš preveriti kaj si sprogramiral? |
Služi temu, da vidiš, ali LEDica utripa ali ne, vidiš tudi izpis na LCD-ju (če s programom pišeš na LCD)... skratka zadeva je uporabna do določene mere. Za zahtevnejše programe je prav gotovo potrebno uporabiti JTAG ICE razhroščevalnik, ki je serijsko vgrajen v MegaPin razvojno ploščo.
PortB.7 pa rajši pusti pri miru, razen če imaš paralelni programator, s katerim boš preprogramiral mikrokontroler.
Lp
Jure |
|
Nazaj na vrh |
|
|
TECHNIC Član
Pridružen-a: Tor 31 Okt 2006 11:18 Prispevkov: 582 Aktiv.: 2.75 Kraj: Senovo
|
Objavljeno: Ned Jan 02, 2011 10:50 pm Naslov sporočila: |
|
|
Skušam naredit soft-start elektromotorja brez uporabe pwm-ja in prekinitev (prekomplicirano zame). Ne rabi biti nič eksotično, samo kakšnih 10 ms spreminjanja širine pulza od nekje 20 do 100%.
Takšna koda bi po pričakovanju morala delovati, vendar je rezultat prav obraten:
Koda: |
Reset Startmotor
I = 255
J = 0
K = 255
While I > 1
Pulseout Portb , 1 , J
Toggle Startmotor
Pulseout Portb , 1 , K
Toggle Startmotor
I = I - 1
J = J + 1
K = K - 1
Wend |
|
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Pon Jan 03, 2011 11:34 am Naslov sporočila: |
|
|
kotnikd3 je napisal/a: |
tudi s $sim sem sprobal. čemu potem sploh služi tist lcd/simulator v bascomu, če pa ne moreš preveriti kaj si sprogramiral? |
Z simulatorjem ne moreš preverjati vsega. Je pa simulator odličen za preverjanje zapletenih računskih operacij.
Kadarkoli programiram kake bolj zapletene izračune, jih programiram kot podprogram, ki ga v programu kličem z Gosub, sam podprogram pa testiram posebej v drugem programu, ki je samo za to narejen, da z znanimi vhodnimi podatki kliče omenjeni podprogram, in potem opazujem na simulatorju korak po korak, ali se izračun odvija tako, kot sem si predstavljal, ko sem programiral.
Za testiranje delovanja programa na mikrokrmilniku, pa si pomagam tako, da v program vključim Print ukaze, ki na kritičnih mestih napišejo vsebine kritičnih spremenljivk in povejo, kje v programu se nahajajo. Kaj napišejo Print ukazi pa gledam na terminal-emulatorji na PC-u. Ko sem z delovanjem zadovoljen, pred Print dam apostrofe, in s tem jih predelam v komentarje, ki na program ne vplivajo, še enkrat prevedem in to je to.
Pa veselo na delo! |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 48 dni
Powered by phpBB © 2001, 2005 phpBB Group
|