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

 
 
 
Reply to this topicStart new topic
> LPC2478 подлючение TFT
yarunt
сообщение Oct 13 2010, 14:59
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Есть LPC2478 но пока нет дисплея, после инициализации железа, на цвет 565 и 320*240 пытаюсь померить хоть какие нибудь импульсы строчные и кадровые, полный ноль . Вот сам вопрос ,может дисплей должен генерировать сам синхронизацию для контроллера,если да то на какие входы LPC их подавать?


--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post
SergeyDDD
сообщение Oct 13 2010, 15:13
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 231
Регистрация: 7-12-06
Из: Киев
Пользователь №: 23 248



Цитата(yarunt @ Oct 13 2010, 17:59) *
Есть LPC2478 но пока нет дисплея, после инициализации железа, на цвет 565 и 320*240 пытаюсь померить хоть какие нибудь импульсы строчные и кадровые, полный ноль . Вот сам вопрос ,может дисплей должен генерировать сам синхронизацию для контроллера,если да то на какие входы LPC их подавать?


дисплей это полностью ведомое устройство и не генерит никаких сигналов

Вы порты настроили для работы с TFT?
Go to the top of the page
 
+Quote Post
yarunt
сообщение Oct 13 2010, 15:43
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Цитата(SergeyDDD @ Oct 13 2010, 18:13) *
дисплей это полностью ведомое устройство и не генерит никаких сигналов

Вы порты настроили для работы с TFT?

Да,есть даже три варианта кода , пользую кеил, в симуляторе пин-коннект показывает правильное подключение.


--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post
SPACUM
сообщение Oct 13 2010, 17:31
Сообщение #4


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

Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531



1. А память внешняя есть? И сколько? Если есть пишите в личку скину рабочий HEX c инициализацией.
Наверное и без внешней памяти импульсы будут. Кейл не использую.
2. А так самое тяжелое распаять разъем для шлейфа.
КТЦ-МК продавала ТФТ со своим шлейфом шагом 2.5мм. Я не покупал.



--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
Go to the top of the page
 
+Quote Post
yarunt
сообщение Oct 13 2010, 18:39
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Цитата(SPACUM @ Oct 13 2010, 20:31) *
1. А память внешняя есть? И сколько? Если есть пишите в личку скину рабочий HEX c инициализацией.
Наверное и без внешней памяти импульсы будут. Кейл не использую.
2. А так самое тяжелое распаять разъем для шлейфа.
КТЦ-МК продавала ТФТ со своим шлейфом шагом 2.5мм. Я не покупал.

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


--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post
SPACUM
сообщение Oct 14 2010, 04:50
Сообщение #6


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

Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531



Цитата(yarunt @ Oct 13 2010, 22:39) *
закоментил включая стартап

Стартап нельзя комментить, там инициализация стеков, запуск прерываний, без PLL Ваш процессор работает на частоте 12 МГц ни один дисплей не запустится.
Я работаю в Rowley CrossWorks, у Кейла другие имена каждого регистра и другой вход в прерывания.
Выбор среды программирования не очень важен, разница в пределах наглости рекламы, но если уже что-то написано менять среду неприятно.
Вам надо найти любой рабочий проект в любой среде программирования и постепенно модифицировать его под себя.
Сначала напишите обмен через COM чтобы через терминал управлять процессором и чтобы он сообщал Вам о своих проблемах.
Не бойтесь убить процессор - он очень живучий.


--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
Go to the top of the page
 
+Quote Post
yarunt
сообщение Oct 14 2010, 11:32
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Цитата(SPACUM @ Oct 14 2010, 07:50) *
Стартап нельзя комментить, там инициализация стеков, запуск прерываний, без PLL Ваш процессор работает на частоте 12 МГц ни один дисплей не запустится.
Я работаю в Rowley CrossWorks, у Кейла другие имена каждого регистра и другой вход в прерывания.
Выбор среды программирования не очень важен, разница в пределах наглости рекламы, но если уже что-то написано менять среду неприятно.
Вам надо найти любой рабочий проект в любой среде программирования и постепенно модифицировать его под себя.
Сначала напишите обмен через COM чтобы через терминал управлять процессором и чтобы он сообщал Вам о своих проблемах.
Не бойтесь убить процессор - он очень живучий.

Разобрался в чем проблема,почему то не стартует мк после прошивки. Когда передергиваю питание запускается тактирование пикселей ,строчной и кадровой развертки нет. Нашел хекс с отладочной TE-LCD5.6 и он работает. А код нет,может еще что-то нужно добавить?

