Vizitator i2r Postat Martie 29, 2017 Partajează Postat Martie 29, 2017 Salutare. Am acest display cu 40 pini si momentan folosesc un Arduino Nano (ATmega328P) pentru a-l controla. Pinii disponibili ii epuizez doar pentru LCD bus (parallel 16 bit, nu suporta SPI) insa am nevoie si de Touch/SDcard ce sunt suportate prin interfata SPI. Din pacate nu sunt un cunoscator in domeniul uC si apelez la ajutorul vostru pentru o solutie de controller cu suficienti pini (sau poate vreun workaround), dar care sa poata suporta si librariile aferente (8-bit AVR). Din ce m-am interesat, fiind incepator in embedded code, dupa aparitia Arduino Due (AT91SAM3X8E ARM 32 bit) au fost adaptate librariile si pentru acest model. Problema principala este ca am nevoie de un design compact (voi integra display-ul intr-o doza de intrerupator alaturi si de un ENC28J60 care ocupa suficient spatiu in adancime, plus alti pini consumati pentru SPI), deci placile Arduino Mega sau Due ies din discutie. Ma mai gandeam sa integrez doar microcontroller-ul (ATmega2560 sau mai degraba ARM-ul lui Due, pe care oricum nu il gasesc stand-alone) intr-un circuit PCB custom, insa nu stiu daca se poate executa cu o asemenea finete. Sau poate alte controllere compatibile, sau un alt unghi de abordare (dar tinand cont de restrictia de design si faptul ca viteza de operare este oricum lenta, nu as vrea sa interpun circuite logice care sa o incetineasca si mai mult - de aici si dorinta unui controller mai potent daca se poate). Multumesc. Link spre comentariu
nico_2010 Postat Martie 30, 2017 Partajează Postat Martie 30, 2017 Ai varianta de a folosi ATMega128. Are suficienti pini pentru comanda afisorului si pentru SPI si ar mai ramane cativa liberi pentru alte utilizari. Aici: https://www.itead.cc/blog/itdb02-2-4-display-with-arduino ai explicatii cu privire la modul de initializare al display-ului, iar pentru SPI se gasesc cateva biblioteci usor utilizabile, insa va trebui sa folosesti Atmel Studio pentru realizarea programului. Link spre comentariu
Liviu M Postat Martie 30, 2017 Partajează Postat Martie 30, 2017 Poate te ajuta un expandor serial? Link spre comentariu
mihaicozac Postat Martie 30, 2017 Partajează Postat Martie 30, 2017 3 expandoare cu PCF8574, cablate pe adrese hardware diferite, ar trebui să rezolve problema. Cu 2 pini pe Arduino se controlează astfel 24 de pini I/O Link spre comentariu
Liviu M Postat Martie 30, 2017 Partajează Postat Martie 30, 2017 S-ar putea ca cele pe i2c sa fie cam lente. Altfel exista si cu mai multi pini. Link spre comentariu
Vizitator i2r Postat Martie 30, 2017 Partajează Postat Martie 30, 2017 Multumesc pentru sugestii, dar expandoarele (si corectati-ma daca gresesc) vor ingreuna procesarea care e oricum prea lenta. @nico_2010 vad ca si ATMega128 are tot 14mm x 14mm; sa inteleg ca avand ceva mai putini pini decat ATMega2560 ar putea fi mai degraba lipid SMD pe un PCB? Link spre comentariu
nico_2010 Postat Martie 31, 2017 Partajează Postat Martie 31, 2017 ATMega128 exista in capsula TQFP64 (accesibila din perspectiva lipirii pe cablaj) si in capsula QFN/MLF (presupune statie cu aer cald si o alta amprenta PCB, mai mica). Link spre comentariu
Ionut Remus Postat Martie 31, 2017 Partajează Postat Martie 31, 2017 Cu un plus sau minus, expandorul nu incetineste viteza asa cum credeti, depunde mult de cum este organizat softul si desigur optimizat. Eu folosesc expandoare pentru linia i2c pentru schimbarea adreselir ci-urilor cu aceeasi adresa cat si i/o expander pentru diverse iesiri. Tot ce pot soune este ca e nevoie de putin mai multa memorie deoarece rutinele pt. ele mananca cateva resurse, dar am si multe ci-uri, iar la viteza, ooate ca e mai lent atmega2561 dar este insesizabil mie. Mai puteti cauta eventual o interfata sau cinvertor pt. display sa piatafi comandat spi. Atmega 2561 nu e o solutie? Eu i-am facut cablaj prin tober trnsfer si cu ceva mai multa atebtie l-am lipit cu succec, atmega2560 nu am reusit sa-l lupesc in regim diy,dar ce-i drept nu am insistat prea mult... Link spre comentariu
deejay2k1 Postat Martie 31, 2017 Partajează Postat Martie 31, 2017 Ai putea utiliza cateva shift registers legate tot pe spi. O placuta custom cu versiunea smd, ma gandeam Link spre comentariu
Liviu M Postat Martie 31, 2017 Partajează Postat Martie 31, 2017 vor ingreuna procesarea care e oricum prea lenta. Daca folosesti modulele hard dedicate (din ATMega328), expandoarele astea n-ar trebui sa "coste" prea mult. Link spre comentariu
Vizitator i2r Postat Martie 31, 2017 Partajează Postat Martie 31, 2017 ATMega2561 ar putea fi o solutie daca gasesc pe cineva care-l poate integra intr-un PCB (skill-urile mele in zona asta lasa de dorit), altfel ramane ATMega128 in capsula. Din cauza ca randarea pe display este insa lenta si demo-urile cu Arduino Due arata o diferenta categorica de viteza, as fi curios totusi daca cineva a folosit microcontrollerul in cauza SAM3X8E in regim stand alone, sau alte variante asemenatoare (eventual mai usor de integrat intr-un circuit). Link spre comentariu
nico_2010 Postat Aprilie 1, 2017 Partajează Postat Aprilie 1, 2017 O optiune ar fi trecerea la un alt tip de microcontroller (eventual din seria STM32). Link spre comentariu
mars01 Postat Aprilie 1, 2017 Partajează Postat Aprilie 1, 2017 (editat) STM32 programat cu Arduino: www.stm32duino.com Download aici. Editat Aprilie 1, 2017 de mars01 Link spre comentariu
nico_2010 Postat Aprilie 3, 2017 Partajează Postat Aprilie 3, 2017 Cand am pomenit de STM32 nu m-am gandit la varianta adaptata pt Arduino, dar merge si asa (pe placa tip Nano are 32 de pini disponibili). LA asta faceam referire: http://www.ebay.com/itm/STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-Arduino-/311156408508?hash=item48725e00bc:g:ngMAAOSwygJXhGtV Link spre comentariu
Vizitator i2r Postat Aprilie 3, 2017 Partajează Postat Aprilie 3, 2017 Multumesc pentru sugestiile cu STM32, sa vad ce suport exista pentru libraria UTFT Link spre comentariu
Postări Recomandate
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 contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum