Например TDA7294

 Форум РадиоКот • Просмотр темы - In vino veritas
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Вс дек 17, 2017 19:06:14



Часовой пояс: UTC + 3 часа [ Летнее время ]


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 442 ]  На страницу Пред.  1 ... 11, 12, 13, 14, 15, 16, 17 ... 23  След.
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 06:44:18 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
Помнится когда самопальный программатор для AT89C2051 делал там также нюянс был - задержка при начале обработки (уже подзабылось конкретика) - в даташитах похоже до сих пор не отмечено 8)
на стр.52 второй абзац снизу- оно? На след. стр. код приведен


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 07:13:26 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Имелась ввиду некоторая задержка при начальном этапе прошивки из внешнего программатора - вспоминать надо конкретику... Когда те 2051 появились еще программаторов готовых дешевых не имелось - воть и делалась управляюшша прожка по даташиту, а про задержку опыт да "народна молва" подсказали.
Базовые алгоритмы и по сей день "в запасниках" лежат (под тот же вышевыложенный в качестве примера садомазохизма "монструозо" с опторазвязкой изготовленные - кстати это последняя версия была, его прототипы где-то еще в середине 90-х помогали в работе, только схемки и прожки были на простобумаге - перечерчивать и влом и не слишком актуально).
8)


Вернуться наверх
 Профиль  
 
JLCPCB Prototype, Бесплатная доставка первого заказа + $2 на прототип ПП!

Крупнейший производитель печатных плат в Китае, 290,000+ заказчиков, 8,000+ он-лайн заказов в день.

Цена за 10 плат: $2 за 2-х слойную, $15 за 4-х слойную, $74 за 6-ти слойную.

LCSC Parts: Экономия до 50%, большой выбор компонентов в наличии, отправка заказа в день оплаты.

Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 08:56:06 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1027
Откуда: Баку
Рейтинг сообщения: 0
Бегло прошелся по вашим вопросам, вряд ли смогу что-то путное написать, т.к. разбирался с STC, не особо вгрызаясь в их нутро.
Потом отпишусь подробнее, сейчас напряг со временем.
Вот сюда гляньте пока.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 

Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 11:12:53 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Там народ СИ баловался, а я давить их (STCшки) на ассемблере буду.
8)
Пока займуся сооружением макетного "кубика" в уже ранее проработанном окружении дополнительных платок.
:write: :solder:


Вернуться наверх
 Профиль  
 

Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 11:46:54 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1027
Откуда: Баку
Рейтинг сообщения: 0
Я только первый пост тот темы имел в виду, как бы протокол ISP.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 12:07:57 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Меня более режимы самопрограммирования беспокоят...
Все же не использовать ЕЕПРОМку грех, а затереть по случаю загрузочную область - еще большая досада.
Протокол загрузки лишь косвенно - с точки зрения наличия минимального аварийного уровня для восстановления порушенной загрузочной записи. У АВРовских моделей для такого случая общее стирание и/или параллельный высоковольтный вариант имеется...
А у STC вроде ничего подобного официально не наблюдается...
Или же начальный загрузчик "пустышки" в виде примитива без особого обращения внимания у пользователя.
:dont_know:


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 13:26:07 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
такая плата не годится? Может что-то подходит из готовой программы?


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 13:42:17 
Друг Кота
Аватар пользователя

Карма: 342
Зарегистрирован: Сб сен 13, 2014 17:27:32
Сообщений: 13223
Откуда: СпиртоГонск созвездия Омега
Рейтинг сообщения: 0
помоему парится насчет этого не стоитну затрете бут случайно - прошьете потом в паралелном режиме скока биосоав убитых в 27 28 29 49чипах так перешито

_________________
-
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет...


Вернуться наверх
 Профиль WWW  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 14:34:11 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1027
