Прошу прощения, если уже было. Вопрос знатокам ассемблера. Собираю Суперпробник v4.2 . Но не асс в ассемблере, особенно в директивах компилятора.
1. При старте слишком уж быстро проскакивают сообщения о названии -"SUPr", версии -"u 4.2", при переключении диапазонов 5v - "VoLL" , 25v - "VoLH" и тд. Покажите пожалуйста как увеличить время вывода сообщений раз в 5. 2. Как увеличить количество пунктов меню до 25. Например добавить "PLAУ", "bUZZ", "tLGr", "_SOS" и тд. Пусть они пустые, лишь бы выходили. Памяти там в процессоре много. Какая-то директива не позволяет мне это сделать... 3. Там в программе идет речь о неком "пасхальном яйце" (Easter egg). Чё там за фича? С уважением.
Речь здесь идет о пробнике от HELI- с переключателем диапазонов на входе.
Меню сделано через табличный переход. Поэтому нужно добавлять таблицу и лимитер счетчика-указателя увеличить. Вообще то меню строят как машину состояний. А тут....
В 5 раз удлинить время "Supr u 42" - просто тупо 5 раз повторить команду. А для "UoLL" и "UoLH" хватит 3-х раз. Hello: movlw TXT_HELLO ; Hello string call DisplayText call ShowFlasing ; Show flashing call ShowFlasing call ShowFlasing call ShowFlasing call ShowFlasing movf OpMode,w ; Check magic config for Easter egg
;=========== ; Run display slowly for flashing effect, slow if GIE=1
И еще
VoltmeterHi: movlw SCAL_HIVOLT ; Index to scale table in eeprom call GetScale ; Get parameters for hivolt scale call01 SetupPins ; Reconfigure pins bsf HIV ; Set scale High movlw TXT_VOLH ; VolH string call DisplayText call ShowFlasing ; Show flashing call ShowFlasing call ShowFlasing goto Volt ; Jump to common Volt in HIV mode
Приятнее когда не мелькает. Как добавить в меню новые пункты вроде разобрался. Возник вопрос, а какие еще функции сочли бы полезными уважаемые коты?
... Тихо сам с собою, левою рукою... Добавить пару пунктов меню (только именно пунктов) оказалось тоже несложно. Добавил пункты tSoS - transmitter SOS (передача SOS) и bdLS - Button Dallas (эмулятор электронного ключа Даллас). Пока эти пункты только повторяют пункт ir.ou и вывод приветствия.
Для того чтобы написать SOS ассемблерную вставку-подпрограмму выбрал PIC Basic Pro - Microcode Studio v3.0.0.5. Ради любопытства написал 2 варианта проги, ессно обе ОЧЕНЬ не самые оптимальные. Скомпилировал в хексы, которые прогнал в Протеусе. Оба работают как надо, хотя имеют очень разные размеры. Потом дизасемблировал. Потом дизасмы и собираюсь ворошить и вставлять в программу Суперпробника.
Если кому будет интересно загляните в Uzelok. Буду благодарен за вариант бейсиковской проги, которая даст самый короткий HEX.
Пс. К чему весь этот маразм? Да игры у меня такие. Всегда уважал хакеров. В asm-ах ищите по словам "это", "еще".
Не такие уж они и сложные эти Пики. Закончил с SOS-ом. Решил добавить работу с термодатчиком DS1820. Эмулятор ключа - пока сложноватая задача. Пока сделал только общение с датчиком и пересчет из байтов в значение и знак температуры. А вот чтоб вывести это на этот дисплей с посегментной динамической индикацией, придется хорошо поискать среди подпрограмм. Кому любопытно - датчик на PORTA,0. Подтяжка на PORTC,7. Перекинул свои программы во 2-й банк (bsf PCLATH,4 bcf PCLATH,3), а данные на 0x00A0. Все-таки полезно порой начинать изучать через ж. Как-то быстрей до нутра добираешься, да и забавней.
Никогда не понимал применяющих всякие "printf"... Особенно если речь идет о достаточно примитивных архитектурах. Просто не эстетично с технической точки зрения.
Ariadna-on-Line, я сейчась сбегаю до магазина, куплю МК - какой он у вас там сидит, плату сделаю, елементъ поставлю, прошью МК и посмотрю как у вас там работает программа!!!!!
Для чего мне етот HEX файл? Что я с ним делать буду? Компот?
Въ жалуетесь, что сами с собой диалог ведете. А о чем говорить? О HEX файле?
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
botchin-у. Не обижайтесь. Не надо никуда бежать. Тот кого эта тема заинтересует (я надеюсь) - или уже давно собрал конструкцию и хочет расширить функциональность, или имеет ящичек разных процессоров (на все случаи жизни) и все давно (за 5 минут) собирает на макетке (breadboard). А программирует процессор вообще за 5 секунд. А для начала, просто в симуляторе смотрит как работает Хекс-файл. Речь не о чудесах и искусстве программирования, а достижении цели (покорении Шипки) с помощью программирования. Этот проект имеет корни "скрытые в веках" (я не нашел) и является открытым. По стилям программирования похож на сборник от разных авторов и много версий. Вот и я "вношу свою лепту" (в версию v42) - Вот это завернул!!! Вопросы приветствуются, (если знать ответы). Сорри за оффтоп. Спасибо за наводку про Indirrect Adressation. Вот один из кучи сайтов http://micpic.ru/home/picprojects/83-su ... a-pic.html ПС. И я вроде нигде тут не жаловался...
Последний раз редактировалось Ariadna-on-Line Вт июн 14, 2016 13:39:21, всего редактировалось 1 раз.
А что Вы предлагаете? Выложить ассемблер исходного проекта и как я туда воткнул дизассемблеры модулей. Да ради бога. А вы разберЁтесь и допИшите нам вывод на дисплей температуры и ее знака. Я - за - голосую двумя руками..
А вы разберЁтесь и допИшите нам вывод на дисплей температуры и ее знака. Я - за - голосую
Вот здесь въ в огромной ошибке. Я просто НАПИШУ. Не "допишу", а сначала. Идея важнее, если идея заслуживает то - да. Но вникать в чужую логику и дописъвать что-то - ето только в раздел работа и то за хорошую сумму.
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Последний раз редактировалось botchin Ср июн 15, 2016 12:06:54, всего редактировалось 1 раз.
Может мы друг-друга не понимаем. - Это открытый проект. Начинался с небольшого количества функций пробника (около 10). Стараниями энтузиастов доведен до 20 функций. Функции используют общую часть - вывод на LED индикатор (потому что стоит копейки по сравнению с LCD). Многие уже сделали себе эту штуку и переделывать поздно. Вот с этим я и предложил вам разобраться. Никто тут не пытается зашибить деньгу. Если не хотите поучаствовать на общее дело - ваше право. С уважением.
Полностью ввод с термодатчика и вывод на индикатор по схеме как у Суперпробника. Бейсик от Микрокоде Студио v2.49. На очереди эмулятор электронного ключа Даллас. Проще вставить в проект целиком и не париться с передачей данных между подпрограммами.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения