Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Bascomin asennus ja asennus
- Vaihe 2: Katsotaanpa lähemmin sirua
- Vaihe 3: Ensimmäinen piiri
- Vaihe 4: Kirjoita ensimmäinen ohjelma
- Vaihe 5: Lisää painike tulojen käyttämiseksi
Video: Bascom AVR: n käytön aloittaminen: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Tämä on sarjan alku, joka opettaa sinulle AVR -mikrokontrollerin ohjelmoinnin Bascom AVR: n avulla.
Miksi teen tämän.
Useimmat tämän sarjan ohjelmamallit voidaan tehdä Arduinolla.
Jotkut helpompia ja toiset vaikeampia, mutta lopulta molemmat toimivat samalla ohjaimella.
Ohjelmointitapa on kuitenkin erilainen kaikissa kehitysympäristöissä. Arduino tarvitsee kirjaston kaikkeen paitsi perustoimintoihin. Bascom toimii myös kirjastojen kanssa, mutta minun on harvoin sisällytettävä se. Arduinolla kaikki laitteistokohtaiset asetukset tehdään kirjastojen kautta. sinulla on hyvin vähän vaikutusta mikrokontrollerin todelliseen tehoon. Aloita ohjaimen ajastimista. arduinon kanssa tarvitset kirjaston uudelleen. Jos sinulla on ajastin, kunnes se toimii, se voi olla toinen kirjasto, joka törmää asetuksiisi. Bascomilla on ilmainen pääsy täydelliseen laitteistoon, mukaan lukien arduinon käytössä oleva käynnistyssektori. esimerkiksi jotkut bascomin kirjastot kysyvät, mitä ajastinta haluat käyttää. toisaalta, koska arduinon avulla on erittäin helppoa luoda kirjasto itse, se tekee siitä luonnollisesti alustan, jossa uusilla laitteistoilla ja antureilla on yleensä kirjasto suoraan. mikä usein liittyy moniin tutkimuksiin bascomissa ja toiminnot, jotka kirjasto normaalisti ottaisi, on sitten sisällytettävä huolellisesti ohjelmakoodiin. mutta hyvä uutinen, bascom -yhteisö on myös erittäin suuri, joten jokaiselle idealle on ratkaisu.
Joten se riippuu osittain projektista, mitä käytetään kehitysympäristöön, ja osittain ohjelmointihenkilön osaamisesta.
mutta miksi teen tätä sarjaa. toisaalta se säästää paljon rahaa. Minun ei tarvitse ostaa arduino -korttia jokaiseen projektiin. Esimerkiksi: Noname Arduino uno maksaa noin 12 €, sen päällä oleva ohjain maksaa vain 2,5 € ja vakaan toiminnan edellyttämät vähimmäispiirit, se maksaa noin 4 €. toisaalta sinulla on täydellinen valikoima tuettuja avr -siruja. atmegas 8-256 ja attiny 8-2313 ja monet xmega -tyypit, joista minulla ei ole kokemusta. Jos haluat käyttää vain servoa ja ultraäänianturia, joka tunnistaa esimerkiksi käden, ja avaa sitten roskakorin kansi, voit käyttää pienintä mahdollista sirua. Joten on monia syitä oppia toinen kieli.
Aloitetaan siis
Tarvikkeet
Tämä on luettelo tarvittavista vähimmäisosista sirun vakaalle toiminnalle ja ohjelmoinnille.
Leipälevy testausta varten
Atmega 8-16PU (parempi ostaa 2 tai 3, jos tapat ne vahingossa)
7805 5V jännitesäädin
10Kohm vastus
100nF kalvokondensaattori
10µF elektrolyyttikondensaattori
100µF elektrolyyttikondensaattori
joitakin johtoja leipälevylle
Windows PC 7/8/8.1/10
Internet -palveluntarjoajan ohjelmoija (käytän täällä USBasp -laitetta, jonka voit ostaa Amazonilta pienellä rahalla)
Bascom AVR (voit ladata täältä demon. Kaikki toiminnot ovat lukitsemattomia, mutta voit kirjoittaa koodia vain 4Kb -kokoon asti, mikä riittää monelle koodille).
Valinnaiset osat:
LEDit vastuksilla
paina kytkimiä
projektikohtaiset osat
Vaihe 1: Bascomin asennus ja asennus
Lataa tiedosto ja asenna Bascom AVR. Asenna kaikki osat, mukaan lukien viimeinen valintaruutu asennuksen jälkeen.
Käynnistä sitten tietokone uudelleen, muuten bascom ei käynnisty.
Käynnistä bascom uudelleenkäynnistyksen jälkeen.
Valitse Asetukset -> Ohjelmoija ja valitse luettelosta USBasp, tallenna asetukset ja sulje Bascom.
Asenna usbasp tämän ohjelman avulla. Käynnistä sitten tietokone uudelleen. Liitä nyt USBasp tietokoneeseen ja käynnistä laitehallinta. USBasp pitäisi näkyä libusb -laitteissa.
Stat Bascom uudelleen ja luo uusi tiedosto. Tallenna se tietokoneellesi ja paina näppäimistön F7 -painiketta.
Kääntäjä käynnistää ja kääntää tyhjän ohjelman. Nyt voit testata ohjelmoijan toimivuutta.
Käynnistä ohjelmointi -ikkuna painamalla näppäimistön F4 -painiketta. Siirry nyt siruun -> tunnista aloittaaksesi vuorovaikutus. USBasp: n merkkivalojen pitäisi nyt vilkkua lyhyesti. Sinun pitäisi saada viesti, kuten sirun tunnus FFFFFF ei voinut lukea laitetta. Se on hyvä merkki, että ohjelmoija toimii, mutta se ei löytänyt sirua.
Nyt voimme aloittaa ensimmäisen piirin rakentamisen.
Vaihe 2: Katsotaanpa lähemmin sirua
Jos katsot sirun pinoutia, näyttää siltä, että sirulla ei ole mitään samankaltaisuutta arduino -kortin kanssa. Toki, käytämme Atmega8 ja Arduino uno on Atmega328. Mutta Pinout on lähes sama, mutta Arduino Uno -levyn sirulla on enemmän toimintoja. Tässä nastojen nimet. VCC ja GND ovat virtalähteen nastat.
AREF ja AVCC ovat vertailujännitteen ja virtalähteen nastoja analogisesta digitaalimuuntimeen.
PB 0-7 PC 0-6 PD 0-7 ovat yleiskäyttöisiä sisääntulonappeja, joissa on useita henkilöitä.
Reset pin on se mitä nimi sanoo. Sirun käynnistäminen uudelleen. Nollauksen nimen yläpuolella oleva rivi tarkoittaa kieltämistä. Tämä tarkoittaa, että palauttaaksesi sirun sinun on vedettävä se 0V: iin.
Seuraavien nastojen osalta erilliset ohjeet tulevat pian.
RXD TXD ovat UART -sarjaviestinnän laitteistotappeja.
INT0 INT1 ovat laitteiston keskeytys nastoja
XCK /T0 UART Kellolähde /ajastin /laskuri0 Kellolähde
XTAL /TOSC -nastat ovat ulkoiselle kristallille jopa 16 MHz (eri mallit jopa 20 MHz) /kristallinastat sisäiselle RTC: lle
T1 on samanlainen kuin T0
AIN -nastat ovat analogista vertailua varten
ICP1 on samanlainen kuin T0/T1
OC1A on laitteiston ulostulonappi pwm timer1 -kanavalle A
SS / OC2 -sirunvalintatappi SPI / kuten OC1B: lle, mutta kanava B
MOSI MISO SCK / OC2 ovat laitteiston SPI -nastat ja ohjelmointi- / PWM -lähtöajastimen nastat2
ADC0 - ADC5 ovat analogisia tuloja
SDA SCL ovat laitteiston I2C nastat
Normaali siru voi toimia 4, 5 V - 5, 5 V, Atmega 8L voi toimia paljon pienemmällä jännitteellä.
Näet, että jopa tämä siru voi tehdä enemmän kuin Arduino Uno ei näytä pystyvän. Mutta Arduino voi tehdä sen myös, sinun tarvitsee vain ohjelmoida se.
Vaihe 3: Ensimmäinen piiri
Nyt on aika rakentaa ensimmäinen piiri.
Mikä on yleensä ensimmäinen piiri? Oikein! Vilkataan LED.
LED on kytketty PB0: een. Sirun vieressä olevassa vastuksessa on 10 k ohmia.
LEDin vieressä olevassa vastuksessa on 470 ohmia.
Nyt voit liittää USBasp: n Atmega -laitteeseen kuvan osoittamalla tavalla.
Mutta ennen kuin kytket virran päälle, kirjoita ohjelma.
Vaihe 4: Kirjoita ensimmäinen ohjelma
Luo uusi tiedosto Bascomissa ja kirjoita seuraava teksti.
$ regfile "m8def.dat"
$ crystal = 1000000 config portb.0.0 = output do portb.0 = 1 odota 1 portti b.0 = 0 odota 1 silmukka
koota se sen jälkeen painamalla näppäimistön F7 -näppäintä.
Nyt voimme ohjelmoida sirun painamalla F4. Ohjelmointi -ikkuna tulee näkyviin. Nyt on aika kytkeä virta päälle leipälevyltä. Sinun pitäisi käyttää jotain 6 ja 12 voltin välillä.
Siirry nyt siruun -> autoprogram. Jos ohjelmoija -ikkuna sulkeutuu automaattisesti, ohjelmointi onnistui.
LEDin pitäisi vilkkua sekunnin taajuudella.
Katso nyt tarkemmin ohjelmaa, jotta voit ymmärtää syntaksin.
$ regfile "m8def.dat"
$ crystal = 1000000
$ regfile: llä kerromme kääntäjälle käytetyn sirun tyypin, Arduino -sirun nimi olisi "m328pdef.dat"
$ kristallilla kerromme hänelle suorittimen nopeuden noin 1 MHz.
config portb.0 = Lähtö
se tarkoittaa, että PB0: n pitäisi toimia ulostulona.
Muuten lyhenne PB0 tarkoittaa porttia B bitti 0. Siru on jaettu useisiin portteihin. Jokaiselle portille annetaan kirjain selkeää tunnistamista varten. ja jokainen portti hieman 0-7. Esimerkiksi voin kirjoittaa kokonaisen tavun portin lähtörekisteriin, joka tulostetaan yksittäisten porttien nastojen kautta.
tehdä
silmukka
Tätä Arduinossa tarkoittaa mitätön silmukka -lauseke. Kaikki näiden kahden käskyn välissä toistuvat ikuisesti. (joitakin poikkeuksia lukuun ottamatta, mutta siitä lisää myöhemmin)
Portb.0 = 1
odota 1 portti.0 = 0 odota 1
Täällä itämme ledin vilkkumisen.
Portb.0 = 1 käskee sirun vaihtamaan lähdön PB0 5V: ksi
odota 1 -komento antaa sirun odottaa yhden sekunnin. Jos haluat vaihtaa lediä nopeammin, sinun on korvattava odotuskomento odotuksilla nyt, voit syöttää jonkin aikaa nyt millisekunteina, esim. odottaa 500. (waitus tarkoittaa odottamista nanosekunneissa)
Portb.0 = 0 käskee sirun vaihtamaan lähdön PB0 0V: ksi.
Vaihe 5: Lisää painike tulojen käyttämiseksi
Nyt lisäämme painikkeen sytyttämään ledin, jos painiketta painetaan.
Aseta painike kuvan mukaisesti.
kirjoita nyt seuraava ohjelma.
$ regfile "m8def.dat"
$ crystal = 1000000 config portb.0.0 = output config portd.7 = input Portd.7 = 1 do if pind.7 = 0 then portb.0 = 1 else portb.0 = 0 loop
Jos lataat ohjelman sirulle, LED -valo syttyy vain, kun painiketta painetaan. Mutta miksi?
ohjelma käynnistyy samalla tavalla kuin edellinen asti
config portd.7 = tulo. Tämä tarkoittaa, että näppäimellä PD7 toiminut tulo toimii tulona.
Portd.7 = 1 ei vaihda tappia korkeaksi, mutta aktivoi Atmegan sisäisen vetovastus.
Jos statemend näyttää hieman oudolta, jos olet tottunut arduinoon.
Jos käytät if -lausetta, sinun on käytettävä "sitten" -lausetta. Tässä esimerkissä if -lausetta käytetään yksittäisiin komentoihin. Jos haluat käyttää enemmän komentoja, sinun on kirjoitettava se näin.
jos pind.7 = 0 sitten
portb.0 = 1 jokin koodi jokin koodi jokin koodi jokin muu portb.0 = 0 loppu jos
tätä if -lauseen käyttöä varten on käytettävä "end if" -lausetta lopussa.
mikä on vielä tärkeää. Ehkä olet jo nähnyt sen. Tuloja ei haeta portx.x: llä, vaan pinx.x: llä. Voit helposti muistaa sen. Lähdöissä on "o" (portti) sanassa ja tuloissa "i" (nasta).
Nyt on sinun vuorosi leikkiä hieman.
Seuraava ohjeeni tulee pian (vakiolausunnot, kuten while, select case, for ja muuttujat.)
Jos pidät ohjeistustani ja haluat lisää, kerro minulle kommenteissa.
Suositeltava:
STM32f767zi Cube IDE: n käytön aloittaminen ja mukautetun luonnoksen lataaminen: 3 vaihetta
Aloitusopas STM32f767zi Cube IDE: n kanssa ja Lataa sinulle mukautettu luonnos: OSTA (osta/käy verkkosivulla napsauttamalla testiä) STM32F767ZISUPPORTED OHJELMISTOT · STM32CUBE IDE · KEIL MDK ARM µVISION · EWARM IAR EMBEDDED WORKO käytetään STM -mikrokontrollerien ohjelmointiin
Raspberry Pi: n asentaminen ja käytön aloittaminen: 4 vaihetta
Raspberry Pi: n käyttöönotto ja käytön aloittaminen: Tulevaisuuden lukijoille olemme vuonna 2020. Vuosi, jolloin jos olet onnekas terveenä etkä ole saanut koronavirustartuntaa, sinä yhtäkkiä , sait paljon enemmän vapaa -aikaa kuin olit koskaan uskonut. Joten miten voin miehittää itseni ei liian typerällä tavalla? Kyllä
Flipboardin käytön aloittaminen: 9 vaihetta
Flipboardin käytön aloittaminen: Tämä lyhyt opetusohjelma on suunniteltu auttamaan sinua aloittamaan Flipboard -mobiilisovelluksen käytön. Tämä on vain johdanto, koska Flipboardissa on monia muokattavia ominaisuuksia. Kun olet suorittanut tämän opetusohjelman, sinulla on Flipboardin perustiedot
WeMos ESP8266: n käytön aloittaminen: 6 vaihetta
WeMos ESP8266: n käytön aloittaminen: Tässä ohjeessa aiomme suorittaa vilkkuvan LED -esimerkin WeMos ESP8266: ssa
Ham -radion käytön aloittaminen: 5 vaihetta (kuvien kanssa)
Aloittaminen kinkkuradion kanssa: Äskettäin lyötyinä kinkun lisenssinhaltijana haluan siirtää prosessin, jonka otin kinkkuradion käyttöön. Minua houkutteli harrastuksen omavaraisuus, joka antoi ihmisille mahdollisuuden kommunikoida, kun muut menetelmät häiriintyvät. Mutta se on myös palkitsevaa