Откуда: Баку
Рейтинг сообщения: 0
Я в программе часов (потом отказался) и паяльной станции использовал ЕЕПРОМ для хранения данных. Затереть что-то критичное ни разу не получалось.
По сути это не ЕЕПРОМ, а флэш, она перед использованием должна стираться блоками по 500 байт, коих в 204ЕА 2 штуки, т.е. всего 1к. В другую область из своей программы вы не влезете. Да и в ДШ есть типовые листинги стирания, чтения и записи, запутаться, особенно опытному кодеру, невозможно.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 15:58:26 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
помоему парится насчет этого не стоитну затрете бут случайно - прошьете потом в паралелном режиме скока биосоав убитых в 27 28 29 49чипах так перешито
сейчас таких нет, а современные UEFI программируются в 2 этапа с перезагрузкой и не всегда удачно


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 16:13:30 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Флаг iap_contr.iapen открывает доступ к обеим областям isp/iap т.е. результат зависит только от адреса в iap_addrh:iap_addrl.
Имея заявленные 4к памяти программ и 1к еепром из всего 6к ПЗУ теоретически в оставшееся пространство влезть вполне можно.
Тем более, что где-то в текстах мельком заметил образец бутлоадера для загрузки... (или обшибся/промерешшилося?).
Другое дело ежли блокировка в настройках компилятора (файл указаний линковки на запрет выхода из диапазона допустимых адресов) или еще лучше внутренними битами защиты в самом МК.
В отличии от СИ ассемблер штука жестокая, ежли сам себя не ограничиш - выполнится все, чего поначирикал...
Вобщемсс... практика покажет...
:roll:


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пт май 19, 2017 16:52:15 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
в описании большего МК на стр.486 и далее стр.683 и далее приведено описание. Видимо, для работы с ISP разница только в объеме памяти. Еще описание, С реализация ISP, сниффер участника этого сайта, программирование с помощью одинакового МК, реверс с известного сайта, мелкий проект


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Сб май 20, 2017 15:06:34 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Есть у мня предположения... Да формулировка еще сырая...
Намудрствовали китайцы весьма сильно...
Ежли общее непрерывное пространство ПЗУ, то просто ограничения на доступ командой
movc a,@dptr для защиты от чтения кода достаточно (да и чтение еепром проще), ежли нельзя перезаписывать область ISP, то к чему режим запуска на исполнение прожки из ISP области после программного ресета?...
И на кой вообще включать режим работы с ISP/IAP для и без того автономно существующего аппаратного блока, обслуживающего обмен с обастью еепром - ежли доступ только с помощью блока IAP - то само его использование уж есть разграничение области доступа...
Или все ж таки заводской бутлоадер где-то в отдельной области памяти закопан без права перезаписи, а режим прерзагрузки со стартом из области ISP кода просто дает возможность полного доступа ко всем областям ПЗУ?...
Вобшшемсс... ПОКА отложу на некоторо время "на отлежку"...
Да еще нюёнс - в перечнях обычно всегда есть кристалл с префиксом IAPxxxxxxxx - вот то вроде как "отладочный вариант"...
:dont_know:


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Сб май 20, 2017 15:53:51 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
c маркировкой IAP- не отладочный кристалл, а весь объем EEPROM объединен с flash, т.е. последний больше аналогичного без маркировки IAP и вместо объема EEPROM доступен весь flash. Стр.632 и дальше.
В приложенном архиве есть описание в Word (которое копируется) и в т.ч. упомянутый в нем iapisp.hex
Еще попалось совсем немного ПО и плата


Вложения:
STC-USER-IAP-ISP-DEMO.rar [107.43 KiB]
Скачиваний: 23
Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Вс май 21, 2017 13:04:20 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Именно потому я и назвал его отладочным - пользовательский код доступен для перезаписи из программы пользователя без мудрствования с ISP.
:wink:
Скорее всего по логике ЕЕПРОМка должна записываться, читаться и стираться с помощью регистров ISP/IAP без установки IAP_CONTR.IAPEN = 1, а при единичке - открывать доступ к области ISP...
а доступ к перезаписи области AP выполняться из запущенной на исполнение ISP ( с IAP_CONTR.IAPEN = 1 или 0???)
НО... То глядеть надо...
:dont_know:
Пока платка моя консолькой опозналась...
:hunger:
Чуток попозже выложу полученны материал и схемки.
8)


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Вс май 21, 2017 19:23:48 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
в архиве есть примеры на С и asm. Почему их не использовать?


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пн май 22, 2017 09:45:14 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Дык... мне ж не примеры нужны, а принцип правильной работы аппаратной части.
Прожку и сам нашкарябаю!
8)
А с примерами у STC даже в даташите "полный СУСАНИН"...
Похоже таки логика работы модуля ISP/IAP ближе к моим умозаключениям, чем к тому даташиту, представляющему перевод на англицкий со китаяского.
Надо будет тест-прожку нашкарябать и проверить "кит правее"...
:roll: :write:
Пока только один вопроса гложеть...
Область ISP это одно и то же , что и системный загрузчик изготовителя, или все же системный загрузчик изготовителя - это отдельный модуль, а "область ISP" все же спецкусманчик для пользователя?
:dont_know:


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пн май 22, 2017 10:09:26 
Нашел транзистор. Понюхал.

Карма: 9
Зарегистрирован: Вт янв 18, 2011 20:32:48
Сообщений: 154
Откуда: Мск
Рейтинг сообщения: 0
для ответа на эти вопросы и есть примеры- надо просто повторить в базовом варианте, перезаписать и снова попробовать. Если не поможет- то написать по указанным адресам письмо.
Зачем изобретать, то, что уже есть и работает? Достаточно декомплилятором найти способ русификации программы, переделать интерфейс и проверить работу с готовыми платами. Даже эта работа с заранее исправным железом и работающими программами займет кучу времени и сил. В случае со своим вариантом затраты всего на порядок больше (даже при получении полож. результата)


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пн май 22, 2017 10:47:11 
Друг Кота
Аватар пользователя