Код
void LCD_Initialize(){

#define  LCD_BUFFER0_BASE_ADDR 0x1000
  long i=0;
  static long _lcd_buffer = LCD_BUFFER0_BASE_ADDR;

  LCD_CFG = 0 << LCD_CFG_CLKDIV;
  LCD_TIMH = (134 << LCD_TIMH_HBP) | (16 << LCD_TIMH_HFP) |
    (10 << LCD_TIMH_HSW) | ((640 / 16 - 1) << LCD_TIMH_PPL);
  LCD_TIMV = (11 << LCD_TIMV_VBP) | (32 << LCD_TIMV_VFP) |
    (2 << LCD_TIMV_VSW) | (480 << LCD_TIMV_LPP);
  LCD_POL = (0 << LCD_POL_PCD_HI) | (0 << LCD_POL_BCD) |
    ((640 / 1 - 1) << LCD_POL_CPL) | (0 << LCD_POL_IOE) | (0 << LCD_POL_IPC) |
    (1 << LCD_POL_IHS) | (1 << LCD_POL_IVS) | (0 << LCD_POL_ACB) |
    (0 << LCD_POL_CLKSEL) | (2 << LCD_POL_PCD_LO);
  LCD_CTRL = (0 << LCD_CTRL_WATERMARK) | (0 << LCD_CTRL_LcdVComp) |
    (0 << LCD_CTRL_LcdPwr) | (0 << LCD_CTRL_BEPO) | (0 << LCD_CTRL_BEBO) |
    (1 << LCD_CTRL_BGR) | (0 << LCD_CTRL_LcdDual) | (0 << LCD_CTRL_LcdMono8) |
    (1 << LCD_CTRL_LcdTFT) | (0 << LCD_CTRL_LcdBW) | (6 << LCD_CTRL_LcdBpp) |
    (0 << LCD_CTRL_LcdEn);
  LCD_UPBASE = _lcd_buffer;
  LCD_LPBASE = _lcd_buffer;

  for(i = 0; i < 100000; i++);
  LCD_CTRL |= (1 << LCD_CTRL_LcdEn);
  for(i = 0; i < 100000; i++);
  LCD_CTRL |= (1 << LCD_CTRL_LcdPwr);

}



--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post
SPACUM
сообщение Oct 14 2010, 16:14
Сообщение #8


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

Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531



Цитата(yarunt @ Oct 14 2010, 15:32) *
может еще что-то нужно добавить?


1. В моем стартапе есть строки

reset_handler_address:
#ifdef STARTUP_FROM_RESET
.word reset_handler
#else
.word reset_wait
#endif

Так нужно вставить в начале строку
#define STARTUP_FROM_RESET

2, Нужно проверить, что после инициализации запускается main

3. А чем прошиваете? Устройство производит сброс после прошивки?
Мне как-то пришлось заменить резисторы в JTAGе чтобы сбрасывающий транзистор лучше открывался.


"#define LCD_BUFFER0_BASE_ADDR 0x1000" - ???
Наверное SRAM начинается с 0x40000000 и кончается 0x40005FFF, кроме экрана там еще должны быть переменные, стеки....

Сообщение отредактировал SPACUM - Oct 14 2010, 16:33


--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
Go to the top of the page
 
+Quote Post
yarunt
сообщение Oct 14 2010, 16:55
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Цитата(SPACUM @ Oct 14 2010, 19:14) *
"#define LCD_BUFFER0_BASE_ADDR 0x1000" - ???
Наверное SRAM начинается с 0x40000000 и кончается 0x40005FFF, кроме экрана там еще должны быть переменные, стеки....

Я понимаю просто думал мусор в порт дисплея таким методом выводить.
Во общем заработало, просто взял проект перелопатил в Кейл. Кадры и строки появились теперь разбираюсь с форматом развертки.
LCD_TIMH_HBP я так понял прямая длительность прорисовки строки, LCD_TIMH_HFP сдвигает картинку влево право, LCD_TIMH_HSW импульс синхронизации?

По поводу запуска, отлаживаю мт-линком, пошагово отладчик шагает , но на ножках ничего не происходит. Отладка получается невозможной так-как отладчик ругается на передернутое питание.


--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post
SPACUM
сообщение Oct 14 2010, 17:53
Сообщение #10


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

Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531



Цитата(yarunt @ Oct 14 2010, 20:55) *
отладчик ругается на передернутое питание.


Мне помогла строчка
#define STARTUP_FROM_RESET
тоже с выключения работал а с ресета от JTAGa нет.

Я использую JTAG через порт принтера и быстро и никаких проблем.

А с выходом на дисплей никаких проблем не было, устанавливал требуемый формат и все работало, чем выше частота кадров тем меньше дрожит картинка.

Сообщение отредактировал SPACUM - Oct 14 2010, 18:05


--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
Go to the top of the page
 
+Quote Post
yarunt
сообщение Oct 15 2010, 19:15
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 13-12-06
Из: fghgfh
Пользователь №: 23 476



Цитата(SPACUM @ Oct 14 2010, 20:53) *
Мне помогла строчка
#define STARTUP_FROM_RESET
тоже с выключения работал а с ресета от JTAGa нет.

Я использую JTAG через порт принтера и быстро и никаких проблем.

А с выходом на дисплей никаких проблем не было, устанавливал требуемый формат и все работало, чем выше частота кадров тем меньше дрожит картинка.

Разобрался почему не работает развертка, если адрес картинки ниже 0х80000000 то развертка уходит в ступор. А с подвисанием процессора была проблема в том что пин DBGEN не подтянул на землю.

Спасибо за помощь!


--------------------
Нельзя впихнуть,невпихуемое?МОЙ БЛОГ
Go to the top of the page
 
+Quote Post

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

 


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


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