26.06.2018, 11:29
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
По сути, он может и TIM -› DMA -› GPIO сделать. Тот же FSMC на 8 бит получится.
|
|
|
|
26.06.2018, 12:41
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Мужики ткните плиз пальцем в даташит где посмотреть на инициализацию для 8 бит... Смотрю в книгу вижу фигу... Там только для 3 и 4 проводного и для 16 бит вижу и всё... Ткните где последовательность инита в даташите плиз... Мне бы раздуплить прием передачу а дальше уже легче....
тут смотрю даташит... - https://cdn-shop.adafruit.com/datasheets/ILI9341.pdf
|
|
|
|
26.06.2018, 13:08
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
6. Block Function Description
MCU System Interface
Ноги IM0..IM3 -› выбор интерфейса по табличке
|
|
|
Сказали "Спасибо" Easyrider83
|
|
|
26.06.2018, 13:19
|
|
Гражданин KAZUS.RU
Регистрация: 22.07.2007
Адрес: Владивосток
Сообщений: 984
Сказал спасибо: 435
Сказали Спасибо 375 раз(а) в 197 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Последовательности там нет. По идее надо прошерстить все регистры и задать в них нужные нам значения. Другими словами пройти вторую половину даташита где расписаны все команды и влепить все подходящие команды в свой исходник. Но проще взять готовую инициализацию и посмотреть что в ней устанавливается. Команды и регистры имхо 8битные независимо от типа интерфейса, 16/18 бит используются, когда передаем графические данные.
|
|
|
|
26.06.2018, 14:13
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Сообщение от Easyrider83
|
Ноги IM0..IM3
|
Этих ног у меня нет, только D0-D7...
начинаю находить грабли
PHP код:
|
void TFT9341_SendCommand(unsigned char cmd)
{ RESET_IDLE; CD_COMMAND;//лапка в состоянии посылки команды RD_IDLE;//отключим чтение CS_ACTIVE;//выбор дисплея GPIOB-›ODR = cmd; // DATA_PORT=cmd; // WR_STROBE; CS_IDLE; }
|
В этой строке GPIOB-›ODR = cmd; - у меня обнуляются и старшие биты. А на старших битах на этом же порту висят RD,WR,CS,CD,RESET ))
Там где я брал пример ноги управления висят на отдельном порту...
Ща переключу на другой порт... А подскажите как можно в порт писать так чтобы не менялись старшие биты? Как правильно маску прописать...?
GPIOB-›ODR |= cmd; - забыл, вот решил...
Последний раз редактировалось miwutka; 26.06.2018 в 14:24.
|
|
|
|
26.06.2018, 14:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,901
Сказал спасибо: 499
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Сообщение от miwutka
|
А подскажите как можно в порт писать так чтобы не менялись старшие биты?
|
GPIOB-›ODR = (GPIOB-›ODR & 0xF0) | cmd; //uint8_t cmd
|
|
|
Сказали "Спасибо" AR_Favorit
|
|
|
26.06.2018, 14:32
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
GPIOB-›ODR = (GPIOB-›ODR) | (cmd & 0xF0); //uint8_t cmd
|
|
|
|
26.06.2018, 14:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Исходя из вот этого
ILI9341 can be accessed via 8-/9-/16-/18-bit MCU 8080-Ⅰ series parallel interface. The chip-select CSX (active
low) is used to enable or disable ILI9341 chip. The RESX (active low) is an external reset signal. WRX is the
parallel data write strobe, RDX is the parallel data read strobe and D[17:0] is parallel data bus.
ILI9341 latches the input data at the rising edge of WRX signal. The D/CX is the signal of data/command
selection. When D/CX=’1’, D [17:0] bits are display RAM data or command’s parameters. When D/CX=’0’, D
[17:0] bits are commands.
Надо RESET держать в высоком уровне постоянно?... В примере где я смотрел там всегда РЕСЕТ в низком уровне..... Я это исправил но пока толку нет.
раньше читал ID = 0x45454545, сейчас ID = 0x45324532 )))
Я еще непойму строку в таблице(стр.83) где читаем ИД дисплея. В первой сре пишем в D0-D7 = 0xD3. Дергаем RD вверх, вниз. Потом ставим DC = 1, а в D0-D7 все ХХХХХХХХ. Что это значит?
И еще непонятно, в таблице написано в первой строке где мы шлем адрес D3 что надо дернуть ногу RD. Это же защелка на чтение из шины данных. Может надо дегать певый раз WR???
|
|
|
|
26.06.2018, 14:36
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,581
Сказал спасибо: 115
Сказали Спасибо 806 раз(а) в 583 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Сообщение от miwutka
|
GPIOB-›ODR
|
А почему не BSS?
__________________
Смерть бандеровской мразоте!
|
|
|
|
26.06.2018, 14:47
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: ILI9341 + stm32f103c8t6
Сообщение от AR_Favorit
|
GPIOB-›ODR = (GPIOB-›ODR & 0xF0) | cmd; //uint8_t cmd
|
Сообщение от Easyrider83
|
GPIOB-›ODR = (GPIOB-›ODR) | (cmd & 0xF0); //uint8_t cmd
|
Извращенцы.
Тема "STM32 - Tips 'N Tricks" пост 6.
Можно и через BSRR.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 14:37.
|
|