TibiBzg Posted July 24, 2019 Share Posted July 24, 2019 Va salut! Vreau sa-mi fac si eu un Arduino, cu ATmega328p, dar vreau sa folosesc libraria liquid crystal i2c penrru un LCD 2X16, libraria va funcționa daca pcb-ul va fi pecum in video ul urmator? P.S. o fac ca hobby, stiu ca sunt de cumpărat si sunt ieftine. Link to comment
nico_2010 Posted July 24, 2019 Share Posted July 24, 2019 (edited) Mai intai cumpara un ATMega328P (sau fara P), montezi quartz-ul de 16MHz (ca in fisierul video) si led-ul pe pinul PB5 (pin19) si programezi in uC bootloader-ul pe care ar trebui sa-l gasesti aici: C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\atmega\ATmegaBOOT_168_atmega328.hex Programarea bootloader-ului se face cu un programator AVR-ISP si cu acelasi programator se programeaza fuse-bits (informatia asta o gasesti aici: C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt): diecimila.bootloader.low_fuses=0xFF diecimila.bootloader.unlock_bits=0x3F diecimila.bootloader.lock_bits=0x0F diecimila.menu.cpu.atmega328.bootloader.high_fuses=0xDA diecimila.menu.cpu.atmega328.bootloader.extended_fuses=0xFD Dupa aceea, la fel ca in fisierul video vei folosi o interfata RS232 - TTL pe care o conectezi la pinii 2 si 3 ai uC (Rx la pinul 3 si Tx la pinul 2), compilezi programul dorit si il incarci. Daca am uitat ceva scuze, L.E.: Daca libraria este OK si conexiunile vor fi corecte, ar trebui sa mearga si pe breadboard Edited July 24, 2019 by nico_2010 Link to comment
cimitavita Posted July 24, 2019 Share Posted July 24, 2019 merge daca-i pui o interfata USB-serial sau daca folosesti pentru programare un Arduino pe care microcontrolerul este montat in soclu. Dupa ce l-ai programat, poti pune microcontrolerul unde vrei. 1 Link to comment
nico_2010 Posted July 24, 2019 Share Posted July 24, 2019 (edited) Acum 22 minute, cimitavita a spus: Dupa ce l-ai programat, poti pune microcontrolerul unde vrei. De exemplu, in frigider!! Glumesc. Edited July 24, 2019 by nico_2010 Link to comment
TibiBzg Posted July 24, 2019 Author Share Posted July 24, 2019 Acum 5 ore, nico_2010 a spus: Mai intai cumpara un ATMega328P (sau fara P), montezi quartz-ul de 16MHz (ca in fisierul video) si led-ul pe pinul PB5 (pin19) si programezi in uC bootloader-ul pe care ar trebui sa-l gasesti aici: C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\atmega\ATmegaBOOT_168_atmega328.hex Programarea bootloader-ului se face cu un programator AVR-ISP si cu acelasi programator se programeaza fuse-bits (informatia asta o gasesti aici: C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt): diecimila.bootloader.low_fuses=0xFF diecimila.bootloader.unlock_bits=0x3F diecimila.bootloader.lock_bits=0x0F diecimila.menu.cpu.atmega328.bootloader.high_fuses=0xDA diecimila.menu.cpu.atmega328.bootloader.extended_fuses=0xFD Dupa aceea, la fel ca in fisierul video vei folosi o interfata RS232 - TTL pe care o conectezi la pinii 2 si 3 ai uC (Rx la pinul 3 si Tx la pinul 2), compilezi programul dorit si il incarci. Daca am uitat ceva scuze, L.E.: Daca libraria este OK si conexiunile vor fi corecte, ar trebui sa mearga si pe breadboard Multunesc pentru raspuns. Am uitat sa mentionez ca sunt la inceput:)). Oricum dupa vreo ora de cautare nu pare foarte greu si cred ca as putea sa-i dau de cap, dar daca merge metoda colegului @cimitavita voi faca asa:)) Acum 5 ore, cimitavita a spus: merge daca-i pui o interfata USB-serial sau daca folosesti pentru programare un Arduino pe care microcontrolerul este montat in soclu. Dupa ce l-ai programat, poti pune microcontrolerul unde vrei. Daca imi voi comanda acest model de Arduino si cateva microcontrolare Atmega voi putea sa le programez si apoi sa le folosesc individual de Arduino? Adica dupa sa le programez doar cu interfata USB ? Link to comment
Stefan Posted July 24, 2019 Share Posted July 24, 2019 (edited) Așa cum deja au spus colegii de mai sus repet și eu. Poți programa un microcontroller (bootloader-ul sau programul aplicație) Atmega328 cu un alt arduino sau îți poți cumpăra, tot de pe aliexpress, un programator dedicat precum USBASP sau similare. Daca vrei doar sa scrii bootloader-ul, in microcontrollerul nou, și după sa nu mai depinzi de vechiul Arduino (cel pe post de programator) îți mai trebuie ai un adaptor USB-Serial pentru a scrie programul. Totuși la cat costa un atmega328 separat mai bine, cel puțin pentru primele proiectele, îți cumperi câteva Arduino Pro Mini + adaptor USB-Serial sau direct Arduino Nano. Edited July 24, 2019 by Stefan Link to comment
cimitavita Posted July 24, 2019 Share Posted July 24, 2019 Daca pui un microcontroler nou pe Arduino Uno din poza, trebuie incarcat cu bootloader-ul cu ajutorul unui adaptor USBASP si o mufa adaptoare 10 pini - 6 pini care se conecteaza la mufa ICSP de pe placa Arduino. Bootloadere se gasesc in Arduino\hardware\arduino\avr\bootloaders sau il citesti de pe microcontrolerul care era montat pe placa. Tot cu programatorul USBASP trebuie sa citesti si fuse. Eu folosesc Exteme Burner AVR (nu merge la microcontrolere care au mai mult de 64K flash) iar pentru microcontrolerele cu memorie flash peste 64K folosesc Khazarma. Apoi poti incarca microcontrolerul nou exact la fel (inclusiv fuse) ca cel existent initial pe placa. Atentie mare la fuse. Microcontrolerele ATMEGA vin din fabrica setate sa mearga pe un oscilator intern de 1MHz (nu au nevoie de cristal de cuart extern si nici de alea doua condesatoare). Trebuie sa setezi fuse ca sa mearga pe cristalul extern, dar daca programezi fuse gresit, poti bloca microcontrolerul (daca blochezi scrierea si citirea sau comuti oscilatorul pe frecventa mica). Ca sa il deblochezi, ai nevoie de un programator paralel care sa reseteze fuse. Nico_2010 ti-a scris valorile la fuse la ATMEGA328. Daca inveti sa umbli cu AVR Studio, poti face programe care sa mearga de la zero (adresa 0000h), adica nu mai ai nevoie de bootloader si nici de Arduino. In schimb o sa le poti programa doar prin interfata USBASP. 1 Link to comment
Barbu Andrei Posted July 25, 2019 Share Posted July 25, 2019 (edited) Sau ca sa nu te mai complici, poti folosi Arduino Nano. Am incercat sa fac si eu niste placi Arduino si chiar daca am reusit sa le fac, e timp pierdut. Edited July 25, 2019 by dj_ando_83 Link to comment
mihaicozac Posted July 25, 2019 Share Posted July 25, 2019 Pt. aplicaţii în masă nici nu mai ai nevoie de IDE să scrii în controller, se poate compila în fişier hex apoi programezi direct cu AVRDude. Soluţia asta o folosesc pt. nişte ATTiny13 folosite ca emulatoare OneWire, am hex-urile gata compilate şi durează 2 secunde programarea. Link to comment
TibiBzg Posted September 2, 2019 Author Share Posted September 2, 2019 (edited) Salutare! Mi-au venit chestiutele de pe Ali, dar bineinteles ca nu mi-a iesit nimica. Dupa ce m-am familiarizat cate de cat cu treburile astea pe aici, cred ca am blocat 3 Uc-uri:)). Am folosit o interfata USBasp (https://www.aliexpress.com/item/32647598702.html?spm=a2g0s.9042311.0.0.27424c4dC0AtF1), la un moment dat nu mai puteam sa comunic cu Uc-ul. Am luat un Arduino UNO si intr-un final am reusit sa comunic cu el. Dar cred ca l-am blocat, ce ziceti ca ar trebui sa fac? Daca incerc sa scriu fuse pentru 8Mhz (http://www.engbedded.com/fusecalc?P=ATmega328P&V_LOW=0x00&V_HIGH=0x00&V_EXTENDED=0x00&O_HEX=Apply+values) de pe acest site imi da eroarea urmatore Reading | ################################################## | 100% 0.00s avrdude.exe: verifying ... avrdude.exe: verification error, first mismatch at byte 0x0000 0x00 != 0x22 avrdude.exe: verification error; content mismatch avrdude.exe done. Thank you. Edited September 2, 2019 by TibiBzg Link to comment
nico_2010 Posted September 5, 2019 Share Posted September 5, 2019 Fuse bits nu pot fi 0 (zero). Trebuie sa scrii fuse bits cu valorile mentionate in postarea mea anterioara altfel risti sa-ti blochezi uC si o sa zici ca nu ti s-a spus. Link to comment
one Posted September 10, 2019 Share Posted September 10, 2019 Domnule eu cumpar Arduino gata facut tocmai ca sa nu mai stau sa lipesc piese, placi, regulatoare de tensiune, quartzuri, etc. Un ATmega328P cu arduino bootloader costa 4.5€, un Arduino gata facut 10€. Pentru mine nu merita diferenta daca o transform in valoarea muncii pentru a construi. Daca te multumesti cu un breadboard atunci e ok. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now