Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить

Re: Котуинко

Сб май 08, 2021 15:59:37

Краткие наброски схемного решения для программатора последовательных МК (частность серия AT89Snnnn от атмел).
Общая блок - схема:
oll_shems.pdf
(209.26 KiB) Скачиваний: 230

модернизированный модуль микроконтроллера и памяти (с раскладкой сигналов под проект):
U5xmp_m0_murus.pdf
(211.29 KiB) Скачиваний: 211

Собственно магистральный усилитель (еще надо сделать в железе - могут быть корректировки):
https://img.radiokot.ru/files/20529/2iem7i8x2q.GIF
:write:
:solder:

Re: Котуинко

Чт май 13, 2021 10:38:29

попались мне тут незалитые модули ЭКЛЗ ??? внутри квадратная NXP p89v51rd2fa fa95-0365 в панелке PLCC рядом распаяны smd ds1307 с 32к-кварцем и ат24хх(неразобрал) вродн
упроцам свой кварк 22.11мгц вывведен 10жилный шлейф с 10пин раземом FC10_P
у каво сея схемика есть у каво нить этой шняги сайта по ККМ кудато сгинула не нашел Гуля помню там много чо было...
заьвно бы ченить замутить на этом модуле по сути заготофка для таймера или часоф с RTC тока батареку пркрутить


https://www.rlocman.ru/datasheet/data.h ... 89V51RD2FA
даташит прикрепил неясно ка оно шьется но чето думается что наверно не в програмаморе

Добавлено after 2 minutes 21 second:
пс spi походу апаратный и открыт по дефолту
тож можно замутить ка основу для катуинкоф Добавлено after 2 minutes 12 seconds:
фотоприкреплю позжеДобавлено after 16hr 2 minutes 21 second:
Изображение
Последний раз редактировалось musor Чт май 13, 2021 19:36:19, всего редактировалось 1 раз.

Re: Котуинко

Чт май 13, 2021 11:55:04

У RD/RC и более навороченных вроде FLIP был....
AT89C51RC2_FLIP_Programming_Guide.pdf
(144.85 KiB) Скачиваний: 257

Да и "квадратные" мне как-то в смысле монтажаДемонтажа отвратно проявили. А "вживую" на радиорынке не попадалоись.
Конечно имея готовую платку и схемку к ней задаром можно и поизмываться - начинка там весьма "вкусненькая"...
:roll:
УПС... а это еще и не Атмелевские...
..........
:shock:
NXP славился добавкой PCA - только не во всех оное железо ставилось... Да "крокодильими ценами"...
:?

Пока что довести до кондиции murus надо - по макетке подправил:
https://img.radiokot.ru/files/20529/2ijxyrrr54.GIF
надо б еще тестик набросать да посмотреть на результат.
8)

