RA8875 подойдет ли?

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Тварищи, есть ли у кого нибудь опыт использования подобного дисплея с мегой например, нет ли подводных камней?

http://www.ebay.com/itm/5-5-0-inch-TFT-LCD-Module-RA8875-Controller-Touch-Screen-I2C-Serial-SPI-MCU-/290960784475?pt=LH_DefaultDomain_0&hash=item43be9d3c5b

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

есть, ахрененого размера булыжник! на нем написано, прежде чем что то заказывать, попробуй найти библиотеки которыми ты будеш ентот дисплей заставлять работать.. либо оцени свои силы в написании библиотек с нуля!

Rednaxela
Offline
Зарегистрирован: 26.08.2013

ну так я не понял - библиотек что ли на него нет? ? ?  запросил у продавца ... ждемс...

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Rednaxela пишет:

ну так я не понял - библиотек что ли на него нет? ? ?  запросил у продавца ... ждемс...

ну так вы думаете я чтоли начну рыться и выяснять есть на него библиотеки или нет?

мне оно не нада.. это просто то что я бы для себя выяснил сначала... смогу ли я им пользоватся прям из коробки или мне понадобятся танцы с бубнами..

leshak
Offline
Зарегистрирован: 29.09.2011

Puhlyaviy дело говорит. 

Ну представте что вам сказали "подойдет". Ну просто бегло человек посмотрел что есть I2C/SPI, питание 5v -  и все. Теоретически - этого достаточно что-бы заставить работать с дуиной практически что угодно.

Вы купили и дальше что? Представте что он уже у вас в руках. Дальше ваши действия? Завести ветку "помогите подключить?". А ведь вероятность что услышите "читайте даташит и пишите библиотеку" - далеко не нулевая.

Вообщем представте что он уже у вас есть. Нарисуйте схему подключения и напишите скетч для проверки работоспособности. Если можете сделать и то и другое (или найти в инете готовые) - значит ВАМ можно его брать, если нет.... значит он будет у вас валятся.

Кстати, продавец лота, вопреки обыкновению, дал очень подробное описание, ссылки на даташиты и т.п. Так что хоть в этом "легче". Часто бывает что даже даташита найти не возможно. Кстати там есть и примеры на C. Можете их посмотреть. Хватить знаний что-бы портировать эти примеры на ардуину (а еще лучше в arduino-бибилиотеку)?

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

leshak пишет:

Кстати, продавец лота, вопреки обыкновению, дал очень подробное описание, ссылки на даташиты и т.п. 

Это еще ничего не значит, есть полно продавцов китайских которые просто копируют текст на английском, причем один и тот же ко всему что выкладывают... и совсем не факт что все что там написано имеет отношение к жанному дисплею...

leshak
Offline
Зарегистрирован: 29.09.2011

>Это еще ничего не значит, есть полно продавцов китайских которые просто копируют текст на английском

Да. Согласен.  Но все равно "нужно же от чего-то отталкиватся". Иногда продавцы вообще присылают не то что обещали. Все равно же нужно "как-то прикинуть". В любом случае искать начинаем опираясь на описание и фотки. 

Но вы правы. Особенно у китайцев нужно, по возможности, сравнивать фото и описание. Любое несоотвествие - может говорить о недобросоветности продавца. 

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

да продавец то может быть и допросовесным.. только вот не разумеет он по англицки настолько что бы описания писать :)

я на торговле с китаем уже не одну собаку сьел ( если повар нам не врет)... иногда даже конейтнерами отуда кое что вожу.. они забавные, эти киатйцы...есть куча смешных история реальных...

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Спасибо за ответы, понятно, надо действительно поискать и попробовать найти реальные примеры.

А что можете посоветовать что хорошо работает, как говорите сразу из коробки достал и подключил ?

Есть какие-то поппулярные модели на которых уже отработали всё ? 

 

Вообще говоря мне нужен один дисплей размера 5 дюймов, но если с ним настолько сложно то есть смысл поставить два по 2,5 например но на которые уже все есть для графического вывода.

 

Какой дисплей подскажете, товарищи?

alex_r61
Offline
Зарегистрирован: 20.06.2012
Rednaxela
Offline
Зарегистрирован: 26.08.2013

 

ДА! Для него библиотеки есть! Посмотрел, то что надо!

НО У него насколько я вижу только параллельный интерфейс? (сколько ног это займет, если без тачскрина)

... у меня проблема с пинами, желательно последовательный, т.к. кроме дисплея предполагается подключить еще два 16-ти позиционных семисегментных индикатора с динамической индикацией и кучу датчиков.

alex_r61
Offline
Зарегистрирован: 20.06.2012

Вот последовательный лучше применить для семисегментных индикаторов,

например через MAX7219. А с таким дисплеем на SPI, как телега против авто. 

Там в доках всё указано, 16 шина + 4 управление, если RD(чтение) не будете

использовать. 5-6 на тач и 4 на карту.

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Ок, понятно, наверно придется его брать.

