Технический форум

Технический форум (http://www.tehnari.ru/)
-   Форум программистов (http://www.tehnari.ru/f22/)
-   -   Можно ли внести изменения в программу? (http://www.tehnari.ru/f22/t77909/)

из Риги 31.08.2012 20:37

Можно ли внести изменения в программу?
 
Вложений: 2
Собрал такой девайс , на PIC16F628A , прошиваю на программаторе "экстрапик" , использую программу "icprog105" . Все получается - но хотелось бы попробовать изменить что то в программе , что бы замедлить темп бегающих огней , возможно ли это ?
 

Bydlokoder 31.08.2012 21:06

Открыть прошивку дизассемблером и искать циклы отвечающие за время переключения. Можно методом тыка поискать декрементируемые в ходе исполнения программы переменные. Наверняка в программе есть отдельный счетчик для отсчета времени свечения светодиодов.

из Риги 31.08.2012 21:27

Цитата:

Сообщение от Bydlokoder (Сообщение 787089)
Открыть прошивку дизассемблером

Цитата:

Сообщение от Bydlokoder (Сообщение 787089)
поискать декрементируемые

Эти термины повергают меня в ступор ... tehno004 ... Я так понимаю что если в открытой таблице изменить цифры - то что то изменится в программе ? Если кто сможет помочь - отскриншотю ...(или отскриншочу (?!)... житие мое , языками не владею ... :tehnari_ru_942:) )всю прошивку ...

Daniellos 31.08.2012 21:47

Цитата:

Сообщение от из Риги (Сообщение 787103)
Я так понимаю что если в открытой таблице изменить цифры - то что то изменится в программе

Да, она может не запуститься - это бинарный (двоичный) код. Для того, что бы преобразовать его в код ассемблера (более понятный), надо декомпилировать двоичный код. Если есть исходник "паршивки", то нужно править его и компилировать по-новой. Как уже подсказали - ковырять надо в циклах jmp или jnc или jp искать слово dec или ещё что-то - я в ассемблере не силён.


Для того что бы "безнаказанно" править прошивку, надо знать как минимум две вещи - работу микроконтроллера и ассемблер.

Bydlokoder 31.08.2012 22:20

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

Давайте файл hex, дезассемблирую, посмотрю, хотя и ничего не обещаю. Если частота переключения светодиодов определяется отдельной подпрограммой задержки, возможно сумею найти ее и поправить переменные. Если задействован аппаратный таймер или подпрограмма использует для формирования времени задержки какие-то циклы основной программы, для меня будет слишком сложно.

из Риги 31.08.2012 22:35

Вложений: 4
Вот это ... ?

из Риги 31.08.2012 22:39

Цитата:

Сообщение от Bydlokoder (Сообщение 787131)
Давайте файл hex

Вот тут можно найти ... Большое начало цифровых приборов на диодных индикаторах. Часть 1.5. Про прошивку микроконтроллера и игрушку ребенку.

Bydlokoder 31.08.2012 22:44

Цитата:

Сообщение от из Риги (Сообщение 787141)
Вот это ... ?

Это исходник, его даже дизассемблировать не нужно, что значительно упрощает дело. Киньте в личку ссылку на файл с исходником, покопаюсь на досуге.

Bydlokoder 31.08.2012 22:46

Цитата:

Сообщение от из Риги (Сообщение 787143)
Вот тут можно найти ...


Нашел, сейчас посмотрю.

из Риги 31.08.2012 22:47

Цитата:

Сообщение от Bydlokoder (Сообщение 787146)
Киньте в личку ссылку на файл с исходником,

Я не умею ... :tehnari_ru_325: Могу дать ссылку в личке на нужный сайт ...

из Риги 31.08.2012 22:56

А идея у меня такая - на основе этого устройства сделать цветомузыку , пусть светики МЕДЛЕННО бегают по этой программе , а ЦВЕТ меняют в зависимости от музыки . Использовать планирую тональные декодеры на LM567 и RGB светики . Нечто похожее мне удалось сделать на индикаторе уровня на AN6884 - "столб" бегает в ритм музыки и меняет цвет от PIC12F629 . Прошивка на "УФО" подходит - но чересчур быстро бегает , а ведь ей еще цвет менять ... На цветомузыку сделанные мной заказы есть - но в основном из России - как светодиодную линейку то выслать (2 метра) ... :tehnari_ru_325:

из Риги 31.08.2012 22:59

Вот она - хочу белые светодиоды распространить на всю линейку , и заставить их менять цвет от музыки ...  

Gruvi 01.09.2012 02:22

Надо было делать линейку тебе гибкую.
Есть вариант сделать линейку со всеми МК как конструктор лего.
Линейка будет собираться из отдельных частей между ними разъём припаяй, допустим на одной пластинке 3 СИДа, далее разъем папа-мама и дальше еще пластинка.

из Риги 01.09.2012 03:03

Вот это примерно я и обдумываю - если удастся реализовать задуманный выше вариант , то предполагаю что можно ... А то что на видео - рассыпуха , шибко много проводов - заказчик не справится с монтажем ...

Bydlokoder 01.09.2012 06:55

Вложений: 2
Нет, с правкой прошивки ничего путного не получилось, слишком запутанная, исходник из восьми файлов. Мозги можно поломать, не зная замысла автора.

Но, в поисках решения зашел на сайт-первоисточник схемы и нашел нечто более интересное. Как оказалось, у автора есть практически такая же схема и прошивка с регулированием скорости переключения светодиодов. Скорость устанавливается подстроечным резистором PR1 и подбором конденсатора C4. Это ссылка на страницу со схемой и описанием на английском PWM LED chaser with variable speed control.
Ниже схема и прошивка в архиве. Прошивку проверил в Proteus, рабочая.

из Риги 01.09.2012 13:26

Цитата:

Сообщение от Bydlokoder (Сообщение 787250)
Но, в поисках решения зашел на сайт-первоисточник схемы и нашел нечто более интересное.

Огромнейшее вам спасибо ! tehno022 Ваша находка мне очень пригодится ! Вот ведь сколько просмотрел в И-нете статей про это устройство - а самый ценный вариант не заметил ... Спасибо !


Часовой пояс GMT +4, время: 11:41.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.