www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Programiranje AVR mikrokrmilnikov s FastAVR-jem

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Zbirka projektov
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:10 pm    Naslov sporočila:  Programiranje AVR mikrokrmilnikov s FastAVR-jem Odgovori s citatom

Mogoče za začetek krajši opis (možnega - mojega) načina programiranja AVR mikrokrmilnikov. Opis sem napisal že pred tedni, ko sem poganjal korenine lastne spletne strani. Zato je vse le prekopirano. A vendarle.

V tekstu so seveda možne napake, tako da ne vzamite vsega za sveto. Drugače pa me popravite.

S katerim programskim jezikom bomo programirali mikrokrmilnike je odvisno od uporabljenga mikrokrmilnika, "višine" programskega jezika, že napisane kode, ... Skratka obstaja sto in en način kaj in s čem programirati. To začetnika verjetno moti, ker je možnosti kar preveč. Pravzaprav še vedno moti tudi mene (še vedno se imam za začetnika).

Najbolj osnovni programski jezik je assembler. V njemu imamo opravka z "najnižjimi" ukazi, ki jih uC pozna. Programiranje poteka relativno počasi, vendar imamo popolno kontrolo nad programom in uC-om. "Višji" programski jeziki, pa asseblerskim ukazom dodajo "višje" ukaze (že napisane skupke kode). Programiranje tu je hitrejše, vendar na račun nekoliko večje kode (kb). Osebno sem poizkusil oba načina in ne favoriziram nobenega. Trenutno uporabljam višje jezike. Pač stvar okusa. Je pa res, da ponavadi velikost pomnilnika (flasha) ni bila problem.

Predno vnesemo napisano programsko kodo v mikrokrmilnik, jo je potrebno prevesti v strojno kodo. Če programiramo v assmblerju, potrebujemo za to namenski program. Če pa programiramo v nekem višjem programskem jeziku, nam jo verjetno naredi program v katerem programiramo. Dobljeno strojno kodo naložimo v program za prenos strojne kode iz računalnika (preko programatorja) v mikrokrmilnik. Seveda obstaja veliko programov, ki dela isto stvar. Zato obstaja veliko načinov kako prenesemo napisan program v mikrokrmilnik. Morda se zdi ob poplavi programov, ki delajo vsak svojo nalogo programiranje uC-ov zahtevno opravilo, vendar, ko nam uspe sprogramirati prvega, se procedure hitro navadimo. Verjetno obstajajo programi, ki imajo veliko teh funkcij (če že ne vseh) združene (mogoče celo tisti, ki jih uporabljam sam) vendar se v podrobnosti nisem poglabljal.

Moj način programiranja :

Za učenje in preiskušanje je zelo primerna testna plošča (proto boart), ki jo dobite v trgovina za cca. 2 - 5 tisoč (odvisno od velikosti). Na spodnji sliki je moj prvi protoboard. AHH nostalgija. Trenutni je sestavljen iz treh manjših. Buhuaaa



testna_plosca.jpg
 Opis:
 Velikost datoteke:  105.78 KB
 Pogledana:  176 krat

testna_plosca.jpg




Nazadnje urejal/a CarpeDiem Pon Okt 17, 2005 5:22 pm; skupaj popravljeno 2 krat
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:11 pm    Naslov sporočila:   Odgovori s citatom

Programsko kodo za AVR uC-e trenutno pišem v programu FastAVR.


FastAVR.JPG
 Opis:
 Velikost datoteke:  77.93 KB
 Pogledana:  127 krat

FastAVR.JPG


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:12 pm    Naslov sporočila:   Odgovori s citatom

Podoben program s podobnim programskim jezikom je Bascom AVR.


BascomAVR.jpg
 Opis:
 Velikost datoteke:  84.97 KB
 Pogledana:  78 krat

BascomAVR.jpg


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:13 pm    Naslov sporočila:   Odgovori s citatom

Strojno kodo nato s programom PonyProg2000 preko programatorja prenesem v uC.


PonyProg.jpg
 Opis:
 Velikost datoteke:  137.03 KB
 Pogledana:  59 krat

PonyProg.jpg


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:14 pm    Naslov sporočila:   Odgovori s citatom

Za programiranje Atmelove 8 bitne AVR družine uporabljam sct200 programator. Kupil sem ga pri Rudiju ( http://www.avr.4mg.com ). Uporabljam pa izključno ISP - programiranje v vezju. Programator je na eni strani povezan na LPT port računalnika, na drugi strani pa na testno ploščo. Tak način programiranja je veliko hitrejši, ker uC ni potrebno vedno znova prestavljati.


sct200.jpg
 Opis:
 Velikost datoteke:  26.93 KB
 Pogledana:  41 krat

sct200.jpg




Nazadnje urejal/a CarpeDiem Pon Okt 17, 2005 5:19 pm; skupaj popravljeno 1 krat
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
CarpeDiem
Član
Član



Pridružen-a: Pon 16 Feb 2004 17:24
Prispevkov: 333
Aktiv.: 1.41
Kraj: Vrhnika

PrispevekObjavljeno: Pon Okt 17, 2005 5:14 pm    Naslov sporočila:   Odgovori s citatom

Za programiranje Atmelove 8051 družine pa uporabljam PG302 programator. Kupil sem ga v IC-ju. Lahko pa ga dobite tudi v spletni trgovini Sveta elektronike. Primer uporabljenih mikrokrmilnikov: 20 pinska AT89C2051 in AT89C4051 in pa 40 pinska AT89S51 in AT89S52 . Programiranje teh uC sem nekoliko opustil, ker ne poznajo ISP programiranja.


pg302.jpg
 Opis:
 Velikost datoteke:  78.48 KB
 Pogledana:  96 krat

pg302.jpg


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Zbirka projektov Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
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: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group