LusoRobótica - Robótica em Português
Sistemas específicos => Arduino / AVR => Tópico iniciado por: almamater em 25 de Março de 2011, 13:54
-
Bom, pela primeira vez adquiri um Arduino Mega 2560, as brincadeiras que fiz até agora foi sempre com Uno e Duemilanove.
Existe alguma diferença em usar uma shield (ex.: Lcd Keypad shield) no Mega?
Ontem testei usar o código/library do LcdSmartie com a shield mencionada e no Uno funciona normal como sempre no Mega nem por isso.. , o mesmo aconteceu com outra shield (http://iteadstudio.com/store/index.php?main_page=product_info&cPath=18&products_id=149)de um TFT
Pensei que os pinos do Mega seriam exactamente iguais aos do Uno/Duemilanove na parte das Shields..
Testei uma outra shield (InputShield c/ joystick) e funciona OK! Só mesmo as dos LCDs é que não gostam do Mega :)
Será alguma alteração de Pinos nas Librarys? como supostamente os pinos são os mesmos não sei..
-
Será que tem a ver com o pino 10..
A Lcs Shield usa esse pino que é o SS: http://shieldlist.org/dfrobot/lcd (http://shieldlist.org/dfrobot/lcd)
O Arduino Mega tem os pinos SPI em sitios diferentes... será por isso!
-
se os shields usam SPI de certeza que é por isso ;)
-
Pois andei a ler sobre o SPI (não fazia ideia :-[) deve ser por isso... secalhar dá para dar a volta alterando a library ou assim.. tenho de analisar o código então :)
-
penso que a única maneira é alterando o shield fisicamente pois os pinos SPI do mega estão num sitio diferente
http://mcukits.com/2009/04/06/arduino-ethernet-shield-mega-hack/ (http://mcukits.com/2009/04/06/arduino-ethernet-shield-mega-hack/)
(neste caso é um ethernet shield dos antigos mas a finalidade é a mesma)
-
Sim, é o SPI que está em pinos diferentes.
Não podes alterar o código assim facilmente, pois o SPI é hardware, só se escreveres SPI bitbang que se for para enviar é o mesmo que fazer shiftOut e mexer a linha SS.
Se não podes usar os pinos SPI que estão no conector ISP do Mega e meter nos pinos 13,12,11 e 10 das shields.