реклама на сайте
подробности

 
 
> AT91SAM7xxxx + ILI9320, Не запускается дисплей
hd44780
сообщение Oct 29 2012, 07:19
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Привет всем ...

Вот вожусь с данным дисплеем. Мой дисплей с параллельной шиной типа стандарта I8080/I8086 - т.е. полный набор управляющих сигналов nReset, nCS, nRD, nWR, RS (A0) ну и 16 бит ШД. Данный дисплей в общем-то без проблем завёлся на меге 16A и 32A.
Исходник на CvAVR для Mega32A прилагаю. Там и часики на экране тикают, осциллограмму, FFT (тормознуто, на си sm.gif ) считает и рисует и ещё всякую всячину делает ....
Схему не выкладывал, там всё по макросам в коде понятно. Да и здесь она есть.

Перепаял его на AT91SAM7S256 - схема. Код управления, инициализации 100% взят из авровского варианта, под армину эту переписал только низкоуровневый "ногодрыг".
2 недели уже вожусь - не заводится sad.gif . Только светодиодик на PA0 мигает (типа проц работает и таймер тикает) и всё ....
Ногами порта управлять вроде умею - HD44780 20x4 на 8-битном интерфейсе пошёл с первого раза sm.gif (если не считать нескольких неудачных попыток с 4-бит режимом).

Смотрел проект Геннадия - http://www.cqham.ru/forum/showthread.php?t=9688 , но у него дисплей с SPI интерфейсом плюс одна доп. нога сброса ...

Других примеров не нашёл, натыкался на буржуйских сайтах на исходники под какие-то STM32, но не смотрел их, толку с них, там всё равно управление портом другое. А сишные алгоритмы типа нарисовать линию и пр. везде одинаковые, хоть под Core i5 их скомпилируй ..
У меня даже заливка цветом не получается. И точку поставить не могу.

Кто может, гляньте пожалуйста, может у меня уже "глаз замылился", бревна какого-нибудь не заметил rolleyes.gif .
Полный проект для IAR приложил.

Спасибо.
Эскизы прикрепленных изображений
Прикрепленное изображение
 

Прикрепленные файлы
Прикрепленный файл  IAR_AT91SAM7S256.ZIP ( 513.58 килобайт ) Кол-во скачиваний: 9
Прикрепленный файл  M32_ILI9320.ZIP ( 24.96 килобайт ) Кол-во скачиваний: 9
 


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 14)
RabidRabbit
сообщение Oct 29 2012, 13:10
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



мож вот это? (ILI9320lib.c)
#define LCD_DATA_BITS (AT91C_PIO_PA16 | AT91C_PIO_PA17 | AT91C_PIO_PA18 | AT91C_PIO_PA19 | \
AT91C_PIO_PA20 | AT91C_PIO_PA21 | AT91C_PIO_PA22 | AT91C_PIO_PA23 | \
AT91C_PIO_PA24 | AT91C_PIO_PA25 | AT91C_PIO_PA25 | AT91C_PIO_PA27 | \
AT91C_PIO_PA28 | AT91C_PIO_PA29 | AT91C_PIO_PA30 | AT91C_PIO_PA31 )
Go to the top of the page
 
+Quote Post
hd44780
сообщение Oct 29 2012, 13:34
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(RabidRabbit @ Oct 29 2012, 15:10) *
мож вот это? (ILI9320lib.c)


Да мож .... Нога PA26 вообще нигде не конфигурировалась никак sm.gif Очепятка, блин. Спасибо.
Ещё одна возможная причина:
// nCS=0, RS=0
LCD_TARGET_PORT_C = LCD_CS_BIT | LCD_RS_BIT;

Одновременое выставление CS и других сигналов... И другие родственные вещи там есть..
Дома вечером проверю и отпишусь.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
hd44780
сообщение Oct 29 2012, 17:35
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Заработал sm.gif

Тормозит правда, но это я где-то с задержками перестарался sm.gif ....
Задержки, видимо придётся делать на nop-ах и холостых циклах.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
RabidRabbit
сообщение Oct 29 2012, 17:43
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



