vak: (Улыбка)
[personal profile] vak
Самодельный калькулятор МК-54 с наклейками на клавиши.

Самодельный калькулятор вполне дозрел. За отчетный период:

(1) Прошивка переделана на МК-61. Это ее немного замедлило, так как приходится моделировать три микросхемы ИК13 вместо двух. Впрочем можно собрать и МК-54, добавив флаг -DMK_54 в Makefile.

(2) Программа сохраняется в flash-памяти микроконтроллера, так что отключение питания ее не стирает.

(3) Наступила определенность с выбором микроконтроллера: PIC32MX220F032B. На microchipdirect такой стоит $2.74. Flash-память команд размером 32 кбайт используется на 91%. Память данных 8 кбайт вообще с избытком. Старшие модели MX230F064B и MX250F128B тоже годятся. Готовую прошивку можно взять здесь: mk61-mx220-12mhz.hex.

(3) Наклейки на кнопки несколько улучшили внешний вид. Наклейки печатались посредством цветного принтера на самоклеящейся бумаге 3M и обрезались ножницами. Поверх наклеивался дополнительный защитный квадратик скотча. Выглядит неидеально, но вполне надежно.

(4) Добавлен протокол общения с компьютером через USB. Тип устройства USB HID не требует установки драйвера под Windows. Идентификаторы устройства VID/PID = ca1c/0061 для МК-61 и ca1c/0054 для МК-54. Протокол очень простой: шлем устройству пакет в 64 байта, ожидаем 64 байта в ответ.

(5) Сделана утилита pmktool, которая умеет показывать текущий стек, регистры, программу, и загружать новую программу по USB. Содержит простой ассемблер и дизассемблер. Утилита в стиле command line, работает под Linux, Windows и Mac OS X. Готовый бинарник для Windows есть здесь: pmktool.exe. Исходники открытые: желающие могут добавить GUI.

(6) В качестве пробы ассемблера была адаптирована самая первая из известных игр для МК-61: "Колхоз", позднее известная как "Остров". Оригинал можно посмотреть на сайте Евгения Кузниченко, адаптированный текст здесь.

(7) Для оценки скорости вычислений был запущен классический тест "8 ферзей", взятый с сайта Сергея Тарасова [livejournal.com profile] arbinada. Адаптированный текст здесь. Время выполнения составило 1 час 19 минут 30 секунд. Известно, что на оригинальном МК-56 потребовалось три часа девять минут, то есть реплика в 2.4 раза быстрее.

(8) Написан тест, демонстрирующий забавную недокументированную особенность калькуляторов этого семейства: главные и побочные ветви выполнения. Поведение в точности соответствует ожидаемому. Спасибо [livejournal.com profile] 1500py470 за подсказку.

(9) Измерен ток потребления: от 29 до 35 мА, в зависимости от количества светящихся разрядов на индикаторе. При емкости батареек 2000мАч получится порядка 60 часов работы. Оригинальный МК-61 кушает 90 мА.

(10) Проект перенесен на отдельный сайт: https://github.com/sergev/mk-61. Там сложены все исходники и документация, а также принципиальная схема (PDF) и чертежи разведенной платы, готовые к производству (replica61.zip).

Предыдущие сообщения:
http://ramlamyammambam.livejournal.com/266692.html
http://ramlamyammambam.livejournal.com/266277.html

мк 61

Date: 2015-10-03 21:07 (UTC)
From: [identity profile] starsergei.livejournal.com
Здравствуйте Сергей,спасибо за пояснения, пока буду разбираться, хотел-бы поставить АЛ304В индикаторы зеленые с общим катодом или можно заменить ваши индикаторы с общим анодом на индикаторы с общим катодом и что для этого нужно заменить в схеме может регист сдвига с другой буквой как для АЛ304В (общий катод) ставиться К514ИД1 , а для АЛ304Г (общий анод) ставиться дешифратор К514ИД2Ю. В общем мой вопрос заключается в том что у нас на рынке только индикаторы с общим катодом и как их подключить в Вашей схеме.

Re: мк 61

Date: 2015-10-03 22:03 (UTC)
From: [identity profile] starsergei.livejournal.com
и скажите пожалуйста что там обсуждалоь http://digitalinvitro.blogspot.ru/ может мк61 с дисплеем от телефона. спасибо

Re: мк 61

Date: 2015-10-14 18:43 (UTC)
From: [identity profile] starsergei.livejournal.com
Вас понял, спасибо но все-же, что тут обсуждалось http://4.bp.blogspot.com/_E9iC2oUZmVA/Sg7v_lNlg7I/AAAAAAAAAD8/MveZP7KwPdM/s400/IMG_1243.JPG , может они с МК61 вывели через внешний контроллер индикацию на жк экран Нокии. Да пока купил через инет оригинал МК61 очень рад, хотя по сравнению с эмулятором долго думает. возможно скоро пришлют две микросхемы в DIP PIC32MX220 и MX250 , но вот главная проблема будет видимо с кнопками, наверное придется делать отдельную плату под сменную клавиатуру. кстати есть вопрос к Вам, а если с линукса то какой программой залить в него прошивку. и скажите пожалуста почему все-таки Вы сразу не разрабатывали под жк экран наверное индикаторы с общим анодом было прще использовать. спасибо