И еще вопрос - используя такой дисплей,  смогу ли я использовать MsTime2 (таймер) для динамической индикации и I2C устройства типа GPS, датчики температуры и аналоговые входы?    (На меге 2560)

alex_r61
Offline
Зарегистрирован: 20.06.2012

Я же написал про MAX7219, она всё сама делает Вы только

данные в неё отсылаете. Она поддерживает до восьми

семисегментных индикаторов и возможно каскадирование.

Т.е. 8+8+8+ и т.д.

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Да, спасибо, про MAX7219 прочитал. Это понятно теперь как сделать.

А по поводу таймеров и I2C подскажете?

 

leshak
Offline
Зарегистрирован: 29.09.2011

>смогу ли я использовать MsTime2 (таймер) для динамической индикации

Да. Только библиотеку нужно подобрать которая mega2560 поддерживает (пару дней назад как раз кто-то наткнулся что только на 1280 ). Вот тут кажись было это по аппаратному прерыванию | Аппаратная платформа Arduino

>и I2C устройства типа GPS

GPS обычно работают по Serial/UART

>и I2C подскажете?

Посмотрите где на меге I2C (это в описании платы можно найти) и посмотрите занимает ли их этот шилд (а скорее всего вы там сами выбираете куда его цеплять).

alex_r61
Offline
Зарегистрирован: 20.06.2012

По I2C есть библиотеки с аппаратной поддержкой, есть

с софтовой реализацией. Во втором случае можно цеплять

на любые ноги. Что туда хотите прицепить. А по таймеру

библиотеки особо не нужны, его и так легко настроить.

leshak
Offline
Зарегистрирован: 29.09.2011

alex_r61 пишет:

библиотеки особо не нужны, его и так легко настроить.

Хм... новичку? Сразу в эти "делители" и т.п. Вы вправду думаете что код типа

TIMSK2 &= ~(1<<TOIE2);
	TCCR2A &= ~((1<<WGM21) | (1<<WGM20));
	TCCR2B &= ~(1<<WGM22);
	ASSR &= ~(1<<AS2);
	TIMSK2 &= ~(1<<OCIE2A);

Для новичка это "легко настроить"?

Я бы скорее сказал что "проще без таймера обойтись" тогда. Чисто на функции millis(), по принципу примера "мигаем диодом без delay()"

alex_r61
Offline
Зарегистрирован: 20.06.2012

Конечно не всё так просто, но можно и проще.

Тик 10mSec.





 TCCR2B = 0x00;   //stop
 TCNT2  = 0x64;
 ASSR   = 0x00; 
 TCCR2B = 0x05;   //start
 TIMSK2 = 0x01;

 

leshak
Offline
Зарегистрирован: 29.09.2011

alex_r61 пишет:

Конечно не всё так просто, но можно и проще.

Тик 10mSec.





 TCCR2B = 0x00;   //stop
 TCNT2  = 0x64;
 ASSR   = 0x00; 
 TCCR2B = 0x05;   //start
 TIMSK2 = 0x01;

 

Я понимаю что вы это выпишите, а новичок? Собственно библиотеки это есть удобный обертки над этим кодом :) Для простоты пользования. Вы уверены, что новичок, даже глядя на ваши коменты поймет как запустить/остановить таймер? Или решить задачу поменять тик с 10 на 100 msec?

Не понятно, что в итоге "любой сможет". Со чем угодно можно ,в итоге, можно разобратся после секса с даташитом. Но вот не зная что такое регистры, со старта.....

Вообщем если бы все думали как вы, то ардуина бы не появилась. Зачеб нужен digitalWrite, когда есть PORTB |= 1<< X? :)

Когда понимаешь - оно все просто, а вот когда ты только входишь.... проще взять библиотеку. Их тоже не дураки придумали. Даже зная - иногда большой смысл в библиотеке бывает. 

alex_r61
Offline
Зарегистрирован: 20.06.2012

Главное человек с комплектухой разобрался, а что

непонятно спросит. 

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Спасибо за информацию. С кодом можно разобраться.

Единственное действительно что не ясно, зачем использовать регистры если имеется функция в библиотеке для вызова по прерыванию таймера MsTimer2::set(500, function);   или с ней что то не так? Разве ее не достаточно для динамической индикации например?

А вот с чем действительно помогите разобраться так это со схемой. Запросил у продавца схему соединения дисплея через шилд с ардуиной и вот что мне отправили. Где здесь соединение собственно не могу понять.    Мне нужно это для того чтобы не просто воткнуть шилд в мегу а соеденить ее проводами, т.к. на то место где я планирую все это установить такой пирог не воткнешь - надо будет разносить платы друг от друга.

http://coldtears.lin3.siteonlinetest.com/files/7.0F.zip

 

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Вроде как вот это!?

Хорошо, а к камим выводам ардуины все это цеплять? ))

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013
  • Connect to Arduino Mega2560:
LEDA -> 5V
VCC -> 5V
RD -> 3.3V
GND -> GND
DB0->DB7 to pin D37->D30
DB8->DB15 to pin D22->D29
RS -> D38
WR -> D39
CS(pin6) -> D40
RSET-> D41
  • Connect to Arduino UNO
