Sari la conținut
ELFORUM - Forumul electronistilor

Despre functionarea arduino


nimeni_altci

Postări Recomandate

Salut,

 

Sunt nou in acest domeniu al placii de dezvoltare arduino Uno. Poate ma ajutati voi sa inteleg mai bine cum functioneaza acesta placa. Pentru inceput as vrea sa inteleg cum este capabil controllerul Atmel sa foloseasca instructiunile limbajului de programare specific Arduino(acel limbaj foarte simplificat), pentru ca limbajul clasic de programare Atmel atmega este destul de complex in comparatie cu arduino. In al doilea rand vreau sa intreb cum este programat Arduino fara un programator ca si USBASP pe care il folosesc la atmel atmega. Daca scot controllerul din soclul arduino si il pun in alta placa va mai fi capabil sa execute acelasi program, lucrand independent de placa arduino?  Astept raspunsurile voastre!

Va multumesc!

Link spre comentariu

Cred ca inainte de a pune aceste intrebari ar fi trebuit sa vizitezi pagina oficiala a Arduino si daca ceva din ceea ce este prezentat acolo - referitor la placile de dezvoltare Arduino - ti-ar fi fost neclar atunci puteai cere clarificari.

Si acum, pe scurt, iti voi raspunde la intrebari, in ordinea lor: mediul de dezvoltare integrat Arduino (IDE) converteste sketch-urile (asa se numesc programele pentru Arduino) in instructiuni pe care microcontroller-ul  (in cazul tau ATMega328/168) le intelege.

Programarea microcontroller-ului ATMega de pe placa Arduino cu instructiunile astfel convertite se face prin intermediul unui "bootloader" - un mic program inscris deja in ATMega - folosind o interfata USB-RS232 (la Arduino modele mai vechi FTDI, la Arduino UNO ATMega8U2).

Daca microcontroller-ul de pe placa Arduino este scos din soclu (si este deja programat sa execute un anumit program) atunci poate fi montat pe o alta placa PCB pentru o aplicatie "stand alone". De asemenea, poate fi montat  pe o alta placa si fara a fi programat in prealabil, insa va trebui sa folosesti o interfata RS232 care sa fie conectata la pinii corespunzatori ai uC pentru programare. 

Link spre comentariu

Iti multumesc frumos pentru raspuns. Deci sa inteleg ca daca as achizitiona un FTDI/ATMEGA8U2 si as avea un controller cu bootloaderul incarcat as putea sa realizez o clona arduino? Si o ultima intrebare: ce se intampla daca pe placa de dezvoltare arduino inlocuiesc ATMEGA324 implicit cu un alt ATMEGA324 nou care nu are un bootloader?

Link spre comentariu

Cel mai bine ar fi sa achizitionezi un circuit FTDI FT232RL si un microcontroller ATMega328 (nu 324) preincarcat cu bootloader-ul Arduino pentru a-ti construi o clona Arduino.

Daca inlocuiesti un ATMega328 cu bootloader incarcat deja cu un alt microcontroller identic ca tip insa gol (fara nimic inscris in memorie) nu vei obtine nimic. 

Link spre comentariu

Am inteles. Si mai am o nelamurire in legatura cu montajele care extind facilitatile Arduino. La multe dintre ele vad : "pentru Arduino". Intrebarea mea este de ce sunt acestea facute special pentru arduino. De exemplu montajul: http://www.robofun.ro/wifly_shield . De ce acesta ar fi facut special pentru arduino si nu ar merge si acesta: http://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=RN-131-EK  . Practic este tot un modul de wifly RN131. Ce are special cel de la robofun pentru a fi interfatat cu Arduino?

Multumesc.

Link spre comentariu

Cele doua produse au diferente constructive in ceea ce priveste comunicarea cu un microcontroller (ultimul poate comunica prin RS-232 via USB), primul, in schimb, comunica prin interfata SPI.

Link spre comentariu

de ce sunt acestea facute special pentru arduino.

Pe langa functionare, shield-urile (cum se numesc extensiile pentru Arduino) sunt si hardware "potrivite" pentru Arduino. 

Daca ai sa te uiti la conectori, ai sa vezi ca-s facuti special ca shieldul sa se "suprapuna" pe Arduino.

Link spre comentariu

Nu trebuie sa ai incarcat nimic intr-un ATMega328 chiar nou nout.

Din mediul de dezvoltare Arduino ai optiune sa programezi bootloaderul folosind interfata pe usb FTDI/ATMEGA8U2 si chiar USBASP  .