Карма: 68
Зарегистрирован: Вт мар 16, 2010 23:02:27
Сообщений: 6770
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Мне проще свой тест по документации написать, да и самоделка - прожка автору значительно понятнее и всегда для соответствующей коррекции в нужном направлении доступна. В тех примерах также разночтение реала и теории:
"...
Код:
;/*Disable ISP/IAP/EEPROM function, make MCU in a safe state*/
  MOV  IAP_CONTR,  #00000000B    ;Close ISP/IAP/EEPROM function
  MOV  IAP_CMD,  #00000000B    ;Clear ISP/IAP/EEPROM command
  ;MOV  IAP_TRIG,  #00000000B    ;Clear trigger register to prevent mistrigger
  ;MOV  IAP_ADDRH,  #0FFH                ;Move 00 into address high-byte unit,
              ;Data ptr point to non-EEPROM area
      ;MOV     IAP_ADDRL,  #0FFH                  ;Move 00 into address low-byte unit,
              ;prevent misuse

..."
Так что же в вышеприведенном в адрес-регистр записывается 0x00 или 0xFF?
:wink:
Ну да то по мере "пережевывания" потреблять будемссшшшсс...
:sleep:

Пока же отчет по платке - программатору и "по совместительству" простейше тест-макетке.
За основу интерфейса связи с ПК выбрана "стандартная" платка USB-TTL на основе PL2303 от PROLIFIK.
http://img.radiokot.ru/files/20529/x83zlfcbc.jpg
Драйвера на нее весьма успешно на разные компы и разные виндовсы ставятся, да и в наличии таковых платок в достатке.
Схемка собственно макетки самая примитивная, единственное отличие - добавлен разъём для внешнего питания при автономной работе (при прошивке кормится от платки USB-TTL):
http://img.radiokot.ru/files/20529/1a2xy8jtds.GIF
воть так внешне выглядит
http://img.radiokot.ru/files/20529/1a2xzomum5.jpg
и в стыковке с платкой USB-TTL
http://img.radiokot.ru/files/20529/1a2xzpqgn3.jpg
и собственно прототип печатно-дырчатой платки
http://img.radiokot.ru/files/20529/1a2y1h329k.GIF
а вот тут архивчик в сплане/лэйоуте:
Вложение:
stc51.zip [19.2 KiB]
Скачиваний: 24

:roll:
Попробовал я его подключить к оболочке STC-ISP V6.86...
К сожалению "в лоб" доступен только режим
check mcu...
с воть таковым ответом:
"
Код:
Checking target MCU ...
  MCU type: STC15F204EA
  F/W version: 6.7R

Current H/W Option:
  . Do not detect the level of P3.2 and P3.3 next download
  . Power-on reset, use the general power-on delay
  . RESET pin behaves as I/O pin
  . Interrupt while detect a Low-Voltage
  . Thresh voltage level of the built-in LVD : 3.61 V
  . Permit EEPROM operation under Low-Voltag
  . Hardware do not enable Watch-Dog-Timer
  . Watch-Dog-Timer pre-scalar : 64
  . Watch-Dog-Timer stop count in idle mode
  . Program can modify the Watch-Dog-Timer scalar
  . Do not erase user EEPROM area at next download

  . MCU type: STC15F204EA
  F/W version: 6.7R


  Complete !(2017-05-21 11:25:55)

"
:hunger:
На том пока и остановился дабы "передохнуть и осмотреться"
8)


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: In vino veritas
СообщениеДобавлено: Пн май 22, 2017 12:36:56 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1027
Откуда: Баку
Рейтинг сообщения: 0
В тех примерах также разночтение реала и теории:
"...
Код:
      ;Data ptr point to non-EEPROM area
      ;MOV     IAP_ADDRL,  #0FFH

..."
Так что же в вышеприведенном в адрес-регистр записывается 0x00 или 0xFF?
:wink:
8)

В примере на С для работы с еепром написано так:
Код:
void ee_idle(void)/* Используется во всех процедурах с EEPROM (чтение, стирание, запись) */
{
  IAP_CONTR = 0; // Close IAP function
  IAP_CMD = 0; // Standby mode
  IAP_TRIG = 0; // Flush command trigger register
  IAP_ADDRH = 0x80; // Datasheet recommends to use wrong (non-EEPROM) address 0x80.
  IAP_ADDRL = 0; // Empty address low
}

Так что IAP_ADDRH = 0x80;

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 442 ]  На страницу Пред.  1 ... 11, 12, 13, 14, 15, 16, 17 ... 23  След.



Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y