Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: TE-LPC2478LCD
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Shread
Приветствую!

Есть у кого-нибудь копия диска, идущего в комплекте с этим набором?
Хотели купить просто кит, но в наличии нигде нет.
etoja
Есть информация по Embedded Artists LPC2478.
http://slil.ru/28554198
Shread
Цитата(etoja @ Jan 27 2010, 11:23) *
Есть информация по Embedded Artists LPC2478.
http://slil.ru/28554198

Ее уже с ftp взял, спасибо.
sherr
Вот кое-что увы код написан отвратно и крайне слабо комментирован ссылка
Shread
Спасибо!

Ну воопщем получили сегодня эту платку... впечатления... (ой черт зеленого смайлика с ведерком нету...)
Воопщем, видимо правду говорят, что отладочные платы в России разрабатывают люди, которые просто готовое изделие сделать до конца не в состоянии...
Воопщем непонятно за что плачены деньги. Думалось что будет быстрый старт, а в исходниках есть только работа с жк и более ничего... По телефону сказали что есть какая-то еще прога, но что и где и как... Воопщем минус в репутацию разработчикам...
Nick Nickl's
Есть диск от нее, ничего там правда хорошего, схема в DWG и PDF, PDF ы на все комплектующие. Есть пример прграммы для IAR с инициализацией диплея и SDRAM. Драйвер FTDI. DWGTrueViev видимо чтобы схему посмотреть. FlashMagic и IAR V5.20. И какието тесты в виде HEX файла.
Все в куче 435 мег. Если что нужно пришлю. Или завтра в инет выложу в виде архива и дам ссылку.
Брал одну из первых. Кстати они исправили свою ошибку с АЦП или так и продают с неработающим тачскрином ?
Зайцев Иван
заказывал
Тачскрин работает
Dr.NoA
Цитата(Nick Nickl's @ Feb 2 2010, 23:19) *
Брал одну из первых. Кстати они исправили свою ошибку с АЦП или так и продают с неработающим тачскрином ?

Не знаю о каком именно ките Вы говорите и какую ошибку АЦП имеете в виду, но у меня TE-LPC2478LCD5.6, на которой по сигналам от тачскрина идет помеха частотой около 10 кГц. В итоге показания тачскрина сильно "дергаются". Я с этой проблемой особо не разбирался, поскольку сейчас нет необходимости в тачскрине, но мне просто интересно как другие решают этот вопрос.
VVS_2009
В прикрепленном файле лежит пример работы платы TE-LPC2478 с платой TE-ADS1241.
Вывод на экран измерений, выбор канала АЦП и коэффициента усиления, работа и калибровка тачскрина.
Проект под ECLIPSE.
Dr.NoA
Цитата(VVS_2009 @ Feb 3 2010, 16:24) *
В прикрепленном файле лежит пример работы платы TE-LPC2478 с платой TE-ADS1241.
Вывод на экран измерений, выбор канала АЦП и коэффициента усиления, работа и калибровка тачскрина.

И в каком же месте там калибровка и работа с тачскрином?
Nick Nickl's
Vref небыл никуда не подключен. Я обсуждал это с ними в коференции на сайте терры. Ониже там и признались в ошибке. http://www.terraelectronica.ru/board/index...=1306&st=38. Про 10кгц не знал. Но на лицо есть помеха. По горизонтали ее так и не отфильтровал, но для тыканья в крупные кнопки не мешает.
Shread
Цитата(VVS_2009 @ Feb 3 2010, 16:24) *
В прикрепленном файле лежит пример работы платы TE-LPC2478 с платой TE-ADS1241.
Вывод на экран измерений, выбор канала АЦП и коэффициента усиления, работа и калибровка тачскрина.
Проект под ECLIPSE.

Абалдительное применение для прецизионного ацп. Просто слов нет! По воробьям не то что из пушки, а сразу баллистической ракетой...
Shread
Воопщем пол дня пытаемся запустить NOR внешнюю- дохлый номер. На нашем диске вообще никаких примеров по работе с ней нет, даже тестовых, а вот на том диске что в этой теме выкладывали выше есть вот такой пример: I520_SBCL2478P100_SDRAMFLASH.hex(смотрите аттач)
Результат выполнения этой проги валит в терминал:
Цитата
**********Terraelectronica**********
Board: SBC_L2478_Axxx
************************************
TestSystem:
TEST INTERRUPT OK!
TEST SDRAM ... TEST SDRAM OK!
TEST FLASH ...
Manufacturer Code:
00FF
Device Code:
FFFF
TEST NOR FLASH FAILD!


Сами пытались кое-что с нуля запустить, закончилось так же чтением кода производителя 0x00FF и кода девайса 0xFFFF.
Воопщем не отладка а садо-маза какая-то выходит...
Shread
У кого-то вообще в принципе на этой плате работает внешняя NOR флеш?
Nick Nickl's
Да работает. Я туда экранную заставку запихнул.
Уже не помню где взял код, кажется из примеров IAR


//------------------------------------------------------------------------------

#define NOR_FLASH_SIZE 0x00400000 // M29DW323DT, 32Mbit(2M x 16 bit).
#define NOR_FLASH_BASE 0x80000000 // 0x8000 0000 - 0x803F FFFF NOR FLASH

#define GET_ADDR(addr) (volatile WORD *)(NOR_FLASH_BASE | (addr<<1))

//#define SECTOR_SIZE 0x800 /* Must be 2048 ??? words for M29DW323D */
#define BLOCK_SIZE 0x10000 /* Must be 64K words for M29DW323D */

//#define SST_ID 0xBF /* SST Manufacturer's ID code */
//#define SST_39VF160 0x234B /* SST 39VF160 device code */

#define SST_ID 0x20 /* SST Manufacturer's ID code */
#define SST_M29DW323D 0x225F /* SST M29DW323DB device code */

#define PROGRAM_TIMEOUT 0x08000000

extern void NORFLASHInit( void );
extern void NORFLASHErase( void );
extern DWORD NORFLASHCheckID( void );
extern DWORD NORFLASHWriteWord( DWORD Addr, WORD Data );
extern DWORD ToggleBitCheck( DWORD Addr, WORD Data );


/*****************************************************************************
** Function name: NORFLASHInit
**
** Descriptions: initialize external NOR FLASH memory
**
** parameters: None
**
** Returned value: None
**
*****************************************************************************/

void NORFLASHInit( void )
{
// **************************************************************************
// * Initialize EMC for NOR FLASH
// **************************************************************************
EMC_CTRL = 0x00000001;

PCONP |= 0x00000800; // Turn On EMC PCLK
PINSEL4 = 0x50000000;
PINSEL5 = 0x05050555;
PINSEL6 = 0x55555555;
PINSEL8 = 0x55555555;
PINSEL9 = 0x50555555;

delayMs(1, 100); // use timer 1
EMC_STA_CFG0 = 0x00000081;
EMC_STA_WAITWEN0 = 0x2;
EMC_STA_WAITOEN0 = 0x2;
EMC_STA_WAITRD0 = 0x1f;
EMC_STA_WAITPAGE0 = 0x1f;
EMC_STA_WAITWR0 = 0x1f;
EMC_STA_WAITTURN0 = 0xf;
delayMs(1, 10); // use timer 1
return;
}

/*****************************************************************************
** Function name: ToggleBitCheck
**
** Descriptions: Toggle Bit check if the data is written or erased
**
** parameters: Address and Expected data
**
** Returned value: done(TRUE) or timeout(FALSE)
**
*****************************************************************************/
DWORD ToggleBitCheck( DWORD Addr, WORD Data )
{
volatile WORD *ip;
WORD temp1, temp2;
DWORD TimeOut = PROGRAM_TIMEOUT;

while( TimeOut > 0 )
{
ip = GET_ADDR(Addr);
temp1 = *ip;
ip = GET_ADDR(Addr);
temp2 = *ip;

if ( (temp1 == temp2) && (temp1 == Data) )
{
return( TRUE );
}
TimeOut--;
}
return ( FALSE );
}

/*****************************************************************************
** Function name: NORFLASHCheckID
**
** Descriptions: Check ID from external NOR FLASH memory
**
** parameters: None
**
** Returned value: Flash ID read is correct or not
**
*****************************************************************************/
DWORD NORFLASHCheckID( void )
{
volatile WORD *ip;
WORD SST_id1, SST_id2;

/* Issue the Software Product ID code to 39VF160 */
ip = GET_ADDR(0x5555);
*ip = 0x00AA;
ip = GET_ADDR(0x2AAA);
*ip = 0x0055;
ip = GET_ADDR(0x5555);
*ip = 0x0090;
delay(10);

/* Read the product ID from 39VF160 */
ip = GET_ADDR(0x0000);
SST_id1 = *ip & 0x00FF;
ip = GET_ADDR(0x0001);
SST_id2 = *ip;

/* Issue the Soffware Product ID Exit code thus returning the 39VF160 */
/* to the read operating mode */
ip = GET_ADDR(0x5555);
*ip = 0x00AA;
ip = GET_ADDR(0x2AAA);
*ip = 0x0055;
ip = GET_ADDR(0x5555);
*ip = 0x00F0;
delay(10);

/* Check ID */
if ((SST_id1 == SST_ID) && (SST_id2 ==SST_M29DW323D))
return( TRUE );
else
return( FALSE );
}

/*****************************************************************************
** Function name: NORFLASHErase
**
** Descriptions: Erase external NOR FLASH memory
**
** parameters: None
**
** Returned value: None
**
*****************************************************************************/
void delayMs(U32 delayInMs);
void NORFLASHErase( void )
{
volatile WORD *ip;

ip = GET_ADDR(0x5555);
*ip = 0x00AA;
ip = GET_ADDR(0x2AAA);
*ip = 0x0055;
ip = GET_ADDR(0x5555);
*ip = 0x0080;
ip = GET_ADDR(0x5555);
*ip = 0x00AA;
ip = GET_ADDR(0x2AAA);
*ip = 0x0055;
ip = GET_ADDR(0x5555);
*ip = 0x0010;
delayMs(100); /* Use timer 1 */
return;

}

/*****************************************************************************
** Function name: NORFLASHWriteWord
**
** Descriptions: Program one 16-bit data into external NOR FLASH memory
** This "WORD" for the external flash is 16 bits!!!
**
** parameters: DWORD address and WORD data
**
** Returned value: Written successful or not
**
*****************************************************************************/
DWORD NORFLASHWriteWord( DWORD Addr, WORD Data )
{
volatile WORD *ip;

ip = GET_ADDR(0x5555);
*ip = 0x00AA;
ip = GET_ADDR(0x2aaa);
*ip = 0x0055;
ip = GET_ADDR(0x5555);
*ip = 0x00A0;

ip = GET_ADDR(Addr); /* Program 16-bit word */
*ip = Data;
return ( ToggleBitCheck( Addr, Data ) );
}

/********************************************************************************
*
** End Of File
********************************************************************************
*/
Shread
Цитата(Nick Nickl's @ Feb 5 2010, 10:39) *
Да работает. Я туда экранную заставку запихнул.
Уже не помню где взял код, кажется из примеров IAR

Спасибо! А если не секрет, как вы в эту флешку засовываете заставку саму?
Nick Nickl's
Не секрет. Сгенерил двоичный файл на SD/MMC и от туда переписываю в NOR. Пришлось еще прикуртить библиотеку с FAT32 и работу с MCI. В общем с миру по нитке. Пользовательский интерфейс сдлал из microwindows. Чтобы все совестить с scmRTOS, ну и вобще потом чтобы не мучатся все перелопатил на С++. Все сырое, но работает. Могу скинуть проект. Мне не жалко. На Visual C++ сделал имитатор системы и пользовательский интерфейс microwindows можно тестировать на обычном компе.
Shread
Поправили свою прогу по образу и подобию вашей- чуда не произошло=(
Если есть платка под руками и есть такая возможность - попробуйте прошить приложенный к этому посту hex в свою платку- прога должна в две строки на экране выводить айдишники флешки и еще тот пример, который был выше. Есть подозрение что на нашем образце производители не утруждали себя тестированием NOR вообще crying.gif
Nick Nickl's
Чем залить можно через JLink ваш HEX файл. Segger овский лоадер лицензию вымогает ...
LPC2000 Flash utility тоже с этой платой похоже не дружит.
Shread
Цитата(Nick Nickl's @ Feb 5 2010, 13:23) *
Чем залить можно через JLink ваш HEX файл. Segger овский лоадер лицензию вымогает ...
LPC2000 Flash utility тоже с этой платой похоже не дружит.

FlashMagic через виртуальный комп порт, тот что на FT232RL сделан заливается на раз. А так через J-link при помощи JFlash. Если первым вариантом будут какие-то проблемы, то в личку адрес эл.почты пиши.

Кстати попробовал прошить плату через J-link через J-flash, в режиме авто не находит чип внешней памяти. В режиме, когда четко указываешь тип внешней памяти говорит что ID внешней памяти не тот что нужно, и что вместо 0x20225F имеет ID 0xFFFFFF.
Shread
Ну что я могу сказать..... прое... шись два дня над запуском флешки на это "сочной" отладочной плате... уже практически отчаявшись решил отпаять флешку и посмотреть что происходит под ней, отпаял, поглядел и припаял на место... и о чудо... заработала прога, которую написали для теста и тут же начало всё отлично шиться через J-link.

Итого - не жалейте денег, не покупайте это Г... но отечественного производства!!! Время- дороже!
sherr
Цитата
Не секрет. Сгенерил двоичный файл на SD/MMC и от туда переписываю в NOR. Пришлось еще прикуртить библиотеку с FAT32 и работу с MCI.

Скиньте проектик, пожалуйста, желательно и ранний вариант без С++
Nick Nickl's
увы раннего нету тока этот: http://79.143.76.226/files/TE-LPC2478LCD56.zip
Nick Nickl's
Для отладки интерфейса можно использовать вот это: http://79.143.76.226/files/GFX_device_test.zip
sherr
Спасибо, попробую rolleyes.gif
Terraelectronica
Модулей TE-LPC2478LCD5.6 произведено немало, опытные заказчики закупают партии. Мы проверяем продукцию, но иногда дефект проявляется после проверки, это гарантийный случай.

Если у вас по каким-то причинам не заработала та или иная периферия, звоните, пишите в техническую поддержку support@terraelectronica.ru. На данный момент "детские болезни" схемы и топологии выявлены при эксплуатации и устранены.

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

Об отечественных средствах: технически сложные изделия и у ведущих мировых производителей вначале сопровождаются документами типа Errata. Наш модуль имеет оптимальное соотношение себестоимости и функционала по сравнению с зарубежными аналогами. Отличительная особенность – наличие основных интерфейсов коммутации (SDCARD, CAN, UART, USBdevice, USBHost, Ethernet), доступность всех выводов микроконтроллера, наличие 5.6 LCD 15бит (обновление экрана 15Гц), память SDRAM 32MB и NORFLASH 4MB. Микроконтроллер LPC2478 является уникальным среди семейства ARM7 в виду развитой периферии и LCD-контроллера, EMC-контроллера внешней памяти.
Romanello
Здравтсуйте.

А можно ли куда нибудь скинуть схему от этого чуда?
VVS_2009
Исходные тексты работы сенсорного экрана и его калибровки:
Проект под IAR: Нажмите для просмотра прикрепленного файла
Под GCC: Нажмите для просмотра прикрепленного файла

Схема TE-LPC2478LCD56:
Нажмите для просмотра прикрепленного файла
VVS_2009
На сайте Терраэлектроника стал доступен для скачивания проект показывающий работу стека протоколов TCP/IP и проверку работы порта Ethernet на плате TE-LPC2478LCD56.
Проект работает под FreeRTOS.
Ссылки доступны на странице описания платы TE-LPC2478LCD56.
Pniiis
Nick Nickl's , спасибо за архив TE-LPC2478LCD56.zip, очень помогает. У меня в наличии модуль TE-LPC2478LCD3.5. немного переделал Init_LCD_controller по примеру терроэлектроники, экран заработал. Теперь не получается сенсорный экран. Понимаю, что подключен он к другим пинам, а именно P0_24 стал P2_30, P3_29 стал P0_12, P0_26 стал P4_23, P3_28 стал P1_31, при соответствующей замене кода реагирует только на нажатие, т.е. acZp=1, либо 0 когда нажат экран, с координатами беда. Если не трудно, объясните как переписать строку FIO3DIR=(FIO3DIR&~((1<<29)|(1<<28)))|(1<<28);
swisst
Цитата(Pniiis @ Jul 5 2010, 15:03) *
Если не трудно, объясните как переписать строку FIO3DIR=(FIO3DIR&~((1<<29)|(1<<28)))|(1<<28);


хоть я и не в теме, но предположу, что таким образом (FIO3DIR=(FIO3DIR&~((1<<29)|(1<<28)))|(1<<28)wink.gif сбрасываются в ноль пины №29, №28 и опять №28 (это в приведенной Вами строке, может быть там 26-й должен быть) порта FIO3DIR. Вам надо сделать по аналогии.
diglook
Цитата
У меня в наличии модуль TE-LPC2478LCD3.5. немного переделал Init_LCD_controller по примеру терроэлектроники, экран заработал. Теперь не получается сенсорный экран. Понимаю, что подключен он к другим пинам, а именно P0_24 стал P2_30, P3_29 стал P0_12, P0_26 стал P4_23, P3_28 стал P1_31,

Нет под руками схемы TE-LPC2478LCD3.5, но что-то с вашей схемой не так! на этих портах ТАЧ работать небудет(ИМХО) посмотрите внимательней!
А вообще я переделал тач по схеме IAR_LPC2478_STK. Тогда все ИАРовские и некотороые другие примеры работают(только рихтануть)
Pniiis
Схемы подключения согласно документации
1 TE-LPC2478LCD56


2 TE-LPC2478LCD35


Цитата
А вообще я переделал тач по схеме IAR_LPC2478_STK

diqlook, это с используя drv_touch_scr.c ?


diglook
QUOTE
diqlook, это с используя drv_touch_scr.c ?

Я не понял о чем Вы, вот фрагмент схемы по которой я переподключил(проводочкамии еще одним разьемом)

при таком подключении PowerPakовские приеры должны запустится без переделок(графика и тач),
тоже самое порт от uCOS Micrum.по вашей схеме придется перелопатить код
Dvoe4Nik
Может у кого-то получилось прошить внешнюю флэш M29DW323DB через JTAG? Пробовал J-Link-ом через программу J-Flash - не опознается флэшка, и все тут.
Да, сама флэш исправна, через последовательный порт шьется нормально, но очень медленно. Хотелось бы побыстрее rolleyes.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.