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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> cy7c68013 и EEPROM, как очистить
torik
сообщение Mar 1 2006, 08:57
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Всем привет!
Пока программу писал, прогу заливал не в еепром, а прямо в ОЗУ (использую отладочный комплект). Теперь хочу записать программу в еепром 64 кБайт. Возникла проблема - однажды я туда уже записывал прогу и все работало. После того как записал по новой - не работает, неизвестное устройство и все.

Может надо сперва стереть епром. Как это сделать? И какие еще могут быть камни тут?


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 09:23
Сообщение #2


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Стерается еепром очень просто, пишется программа которая ее стерает и записывается в озу.

А камни следующие могут быть не правельный VID/PID, не правельный формат EEPROM, не работает программа, не правельный тип EEPROM.


И еще, програма которая стартует из EPPROM должна быть переконвертина в загурузочный формат, тоесть смысл в том что если взять программу и тупо записать в еепром то она естестно работать не будет

Сообщение отредактировал MALLOY2 - Mar 1 2006, 09:26
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 09:33
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Енто вот:
- прога работает когда в ОЗУ пишу
- види и пид теже само сабой
- компилирую ясен фиг и создаю файл для записи именно вепромм - не хекс же заливаю.

А если не стирать, а перезаписывать - то не должно быть проблем?


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 09:58
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Блин - еще, как поглядеть какие вункции есть в библиотеке ezusb.lib? Чото я так быстро сообразить как стереть епромку программно не соображу

Сообщение отредактировал torik - Mar 1 2006, 10:03


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 10:12
Сообщение #5


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Чем файл для еепром создаеш ?

Вот кусок кода для стирания



/******************************************************************************
* == EEPROMWrite ==
*
* PARAMETERS: addr- адресс в EEPROM; value - значение
* DESCRIPTION: Записыывает байт в EEPROM
* RETURNS: none
*
* MODIFIED:
* DATE: 16.07.2005
******************************************************************************/
void EEPROMWriteByte(WORD addr, BYTE value)
{
BYTE i = 0;
BYTE xdata ee_str[3];
if(DB_Addr)ee_str[i++] = MSB(addr);
ee_str[i++] = LSB(addr);
ee_str[i++] = value;
EZUSB_WriteI2C(I2C_Addr, i, ee_str);
EZUSB_WaitForEEPROMWrite(I2C_Addr);
}
/******************************************************************************
* == EEPROMWrite ==
*
* PARAMETERS: addr- начальный адресс в EEPROM; length - длинна буфера; buf - указатель нга буффер
* DESCRIPTION: Записывает в EEPROM данные из буфера
* RETURNS:
*
* MODIFIED:
* DATE: 16.07.2005
******************************************************************************/
void EEPROMWrite(WORD addr, BYTE length, BYTE xdata *buf)
{
unsigned char i;
for(i=0;i<length;++i)
EEPROMWriteByte(addr++,buf[i]);
}
/******************************************************************************
* == EEPROMRead ==
*
* PARAMETERS: addr- начальный адресс в EEPROM; length - длинна буфера; buf - указатель нга буфер
* DESCRIPTION: читает в буфер данные из EEPROM
* RETURNS: none
*
* MODIFIED:
* DATE: 16.07.2005
******************************************************************************/
void EEPROMRead(unsigned int addr, unsigned int length, unsigned char xdata *buf)
{
unsigned char i = 0;
unsigned char j = 0;
unsigned char xdata ee_str[2];

if(DB_Addr) ee_str[i++] = MSB(addr);
ee_str[i++] = LSB(addr);
EZUSB_WriteI2C(I2C_Addr, i, ee_str);
EZUSB_ReadI2C(I2C_Addr, length, buf);
}




это кудато вставиш

for (i=0;i<16;i++) EEPROMWriteByte(i,0xFF); //записывает в первые 16 адресов значение 0xFF
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 10:30
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Файл создаю в компиляторе опцией
c:\cypress\usb\bin\hex2bix -i -f 0xC2 -o bulkext.iic bulkext.hex

Пробовал залить тот который уже работал раньше - уже не хочет

Гы))) Появляется неизвестное устройство - хотю ему драйвер поставить, указываю инфу CyUsb.inf. Он говорит нет тут сведений. А монитором смотрю - процедуру перенумерации не прошел пишет. Этот драйвер устанавливал, когда в ОЗУ заливал - все работало............... Чо бы это было?

Сообщение отредактировал torik - Mar 1 2006, 10:38


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 10:53
Сообщение #7


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



значит муссор в еепром, подыми вывод DATA еепромины
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 11:15
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



т.е. надо ее всю очистить? Как очистить фрагмент - ясно - записывать нули, но скакого по какой адрес?
Адресация то в пределах байта, анадо 64 кБайт стереть

Сообщение отредактировал torik - Mar 1 2006, 11:23


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 11:37
Сообщение #9


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



адресация вобщето WORD, но это не столь важно главное стереть первых 8 байт там хранится VID/PID и признак загрузки с еепром.


Да и еще ты утилитой не правельно пользуешся, там еще надо задать VID/PID и опции

Сообщение отредактировал MALLOY2 - Mar 1 2006, 11:40
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 11:49
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Подскажите, как задать правильно опции? Раньше я делал с таукими опциями и все было нормуль. Правда ща я перешел на кейл 8.01. А обязательно стирать то первые 8 байт? он их разве не перепишет сам?


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 11:55
Сообщение #11


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



НЕ подскажу так как эти сам неуогда непользовался у меня прога с компа всегда загружается, фича такая в дрова встроенная(дрова сами делали т.к. у ципреса олни глючные).

НЕ перепишет так как вы даже в ОЗУ ничего залить не можете потомучто драйфер девайс найти не может, так как по включению вычитывает из еепром мусор. Выход выпаять память и стереть программатором. Вариань 2 поднять ногу DATA залить в ОЗУ прогу программу стирания, НЕ ОТКЛЮЧАЯ питания припаять ногу DATA на место и дать команду стереть но это вы делаете на свой страх и риск.
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 12:03
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Спасибо, попробую стереть. Но всеже мы не совсем друг друга поняли - мне не надо ничего паять чтобы записать прогу в ОЗУ - на демоплате можно отключить и епром переключателем, а программера нету 8(((.

Я думал, что когда с помощью отладочного комплекта заливаю программу в еепром - она должна как бы обновиться, разве нет?


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 12:10
Сообщение #13


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Должна и будет, но если формат не правельный или ошибку в PID/VID скажем сделаеш то это равносильно пилить ветку подсобой
Go to the top of the page
 
+Quote Post
torik
сообщение Mar 1 2006, 12:38
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Значит я неправильно откорректировал файл CyUsb.inf
Скажите как его прально откоректировать?


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
MALLOY2
сообщение Mar 1 2006, 12:44
Сообщение #15


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Этого я незнаю, я занимаюсь только железом.
Go to the top of the page
 
+Quote Post

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

 


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


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