Бегло глянул документацию по P89V51RB2FA (в моих краях таких нету - только посмотрямс можно - может чего интересного нароется).
Похоже как и у китяцев есть бутлоадер в отдельной секции флешки.
Но как с оным работать надо еще апнотов на сайте производителя поднакопать.
:sleep:
Отдельный интерес представляет расширенное толкование записей в intel hex файле
(https://www.rlocman.ru/i/File/dat/NXP/M ... 1RB2FA.pdf см. стр. 21-25) с трактовками записей как командных строк... Это применимо для доработок в биосе котуинки (режим загрузки файла и управления).
:roll:

Re: Котуинко

Сб май 15, 2021 20:35:13

нашел откуджа эта фискалка SM 551.00.085
http://shels-m.ru/files/support/SHTRIH_ ... remdoc.pdf
стр42-44 там есть схемы но нет разводки PCB что не помешалоб для доработок модуля
что думаешь BOB51, про это? в схеме указан CPU W78E516 PLCC44J
WINBOND- но думаю это аналоги NXP p89v51rd2fa
распаяна одна ципа 24ххх средняя по рисунку ДД;4 -нету пусто

Добавлено after 1 minute:
есть идейка чо можно залить туда поигратца?
можно ли на I2C вывиести дисплей??? который на ht1621b типа часоф таймера чтото на каленке поиграца с стекляшкой от другой касы
Последний раз редактировалось musor Сб май 15, 2021 21:01:09, всего редактировалось 3 раз(а).

Re: Котуинко

Сб май 15, 2021 20:42:51

нашел откуджа эта фискалка

Изображение
Такой блок ФП применялся почти во всей линейке кассовых аппаратов от компании Штрих-М..

Re: Котуинко

Сб май 15, 2021 21:10:02

АлександрЛ, а ранше подсказать не мок ? стока рыл интернет не зная от чего оно..
добавилдимпорт схемы

Изображение

Re: Котуинко

Сб май 15, 2021 22:22:50

Идея котуинки - использование режима работы с внешним ОЗУ как с совмещенной ВПД/ВПП.
Собственно если "донор" позволяет подобное сделать и есть возможность(наличие в МК) использования встроенного флеш-ПЗУ(РПП) то вполне можно котуинку и на таком кристалле сделать.
Естественно будут некоторые отличия в биос, обусловленные спецификой аппаратной начинки кристалла.
Но то больше касается "совмещенного режима", когда используется функционал биос из РПП во флеше, а программа пользователя погружается в совмещенную ВПП/ВПД.
Я сейчас как раз " воспоминаниями" именно в данном варианте занимаюсь.
Возможно придётся и сам биос подкорректировать и дописать дополнительный модуль ввода/вывода для комплекта (модификацию того, что частично в программаторе для AT89Cx051 использовался).
В принципе ... весьма интересная конструкция получается.
Единственно добавить туда модуль создания intel hex8 файлов для возврата в ПК(терминал) и/или флеш-накопитель...
Однако... Не буду спешить. Пока в ближних планах "воспоминания" да размышления над тем, как поудачнее доработку базовых модулей сделать (с учётом их обработки компилятором С51asm), чтоб дальнейшие прожки удобнее писать было.
:write:

Посмотрел документацию на W78E516B и схемку...
1. лапки I2C уже не на тех местах, где хотелось бы... нам же надо режим совмещенной ВПД/ВПП активировать - а там был исходно вывод Р3.5(Е1) задействован.
Другое дело вытащить сам МК да в самодельной платке поставить - благо если как на фото - в панельку вставлен.
2. у данного МК(W78E516B) РПП(IAP) в 64к.... Хорошо для практики, но в случае с котуинко - режим
"биос в РПП/пользователь в ВПП/ВПД" становится нереализуем
(нет автопереключения на ВПП/ВПД по достижении конца области РПП).
Разве что удастся встроенный загрузочный участок использовать - но нам о его содержимом мало что известно...
:roll:

Re: Котуинко

Ср май 19, 2021 14:09:50

Модификация проекта
основной блок
U5xmp_m0a.pdf
(191.8 KiB) Скачиваний: 205

остальные схемки в архиве.
За исключением дополнительного монитора питания/сброса на аттини13 изменений нет (и то уже ранее публиковалось).
Собственно его комплект:
b52m.zip
(477.04 KiB) Скачиваний: 211
- сам биос и схема всех компонентов
mpr_t13z.zip
(285.18 KiB) Скачиваний: 223
- схемка и прожка с прошивкой для монитора питания/сброса на аттини13
s52prg_3.zip
(143.76 KiB) Скачиваний: 206
- прошивайка модифицированного биоса на основе адуринки - нанки
8)
Поскольку изменения коснулись и области адресов утилиток для внешних программ режима "биос в РПП/пользователь в ВПП/ВПД" то пришлось и программатор для АТ89Сх051 чуток подправить.
Изменения коснулись только пары файлов в PGX051mx и замены файла pgx.hex на pgx_mx.hex в папке hex files...
Однако лучше повторю выкладку комплекта для соответствия.
Grafix_upgm.zip
(405.04 KiB) Скачиваний: 216
- собственно схемки
Добавлено after 4 minutes 4 seconds:
PGX051mx.zip
(71.95 KiB) Скачиваний: 227
- сама программка системного блока (с модификацией)
PAVR.zip
(241.9 KiB) Скачиваний: 212
- это прожка и схемки "жгучего модуля" на аттини2313, что цепляется к основному блоку
hex files.zip
(6.24 KiB) Скачиваний: 214
- папка с командными файлами для применения
comand_files_pgx051.zip
(44.94 KiB) Скачиваний: 210
- а это заготовки и полный исходный текст тех командных файлов с шаблоном их формирования
В общем пока только чуток подправлено.
В дальнейшем точка размещения системного ввода-вывода, входящего в состав программ пользователя для режима "биос в РПП/ программа пользователя в ВПП/ВПД" будет сдвинут в область 0хFC00-0хFEFF... Программатора для АТ89Сх051 это ессно не коснется - останется "как есть".
:write:

Re: Котуинко

Чт май 20, 2021 11:45:32

Исправлена обнаруженная в схемке модуля U5xmp_m0a ошибка:
https://img.radiokot.ru/files/20529/2iknf46yvl.GIF
U5xmp_m0a.pdf
(173.5 KiB) Скачиваний: 157

и вариант в формате splan7
U5xmp_m0a.zip
(11.88 KiB) Скачиваний: 210

исходно верную (U5xmp_m0) испортил при перерисовке в более компактный вид - пришлось срочно править.
Теперь выводы РВ5-РВ3 у аттини 13 показаны верно (в соответствии с проектом в mpr_t13z.zip).
:oops:

Re: Котуинко

Сб май 22, 2021 12:41:29

Собственно только сам биос (b52m) выполняет системную загрузку и обслуживание минимального набора функций (та же печать строк в окне терминалки ПК)...
Для практического применения и разработок программ пользователя надо еще одну системную прокладку добавить...
Та драйверюка обеспечивает уже загрузку как файлов данных, так и программ пользователя/командных блоков.
Загружается этот файлик - kotios.hex с помощью загрузчика биос вручную пользователем при помощи терминала как любой иной файлик.
А далее именно kotios принимает на себя роль диспетчера загрузки.
Собственно примерно так и в DOS делается.
Исходник kotios в папке librus содержит файлик ldu_ios.txt, содержимое которого должно или добавляться в конец файла программы пользователя или использоваться как главная заготовка в командном файле.
Программа пользователя должна включать в себя еще и содержимое файлов описания ресурсов с учетом биос и kotios - это файлики
dfn_ios.txt и mac_ios.txt с дополнительно раскомментированным в таком случае участком в начале dfn_ios.txt
Собственно kotios предназначен для случая, когда системная карта ресурсов определена следующим образом:
0x0000-0x1FFF = bios b52m в Резидентной Памяти Программ
0x0000-0x1FFF = исключительно Внешняя Память Данных (режим автопереключения РПП/ВПП)
0x2000-0xFBFF = совмещенная область Внешней Памяти Программ/Данных - программы пользователя
0xFC00-0xFEFF = совмещенная ВПП/ВПД - область размещения kotios
0xFF00-0xFFEF = совмещенная ВПП/ВПД - область переназначаемых векторов прерываний для неиспользуемых b52m аппаратных ресурсов
0xFFF0-0xFFFF = совмещенная ВПП/ВПД - область системного переключателя key_proc (обеспечивает режим полной ВПП/ВПД при загрузке из b52m)
Для того, чтобы компилятор c51asm разрешил использовать память программ в диапазоне 0x0000-0xFFFF и сохранил специфику AT89S52 в папке baseinc добавлен файлик kotuinko.inc, который и следует использовать при написании программ пользователя.
Собственно текущая версия проекта:
схема основного модуля
https://img.radiokot.ru/files/20529/2isv0psq7y.JPG
дополнительная периферия
https://img.radiokot.ru/files/20529/2isualz5za.GIF
преобразователь для RS232 (избыточный - достаточно простого, но использовано то, что уже было ибо имелась возможность воткнуть кнопу программной перезагрузки без лишних монтажных работ)
https://img.radiokot.ru/files/20529/2isuacqsdn.GIF
общая схема межблочных соединений:
https://img.radiokot.ru/files/20529/2isuu7kb9k.JPG
биос b52m
b52m.zip
(629.75 KiB) Скачиваний: 214

его прошивайка на ардуино-нано
s52prg_3.zip
(7.43 KiB) Скачиваний: 220

прошивка монитора питания и сброса на аттини13
mpr_t13z.zip
(71.74 KiB) Скачиваний: 218

блок системного ввода/вывода kotios
kotios.zip
(111.09 KiB) Скачиваний: 206

Для проекта upgm_mx (чуток ранее выложенного в https://radiokot.ru/forum/viewtopic.php ... 7#p4033937) изменений не имеется - там прототип котиуса встроен в состав PGX051mx, правда в двух разных файлах и в другой зоне адресов - то уж останется пока как было.
Примеры применения будут чуток позже.
8)

Re: Котуинко

Пн май 31, 2021 19:42:38

К имеющейся платформе присоединяем murus
https://img.radiokot.ru/files/20529/2j44fz1tdk.JPG
(
oll_shems_aspgm.zip
(33.31 KiB) Скачиваний: 207
)
и к его разъёму цепляем панельку с кварцем (в моем варианте кварц на 4 МГц)
https://img.radiokot.ru/files/20529/2j44mxd1ax.JPG
включаем устройство.
ждем стандартного запроса от биос для нажатия "красной кнопы"
далее загружаем kotios.hex из папки kotios
kotios.zip
(111.09 KiB) Скачиваний: 196

по приглашению от kotios загружаем s5x.hex из папки S5x_ip
S5x_ip.zip
(181.81 KiB) Скачиваний: 206

и следуем согласно указаниям в окне терминала.
Собственно то простейший прошивальщик *.hex файлов в АТ89S51 или в AT89S52.
Сначала выдает заставку и просит установить МК в панельку с последующим нажатием кнопы, подключенной к платке murus.
Далее в автоматическом режиме проводится анализ МК.
Выдается запрос на ввод файла, предназначенного для прошивки МК
В ответ вводим необходимый файл с консоли терминала.
По окончании загрузки автоматически выполняется общее стирание,
проверка чистоты ПЗУ в области, соответствующей загружаемому файлу и
последующая запись с верификацией.
По окончании процесса управление передается в точку установки/снятия МК.
Весьма шустрый однако...
Ну и опробованы еще несколько "вопросов" по работе в режиме совмещенной ВПП/ВПД.
:hunger:
ВНИМАНИЕ!
содержимое папок S5x_ip и kotios предназначено для работы исключительно с ВПП/ВПД
в "классическом" варианте с раздельной памятью программ и памятью данных эти прожки работать не будут.
:wink:

Двухкомпонентная загрузка - сначала kotios, затем главная прожка дает больше свободы для написания программы.
Однако тыкать кнопы бывает таки влом....
Посему чуток позже будет единый файлик для программатора и шаблон - заготовка для самодельных прожек с минимальным обязательным составом системной части.
В случае же, когда программа пользователя полностью занимает впд/ПВВ там ограничение только на бит блокировки ствтуса совмещенной ВПД/ВПП.
8)
:write:

Re: Котуинко

Вт июн 01, 2021 22:20:11

Загрузка программки программатора непосредственно из-под биоса:
S5x_ip2.zip
(224.65 KiB) Скачиваний: 197

работает одинаково, но "прокладка" (kotios) уже встроена в самой программке.
А вот это "скелетная заготовка" для самодельной программы с встроенным kotios
для возможности подкачки файлов из терминалки ПК по ходу исполнения прожки:
shap_kote.zip
(206.89 KiB) Скачиваний: 208

8)

Re: Котуинко

Чт июн 03, 2021 19:55:22

Моя КОТУИНКО явно выходит на уровень необходимости в статейке, а возможно, и более расширенном варианте...
Как автономная платформа в кластере ардуино к примеру...
Только то уже одному не потянуть... Ни адаптации Си/SDCC ни оболочки для ПК я качественно не составлю...
Нужны дружественные РадиоКОТЫ, разбирающиеся в соответствующих областях знаний...
Посему пока упор делается исключительно на терминал (https://sites.google.com/site/terminalbpp/) и работу с программами на уровне ассемблера от атмел (старый добрый c51asm).
:roll:
Вариант грамотной адаптации MCS51 под ардуино, да еще и с С++ смотрим тут:
https://z-uno.z-wave.me/technical/
у них же и соответствующий качественный референс для пользователя, но чуток иная обвязка и принцип - там нет работы с совмещенной внешней памятью программ/данных.
:hunger:
Весьма красиво, да не укусить...
:(
В моей же версии пока еще нет желаемого интерфейсного адаптера для работы с ПК (взамен старому простейшему варианту).
Собственно та задумка уже поставлена в план доработок... Как только испечется - тогда и можно за расширенное описание приняться.
:write:
Ежли б еще найти КОТОВ - обитателей нашей ДНР, кто мог бы качественную платку по моему шаблону в формате splan качественно сделать - тогда можно и тесты на поднятие быстродействия сделать ("дырчаты" макетки явно повышения частоты кварца генплаты не допустят)... к примеру протестировать на 14,7465 МГц или 18,432 МГц....
А может кто и в совместной доработке/раскрутке проекта сочтет возможным поучаствовать...
:roll:

Добавлено after 9 hours 42 minutes 29 seconds:
О том как "кашу маслом" испортил...
:oops:
В начале работ над примитив-прошивайкой по ISP для AT89S51/AT89S52 у меня был вопрос по временным характеристикам для создания "лаподрыжного" протокола обмена по SPI...
Сошлись на предположении, сто как и обычнвй SPI протокол для прошивки должен допускать замедление вплоть до полного останова...
Плюс ошибка в определении диапазона интервалов - я таки длительность пересылки одного бита черезмерно завысил.
При более поздних экспериментах уже на основе котуинки прояснилось, что интерфейс для ISP прошивки у AT89S51/AT89S52 не слишком хорошо относится как к изменениям в сторону уменьшения длительности тактирования данных по ISP - но там хоть по документации оговорены минимальные величины, так и к черезмерному увеличению длительности тактирования...
В результате сделана правка в программе "однократной прошивайки биос b52m":
s52prg_4.zip
(7.46 KiB) Скачиваний: 193

после правки время прошивки (стирание -верификация "чистоты" -запись с верификацией записи) не превышает 20 секунд.
:roll:

Re: Котуинко

Вс июн 06, 2021 18:49:56

Следующая давно планируемая доработка касается переходного модуля.
:write:

Re: Котуинко

Чт июн 10, 2021 10:40:21

Проблема "первичного проброса" мусора на TXD оказалась гораздо более неприятной, чем изначально предполагалось...
Ибо источником по выявленному факту является генерация короткого импульса уровнем 0 на выходных выводах портов МК в момент подачи питания и действия уровня RESET (а не работа УАРТ, как ранее ошибочно предполагалось).
Причем такая ситуация возникает исключительно при подаче питания - в дальнейшем при аппаратном RESET без снятия питающего напряжения "глюк" не проявляется.
Является это особенностью только АТ89S52 которые у меня имеются или характерно для всех подвидов MCS51 - то надо в каждом конкретном случае перепроверяться.
Возможно глюк более заметен при "длинно-шлейфовой" нагрузке выводов порта (и/или повышенная емкость на лапку порта) - у меня суммарно длина шлейфов под 20 сантиметров...
Вобщем... описание возможного глюка:
при подаче питания на схему на линиях портов МК (at89s52) возможно однократное появление короткого импульса уровня 0.
Принимаем данный глюк как ФАКыть и соответственно применяем меры противодействия в случаях, когда начальное состояние выводов МК является актуальным для применяемой периферии.
:write:
Как результат появилась воть такая схемка, полностью блокирующая последствия того глюка на линии TXD преобразователя интерфейса из ТТЛ в СОМ:
https://img.radiokot.ru/files/20529/2jek6r8qt6.JPG
и ее же печатка
https://img.radiokot.ru/files/20529/2jek7qf8vi.JPG
:hunger:

Re: Котуинко

Вс июн 13, 2021 08:26:18

Новый адаптер добавил свободно определяемых выводов.
Посему из основного биос (и имеющихся уже программ) были удалены кнопки и сокращен интервал использования линии EL_LED.
Собственно в ресурс пользовательских программ добавились INT1, полный доступ к линиям Р3.3(/INT1), P3.4(T0) и частично к P3.2(/INT0) - эта линия используется при начальной работе биос с момента подачи питания до выдачи сообщения о готовности к загрузке файла программы.
Поскольку "красная кнопа" удалена из программы, биос по завершению начального тестирования ОЗУ ВПД/ВПП мигает желтеньким светиком и выдает в окно терминала сообщение о готовности к приему файла.
Далее просто закидываем нужную нам прожку из терминалки на ПК.
Поскольку удаленная часть таки занимала место частично зацепило и вектора общих для применения участков биос.
Посему скорректированный материал для всего ранее сделанного прилагается ниже:
основной биос
b52m1.7z
(52.01 KiB) Скачиваний: 186

дополнительный фрагмент kotios
kotios1.zip
(37.29 KiB) Скачиваний: 192

заготовка для вставки в прикладные программы
shap_kote1.zip
(39.86 KiB) Скачиваний: 180

программатор для АТ89S51/52 для работы с внешним котиусом (загрузка котиус и последующего s5x_ip1)
S5x_ip1.zip
(87.59 KiB) Скачиваний: 196

программатор для АТ89S51/52 с включенным в состав котиусом (прямая загрузка из-под биос)
S5x_ip2_1.zip
(73.5 KiB) Скачиваний: 192

и измененная часть программатора для АТ89С2051/4051

Добавлено after 1 minute 49 seconds:
PGX051mx1.zip
(73.73 KiB) Скачиваний: 202

8)
Собственно далее уже поинтереснее продолжение просматривается...
Ибо... имеем 8 + 3 выводов портов.
В свободном определении пользователя:
8 битный таймер TL0 с возможностью использования комплектных T0 (счетный вход), /INT0(разрешение счета), TF0 (прерывание по переполнению ТL0) правда без права изменения режима - по умолчанию он в режиме 3.
возможность использования прерываний /INT0 и /INT1
возможность полного использования таймера T2 (AT89S52)
Для программиста дополнительно - возможность оперативного изменения содержимого памяти программ самой программой (замена векторов и/или команд) характерная только для программ в ПК.
Относительно того, что можно подсоединить вместо простого преобразователя линии связи с СОМ портом ПК... Это на некоторое будущее закладка сделана.
:wink:
:write:

Re: Котуинко

Вт июн 15, 2021 08:56:35

Перед дальнейшим продвижением придется промудрить обратную свертку в intel hex8 выбранной/заданной области ОЗУ с пересылкой результата в терминалку.
:write:

Re: Котуинко

Вт июн 15, 2021 09:42:04

имхо, intel-hex менее читабельный, чем простой dump. для выдачи в терминалку dump лучше, имхо

Re: Котуинко

Вт июн 15, 2021 11:26:13

Это больше не для терминалки "на почитать", а по направлению файлик в куда-то.....(ПК на диск/микроCD) записать.
Бинарник уже спецпрожка соответствующая отобразить может.
Тот же Hiew 6_86 к примеру.
8)
Собственно в основе - базовая платка
https://img.radiokot.ru/files/20529/2jk6acmf1d.JPG
у которой возможно подключение как к терминалке ПК, так и к иным самодельным модулям-расширителям.
Удобство - легкость и оперативность загрузки непосредственно *.hex файлом без "примораживания" передающего файл устройства.
В том числе и оперативная подкачка участков основной программы из внешнего накопителя.
Отмаркированы внешние линии уже с учетом возможной совместимости как разновидность платформ ардуино IDE (на всяк случай).
Минус - относительно малое быстродействие и небольшое количество свободноопределяемых внешних лапок.
Пока что в сделанных программаторах особо те ограничения на результат не повлияли.
Вот с параллельным потребуются порты-расширители, но то не так и сложно.
:roll:

Re: Котуинко

Сб июн 19, 2021 09:30:31

Немножко поразмышлял о "жгучей приставке" для параллельного программирования как AT89C/Snn/825m, так и для иных "параллельных"...
Как основа - применение в качестве порт-расширителя или
AT89S51
или
AtMega8515....
Дилемка... у меня оба кристалла имеются, но не факт, что где-то распространенной мега8515 будет.
С другой стороны - проты у меги более универсальны, да и нагрузочные характеристики посолиднее.
Оба кристалла по факту pin-to-pin совместимы по примитив-функционалу.
Так что скорее всего будет в основе AT89S51 - ее уже можно прошить на ранее выполненном устройстве, а далее в ту же панельку можно и AT89C51 и/или AtMega8515 установить.
Программа в базовом блоке гораздо проще модернизируется.
:roll:
Ответить