LEDA -> 5V
VCC -> 5V
RD -> 3.3V
GND -> GND
DB0->DB5 to D8->D13
DB6->A0
DB7->A1
DB8->DB15 to D0->D7
RSET->A2
CS->A3
WR->A4
RS->A5

Touch Screen:

 

DCLK-> D6
CS(pin30) -> D5
IN -> D4
OUT-> D3
IRQ -> D2

 

SD Card:

SCK -> D52
MISO -> D50
MOSI-> D51
CS -> D53

 

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Спасибо большое!

уже проясняется вроде ))   только теперь еще вопросы, куда в таком случае могу подключить i2c и Serial/UART на то что остается на меге?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

ну так в свободный сериал и подключайте и I2c подключайте в I2C 

странные ворпосы задаете... там еще пинов останется как грязи

Rednaxela
Offline
Зарегистрирован: 26.08.2013

А, ну да, действительно ))

А вот не совсем понял что значит указание PIN6 для CS ?

CS(pin6) -> D40

 

И вот здесть какой из них IN а какой OUT

MOSI
MISO
Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

учим матчасть

http://arduino.cc/en/Reference/SPI

leshak
Offline
Зарегистрирован: 29.09.2011

Rednaxela пишет:

 

Единственное действительно что не ясно, зачем использовать регистры если имеется функция в библиотеке для вызова по прерыванию таймера MsTimer2::set(500, function);  

"Использовать регистры" - это единственное что понимает микроконтроллер. Библиотека - это просто "красивый корпус/обертка для этого". Просто для удобства и что-бы "не вникать в эти регистры". Но внутри, если вы загляните ей "под капот" она именно установкой регистров и занимается.

 

Rednaxela пишет:

или с ней что то не так? 

Я вам дал ссылку на ветку. Вы ее читали (мне было нефиг делать и я просто так искал вам эту ссылку)? Там описано и "что с ней не так" и два способа лечения: как подправить саму библиотеку или взять альтернативную (и есть ссылка на альтернативную которая заработала у человека).

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Да, спасибо, я прочитал, там действительно есть корректировка. Но там для более ранней версии. У меня компилируется нормально, но к сожалению еще не проверял на самом контроллере.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

leshak пишет:

Я вам дал ссылку на ветку. Вы ее читали (мне было нефиг делать и я просто так искал вам эту ссылку)? 

-Машенька учиться?

-Нет, Машенька уже умеет!

вот ты пристал к человеку... я уж скоро начну книгу писать по психологии новичков ардуиноводов!

там будет примерно так... большинство новичков выбирает для своих проектов экран размером побольше, и скорее всего это связано, как говорил дедушка Фрейд, с маленьким размером детородного органа, и психологически человек хочет компенсировать это размером экрана :)

Ну раз уж ты начал его тролить, то сезон охоты обьявляется открытым :)

Ты же видиш челвоек даже не знает что такое SPI.

Rednaxela
Offline
Зарегистрирован: 26.08.2013

Вообще у меня и контроллера даже еще нет на руках...))  а так если что на asm программировал в свое время для at2051 если память не изменяет, а сейчас erp системы.... но вот SPI не знаю что такое.... узнаю ))  спасибо что подсказываете.

Да, ладно, тролльте )) Главно чтобы распиновку правильно дали  ;))

Фрейда на помойку ))   размер экрана подбирается под то место куда его нужно будет вставлять )) 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Rednaxela пишет:

Фрейда на помойку ))   размер экрана подбирается под то место куда его нужно будет вставлять )) 

не не, экранами же нужно меряться... типа диагональ, толщина... цветность... чуствительность...

leshak
Offline
Зарегистрирован: 29.09.2011

>Ну раз уж ты начал его тролить, то сезон охоты обьявляется открытым :)

Не, вам показалось. Просто чуток раздраженно высказался.  Не нужно его тролить :)  Человек честно пытается разобратся.

К тому же - он смог "доказать" что ссылку читал ;)

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

я кстати вон свой экран уже выложил видео в проектах в теме ардуинизации дома :)

leshak
Offline
Зарегистрирован: 29.09.2011

Rednaxela пишет:

Да, спасибо, я прочитал, там действительно есть корректировка. Но там для более ранней версии. 

И вправду. Есть уже версия с MsTimer2 and FlexiTimer2 Arduino Libraries, Run a Function At Regular Intervals уже имеет поддержку 2560  (как раз и сделали то что я писал в той вветке "найдите и замените"). Еще и поддержку AT90USB646 добавили (платы семейства Teensy)

Rednaxela пишет:

У меня компилируется нормально, 

Это ни о чем не говорит. Старая - тоже компилируется. Просто она 2560 мегу "опознавала" не как мегу, а как "непонятную плату". А на непонятной плате - непонятно как конфигурировать аппаратный таймер. А раз непонятно - она тупо этого не делала. И не работала нормально. Но компилировалась.