Отлично! sm.gif Я вот всё никак до 240х64 монохромного не доберусь wink.gif Да, если нужен исходник для HD44780 для 4-битного режима (для SAM7S), могу прислать, только он на ассемблере.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Oct 29 2012, 19:10
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(RabidRabbit @ Oct 29 2012, 19:43) *
если нужен исходник для HD44780 для 4-битного режима (для SAM7S), могу прислать, только он на ассемблере.


Спасибо, пришлите. Гляну на этот ассемблер, я его и в глаза ещё не видел ...
Я с этим 4-битником на дисплее 20x4 неделю корячился, потом достал он меня, сделал на 8-битном, он сразу заработал rolleyes.gif

Задержки поправил.
Часики заработали sm.gif


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
RabidRabbit
сообщение Oct 30 2012, 05:57
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



Вот (задержки для частоты процессора 55 МГц).
Прикрепленные файлы
Прикрепленный файл  lcd_hd44780_sam7s.7z ( 2.36 килобайт ) Кол-во скачиваний: 7
 
Go to the top of the page
 
+Quote Post
hd44780
сообщение Oct 30 2012, 09:13
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Спасибо.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Oct 30 2012, 18:58
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата
Смотрел проект Геннадия

В том же проекте есть функции задержки (на циклах) - приблизительно откалиброваных для известной частоты процесссора.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Oct 31 2012, 08:44
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(Genadi Zawidowski @ Oct 30 2012, 20:58) *
В том же проекте есть функции задержки (на циклах) - приблизительно откалиброваных для известной частоты процесссора.


Ага, гляну.
Я пока занялся остальной частью схемы rolleyes.gif .


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Memento Mori
сообщение Nov 2 2012, 21:52
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 151
Регистрация: 1-10-12
Пользователь №: 73 751



Автор, открою Вам маленький секрет. Выбранный Вами камень не даст вам преимущества в скорости выведения на экран.
Да, контроллер более быстрый, но погуглите на предмет скорости ногодрыганья. AVR у него чуть ли не выигрывает.

Либо дисплей с SPI и контроллер с быстрым SPI. Либо взять STM32F2, если хотите ногодрыганьем дисплей окучивать.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Nov 3 2012, 10:52
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Скажу честно, и в режиме с SPI этот дисплей тоже не крут.
12 мегабит SPI, без учёта пауз - 16 бит на пиксель (8-битного режима нет). Экран 320*240 заполняется минимум за 0.1 секунды. Это теоретически или если по DMA ему скармливать буфер. В реальности стирание экрана 0.2 секунды займёт.


Сообщение отредактировал Genadi Zawidowski - Nov 3 2012, 10:58
Go to the top of the page
 
+Quote Post
Memento Mori
сообщение Nov 3 2012, 20:26
Сообщение #13


Частый гость
**

Группа: Участник
Сообщений: 151
Регистрация: 1-10-12
Пользователь №: 73 751



А сколько займет стирание экрана в 8-битном режиме на AVR при 10 МГц?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Nov 4 2012, 01:26
Сообщение #14


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(Memento Mori @ Nov 4 2012, 00:26) *
А сколько займет стирание экрана в 8-битном режиме на AVR при 10 МГц?

У этого видеоконтроллера нет 8-битного режима.
10 МГц на AVR - это 5 МГц SPI. Четверть секунды - теоретический предел. В реальности до 0.3..0.4. Если бы был 8 битный режим - 0.13 секунды минимум. Но такого режима нет.

Сообщение отредактировал Genadi Zawidowski - Nov 4 2012, 01:28
Go to the top of the page
 
+Quote Post
Memento Mori
сообщение Nov 4 2012, 06:26
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 151
Регистрация: 1-10-12
Пользователь №: 73 751



Я имел в виду, если использовать параллельный интерфейс. У меня лежит китайская плата, там ставишь перемычку и режим становится 8битным. ТОлько не экран включается в этот режим, а старшие и младшие 8 бит какой-то логической микрой хитро коммутируются.

Другими словами, если дрыгать ногами на AVR в параллельном режиме или работать по SPI - что быстрее получится?
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 21:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01495 секунд с 7
ELECTRONIX ©2004-2016