Sunt suportate mai multe tipuri de programatoare si exista multe dezvoltari si hackuri bazate pe Arduino.

 

Tools ---> Burn bootloader

Tools --> Programmer -->  type of programmer

Editat de danzup
Link spre comentariu

Va multumesc tuturor pentru raspunsuri. Am inceput sa inteleg care e treaba cu arduino. Referitor la modulul wifly. Mentionez ca il detin pe cel de aici: http://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=RN-131-EK ; am posibilitatea sa il interfatez cu un ATMEGA daca este prin RS 232? Cam cat de complicat ar fi? M.am apucat sa studiez datasheetul modulului dar in nici un caz nu arata cum se conecteaza cu un ATMEGA, mai ales pentru ca e produs  de MICROCHIP.

Link spre comentariu
  • 3 luni mai târziu...
Vizitator coriandru

Ca sa nu deschid topic nou postez aici niste intrebari, nu am mai lucrat cu Arduino. Vreau sa-mi iau un Arduino Uno V3, ma incanta ca sunt multe proiecte interesante pe aceasta platforma si ca limbajul de programare e mai usor de inteles (am o oarece experienta in Atmel si PIC  la nivel de realizat proiectele altora, posed USBASP si clona Pickit2). In plus sunt disponibile multe librarii.

1. Dupa ce am realizat un program care ma satisface, poate fi incarcat intr-un alt Atmega328? cum?

2. Dar intr-un alt tip de microcontroller decat Atmega328? (pentru chestii simple ajunge si un Atmega8 sau chiar Attiny). Bineinteles cu modificarea corespunzatoare in program a porturilor/pinilor.

3. Am vazut pe ebay variante mai ieftine cu Atmega328 SMD si interfata USB cu circuitul CH340G, sunt dezavantaje in functionalitate? (aici chiar ca se pune problema portarii codului in alt microcontroller cel al placii fiind SMD). Oricum vreu sa mai comand si alte accesorii pentru placa.

Multumesc.

Link spre comentariu
Vizitator coriandru

Ca sa nu deschid topic nou postez aici niste intrebari, nu am mai lucrat cu Arduino. Vreau sa-mi iau un Arduino Uno V3, ma incanta ca sunt multe proiecte interesante pe aceasta platforma si ca limbajul de programare e mai usor de inteles (am o oarece experienta in Atmel si PIC  la nivel de realizat proiectele altora, posed USBASP si clona Pickit2). In plus sunt disponibile multe librarii.

1. Dupa ce am realizat un program care ma satisface, poate fi incarcat intr-un alt Atmega328? cum?

2. Dar intr-un alt tip de microcontroller decat Atmega328? (pentru chestii simple ajunge si un Atmega8 sau chiar Attiny). Bineinteles cu modificarea corespunzatoare in program a porturilor/pinilor.

3. Am vazut pe ebay variante mai ieftine cu Atmega328 SMD si interfata USB cu circuitul CH340G, sunt dezavantaje in functionalitate? (aici chiar ca se pune problema portarii codului in alt microcontroller cel al placii fiind SMD). Oricum vreu sa mai comand si alte accesorii pentru placa.

Multumesc.

Imi poate raspunde cineva la intrebari? Multumesc.

Link spre comentariu

1. Dupa ce am realizat un program care ma satisface, poate fi incarcat intr-un alt Atmega328? cum?

2. Dar intr-un alt tip de microcontroller decat Atmega328? (pentru chestii simple ajunge si un Atmega8 sau chiar Attiny). Bineinteles cu modificarea corespunzatoare in program a porturilor/pinilor.

3. Am vazut pe ebay variante mai ieftine cu Atmega328 SMD si interfata USB cu circuitul CH340G, sunt dezavantaje in functionalitate? (aici chiar ca se pune problema portarii codului in alt microcontroller cel al placii fiind SMD). Oricum vreu sa mai comand si alte accesorii pentru placa.

Multumesc.

 

1. Da, utilizand tot Arduino ca si programator. 

2. Da, din cate stiu eu (nu am facut insa niciodata). Utilizezi tot Arduino ca si programator.

3. Nu exista nici un dezavantaj cu CH340G, este o problema de costuri. trebuie doar instalat un alt driver pe computer (lucru banal). Nu se schimba nimic programul din Arduino.

Link spre comentariu
  • 5 luni mai târziu...

salut   am si eu un arduino duemilanove . si as dorii daca ma puteti ajuta cum sa incarc pe un atmega 328 bootloaderul. precizez ca am  programator usbasp , iar atmega de pe arduino este trosnit ,  dar am unul  blank  nou , multumesc

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări