Arduino Nano Bascom Navodila za uporabo Arduino Nano - Pogled od zgorajPregledArduino Nano Bascom je majhno testno vezje s mikrokontrolerjem ATmega328P.Napaja se preko Mini-B USB kabla, lahko pa ima tudi zunanje napajanje.Možno ga je programirati v programu Bascom AVR.Razporeditev priključkovPD0 / TX ISP VINPD1 / RX GND ARDUINO Reset Reset NANO +5 V GND ADC7 PD2 TX RX PW PB5 ADC6 PD3 RST PC5 PD4 PC4 PD5 USB PC3 PD6 PC2 PD7 PC1 PB0 PC0 PB1 Ref PB2 3,3 V PB3 PB5 PB4 1
Arduino Nano BascomElektrični načrt +5V +5V 1k ATMEL D0 RES ATMEGA328P D1 D2 RESET 29 UCC1 4 D3 PC6(RES) UCC2 6 D4 AVCC 18 D5 7 D6 Y1 PB6(XTAL1) PD0(RXD) 30 D7 RX AREF PD1(TXD) 31 D8 1k 8 PD2(INT0) 32 D9 16MHz C1 A0 PB7(XTAL2) PD3(INT1) 1 D10 TX C5 C6 0,1uF A1 PD4 (T0) 2 D11 1k A2 20 PD5 (T1) 9 D12 15pF 15pF A3 AREF PD6(AIN0) 10 D13 680 A4 PD7(AIN1) 11 A5 23 A6 PC0 12 A7 PB0 (ICP) 24 +5V PC1 13 PB1(OC1)D12/MISO ISP 25D13/SCK 12 PC2 14 PB2(SS) RES D11/MOSI 26 34 PC3 15 56 PB3(MOSI 27 PC4 16 PB4(MISO) 28 PC5 17 PB5(SCK) 19 ADC6 22 ADC7 21 AGND 3 GND1 5 GND2 FTDI +5V +5V +5V FT232RLNANO AVR RX 1 20 RX TX D0 PD0 TXD RD ZE D1 PD1 RES OSC0 28 680 680 D2 PD2 0,1uF 2 OSC1 27 D3 PD3 DTR# NC2 24 D4 PD4 TX CBUS0 23 D5 PD5 3 CBUS1 22 D6 PD6 RTS# CBUS2 13 3V3 D7 PD7 CBUS3 14 VUSB D8 PB0 4 CBUS4 12 D9 PB1 VCCIO 1 D10 PB2 RESET# 19 2 D11 PB3 5 3 D12 PB4 RXD 3V3OUT 17 4 D13 PB5 A0 PC0 6 USBDM 16 USB-MINI-B A1 PC1 RI# USBDP 15 A2 PC2 A3 PC3 8 A4 PC4 NC1 A5 PC5 A6 ADC6 9 A7 ADC7 DSR# 10 DCS# 11 CTS# 26 TEST 25 AGND 7 GND1 18 GND2 21 GND3 0,1uFUIN +5V VUSB VREG MBR0520 IN OUT GND 680 4,7uF 4,7uF 0,1uF 0,1uF 0,1uF 4,7uF 2
Arduino Nano BascomSpecifikacije:Mikrokontroler Atmel ATmega328PDelovna napetost 5VZunanja napajalna napetost 7-12 VDigitalni priključki 14 (od teh ima 6 možnost PWM)Analogni vhodi 8Maksimalni tok na prikjuček 40 mAFlash Memory 32 KB (od tega 2KB uporablja bootloader)SRAM 2 KBEEPROM 1 KBHitrost 16 MHzDimenzije 18 mm x 43 mmNapajanje:Arduino Nano Bascom se lahko napaja preko Mini-B USB konektorja, zunanjeneregulirane napetosti 7 do 12 V (pin 30) ali 5V regulirane napetosti (pin 27).SpominATmega328P ima 32 KB Flash spomina (2 KB uporablja bootloader), 2 KB SRAMspomina in 1 KB EEPROM spomina.Vhodi in izhodiVsak od 14 digitalnih priključkov se lahko uporablja kot vhod ali izhod. Delujejo nanapetosti 5 V. Vsak priključek lahko sprejme ali odda 20 mA toka in ima lahkonotranji pull-up upor 20-50 k. Nekateri priključki imajo lahko dodatne funkcije: Serijski vmesnik: D0 (RX) in D1 (TX). Uporabljata se za sprejemanje (RX) inoddajanje (TX) TTL serijskih podatkov. Ta dva priključka sta povezana z integriranimvezjem FTDI FT232. PWM D3, D5, D6, D9, D10 in D11. Omogočajo 8-bitne PWM analogne izhode. SPI: D10 (SS), D11 (MOSI), D12 (MISO), D13 (SCK). Ti priključki omogočajoSPI komunikacijo. Preko njih je mogoče direktno programiranje. LED: D13. Ta LED dioda je priključena na Portb.5.Vezje ima tudi 8 analognih vhodov z natančnostjo 10-bitov. I2C: D4 (SDA) and D5 (SCL). Ta dva priključka omogočata I2C komunikacijo. AREF. Referenčna napetost za analogne vhode Reset. Signal za resetiranje vezja.KomunikacijaVezje lahko komunicira z računalnikom preko serijskega vmesnika in USBpretvornika. 3
Arduino Nano Bascom Osnovna plošča Arduino NanoOsnovna plošča nam omogoča enostavnejše priključevanje zunanjih elementov.Osnovna plošča vsebuje še naslednje elemente: Štiri tipke, ki jih lahko vežemo proti masi ali proti +5 V. Trimer potenciometer za generiranje analogne vrednosti (AD7) Konektor za direktno priključitev LCD displaya Trimer potenciometer za nastavitev kontrasta LCD displaya DC vtičnica za zunanje napajanje +12 VElektrični načrt 4
Arduino Nano Bascom ProgramiranjeOb priklopu naprave je treba inštalirati driver za USB vmesnik.V programu Bascom AVR nastavimo programator:Izberemo Options/ProgrammerIzberemo MCS Bootloader, ustrezno številko COM porta in hitrost Baud = 38400.V zavihku MCS Loader pa izberemo Boot size = 1024 in obkljukamo Reset via DTR.Nato napišemo prvi program za utripanje LED diod: Programiranje PrevajanjeProgram shranimo. Nato ga prevedemo z gumbom Prevajanje.Če nimamo sporočil o napakah, lahko z gumbom Programiranje sprogramiramovezje. 5
Arduino Nano Bascom LCD prikazovalnikDoločiti moramo tip LCD displaya in njegovo priključitev.Config Lcd = 16 * 2Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2Te nastavitve lahko vpišemo tudi v menuju Options/Compiler/LCD.Besedilo na LCD napišemo z ukazom LCD in besedilo v narekovajih \" \" .V drugo vrstico izpišemo vrednosti spremenljivk A in B.Več izpisov ločimo s podpičjem. Med spremenljivkami moramo dati presledke.Lcd \"Dober dan \"Dim A As Byte , B As ByteA = 15B = 20Locate 2, 1Lcd A ; \" \" ; BWait 2Display brišemo z ukazom Cls. ' Vklop Pull Up uporov za tipkeIzpišemo novo besedilo:ClsLcd \" ARDUINO Nano\"Locate 2, 1Lcd \" LCD display\"Portc = &B00111100Besedilo lahko pomikamo z ukazom Shiftlcd Left/Right.Do If Pinc.2 = 0 Then Shiftlcd Left If Pinc.3 = 0 Then Shiftlcd Right Waitms 100LoopMostiček za tipke postavimo na 0 V. 6
Arduino Nano Bascom Kreiranje uporabniških znakovKreiramo lahko 8 uporabniških znakov.V programu postavimo kurzor tam, kjer hočemo imeti definicije novega znaka.Nato izberemo Tools/LCD designer.Definiranje znakovIzberemo Tools / LCD designerV oknu LCD designer kreiramo znak,nato kliknemo OK.V programu se pojavi ukaz:Deflcdchar ?,4,14,5,15,20,4,10,17V tem ukazu vprašaj zamenjamo s številom od 0 do 7.Deflcdchar 0,4,14,5,15,20,4,10,17Ta znak lahko izpišemo z ukazom Lcd Chr(0)Ostali ukazi za LCD so:SHIFTLCD LEFT | RIGHT Pomik besedilaCURSOR ON | OFF Vklop | izklop kurzorjaCURSOR BLINK | NOBLINK Utripanje kurzorjaSHIFTCURSOR LEFT | RIGHT Pomik kurzorjaHOME UPPER | LOWER | THIRD | FOURTH Postavitev kurzorjaLOCATE Y , X Postavitev kurzorja Y = vrstica (1, 2)UPPERLINE X = stolpec (1 do 16)LOWERLINE V prvo vrsticoDISPLAY ON | OFF V drugo vrstico Vklop | izklop displaya 7
Arduino Nano Bascom Analogno digitalni pretvornikMikrokontroler ATMEGA328P ima osem 10-bitnih analognih vhodov ADC0 do ADC7.AD pretvornik nastavimo z ukazom:Config Adc = Single , Prescaler = Auto , Reference = AvccV tem primeru je referenčna napetost enaka baterijski (+5 V).To pomeni, da bo AD pretvornik 0 V pretvoril v število 0, +5 V pa v število 1023.Lahko pa izberemo referenčno napetost 2,56 V.Config Adc = Single , Prescaler = Auto , Reference = InternalAD pretvornik vklopimo z ukazom:Start AdcČe želimo meriti napetost na drsniku potenciometra ANA, vstavimo mostiček AD7.Velikost vhodne napetosti merimo z ukazom: W = Getadc(7)W mora biti spremenljivka tipa Word.Primer programa za prikaz analogne vrednosti AD7 na na LCD displayu:Dim W As WordClsCursor OffLcd \"AD pretvornik\"Do Locate 2 , 1 W = Getadc(7) Lcd W ; \" \" Waitms 500Loop 8
Arduino Nano Bascom Serijski vmesnikPošiljanje sporočila preko serijskega vmesnika (COM)Pred uporabo COM vmesnika moramo določiti hitrost prenosa.$baud = 19200Sporočilo pošiljamo s pomočjo ukaza Print.Do ' Izpis preko COM vmesnika (UART) Print \"Dober dan\" ' Zakasnitev 500 ms Waitms 500LoopSporočilo lahko beremo s pomočjo Terminal emulatorja (v programu Bascom).Teminal emulator moramo ustrezno nastaviti.Sporočilo pa lahko beremo tudi s pomočjo programa ProfiLab Expert od firmeABACOM (www.abacom-online.de).Za sprejemanje podatka lahko uporabimo tudi blok COM Receive value. 9
Arduino Nano BascomBranje sporočila preko serijskega vmesnika (COM)Pred uporabo COM vmesnika moramo določiti hitrost prenosa.$baud = 19200Sporočilo lahko beremo s pomočjo ukaza Input.Vendar ukaz Input ustavi izvajanje programa in čaka na sporočilo.Boljši način je z uporabo prekinitev.Enable Interrupts ' Omogočimo prekinitve ' Omogočimo prekinitev sprejemnika COMEnable Urxc ' Določimo naslov prekinitvenega programaOn Urxc BranjeConfig Portb = OutputDim Pod As Byte' Glavna zanka ne dela ničesarDoLoop' Prekinitveni podprogram za branje podatkaBranje: Input Pod , Noecho Portb = PodReturnProgram sprejema podatek preko COM vmesnika in ga izpiše na PortB.Podatek pošiljamo s pomočjo Terminal emulatorja (v programu Bascom). 10
Arduino Nano BascomPodatek lahko pošiljamo tudi s pomočjo programa ProfiLab Expert od firme ABACOM(www.abacom-online.de).Vrednost nastavimo s pomočjo drsnika.Mogoče je brati in pošiljati več podatkov. 11
Search
Read the Text Version
- 1 - 11
Pages: