Как преобразовать файлы *.inc в *.hex ?

ILUHA
toxa:

В любом случае, будет проще не дизассемблировать, а посмотреть исходники регуляторов с этого сайта, разобраться и написать (или адаптировать) прошивку для PIC16F84. Ошибок по-любому будет меньше.

Фишка в другом … в регуляторе с этого сайта на 509 pic не используются прерывания, а в f84 и в f675 они есть и это облегчает жизнь, поэтому аддаптировать бессысленно. А диссасемблировать moto_hex и сам пробывал , но терпенья не хватило, да и надобность отпала.

toxa
ILUHA

Фишка в другом … в регуляторе с этого сайта на 509 pic не используются прерывания, а в f84 и в f675 они есть и это облегчает жизнь, поэтому аддаптировать бессысленно.

Во-первых регуляторов на rcdeisgn ДВА: один с реверсом, другой без. Тот что с реверсом, цитирую:

Регулятор скорости с реверсом

Программа регулятора рассчитана под микроконтроллер PIC 12 F 675 или PIC 12 F 629. Это позволяет при необходимости менять характеристики прошивки. В принципе, можно использовать и PIC 12 C 509.

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

В-третьих, тип контроллера никак не указывает на использование в микропрограмме прерываний (только потенциальную возможность), наличие “защит” и прочее, а так же культуру программирования и отсутствие глюков.

AlexAndr=

Схемы регуляторов скорости на PIC12F675, PIC12C509 не обладают возможностью изменить их рабочие параметры(задать нейтраль, расход по газу и реверсу) в “полевых условиях”(без компьютера и програматора), а вот регулятор скорости на PIC16F84 адаптируется простыми нажатиями его кнопки.
А что касается нужных мне изменений в прошивке, они в основном сводятся к инвертированию сигналов на выходах микроконтроллера (выводы 17,18).
В разработанной мною схеме(приведён упрощённый вариант), нужно чтоб в режиме нейтрали на выводах 17,18 присуцтвовали логические единици(+5В), а при подаче каманды газ или тормоз, соответствующий вывод менял состояние на логический ноль. Вот для этого и нужно подправить прошивку.
Подскажите, неужели внести такое изменение в прошивку невозможно?
(Для сравнения привожу стандартную схему регулятора скорости на PIC16F84(там в режиме нейтрали на выводах 17,18 присуцтвуют логические ноли)).

romychs

А никогда не задумывались, что будет, если одновременно на выходах 17 и 18 в вашей схеме появятся “1”? И в каком состоянии будут в этот момент оба силовых транзистора?
Потом, вместо “тормоза” можно поставить транзистор “P” типа (многие так и делают), особого качества от него не требуется, но позволит вам убрать “утроитель”. Современные N- транзисторы не требуют таких высокий напряжений на затворе, по крайней мере, легко найти те, которые уже при напряжении 4,5 В будут открываться как надо (т.е. иметь маленькое Rdson).

И потом, вам нужен реверс или нет? Из вашего сообщения следует, что нужен, но на схеме Вы от него избавились…

ILUHA
toxa:

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

В-третьих, тип контроллера никак не указывает на использование в микропрограмме прерываний (только потенциальную возможность), наличие “защит” и прочее, а так же культуру программирования и отсутствие глюков.

На самом деле цель была сделать на 675-ом некий симбиоз рега с этого сайта и того на 84-ом( програмирование нейтрали) +програмирование кол-ва банок с передатчика для мягкого отключения мотора при снижении напряжения не банках. А написать линейную прогу с такими функциями это надо очень исхитриться да и памяти по-больше.
просто времени нет изобретать колесо, а вот готовые модули сшить во едино это проще и быстрее( если только они грамотно написаны)
Вообще в плане красивого и лаконичного написания ИМХО выделяется прога на EAGLE MIXER.

AlexAndr=

А никогда не задумывались, что будет, если одновременно на выходах 17 и 18 в вашей схеме появятся “1”? И в каком состоянии будут в этот момент оба силовых транзистора?

Уточняю- моя схема справа(без оптронов).Мне как раз и надо чтоб при подаче команды “нейтраль” одновременно на выходах 17 и 18 присуцтвовала “1”.Тогда оба биполярных транзистора будут открыты и через них “минус” поступит на затворы полевых транзисторов, закрывая их.
Вместо “тормозных” транзисторов N-типа действительно можно поставить транзисторы P-типа. Тогда придётся инвентировать только один вывод микроконтроллера, но прошивку править всё равно придётся.
Кстати, какие бы вы посоветовали транзисторы на “газ” и “тормоз” для управления автомодельным двигателем на 10-13 витков, если в моём старом регуляторе (силовая часть схемы как в приведённой выше “моей” схеме) транзисторы “газа” IRF1010N (4 запаралеленых) были чуть тёплыми, а “тормозные” IRF1010N (2 запаралеленых) грелись что аж скотч расплавляли?

Добавлено

Дизасемблировать *.hex в *.asm я уже научился, а чем их теперь после редактирования из *.asm в *.hex преабразовать?

ILUHA
romychs:

Alex@ndr
Мне кажется, я знаю, о какой прошивке идет речь, о реверсивном регуляторе, который мы не раз здесь обсуждали. Я ее в свое время дизассемблировал как раз IDA. К сожалению, исходника не осталось, я в ней ничего для себя интересного не нашел, потому и не сохранил. Если вы ничего о принципе построения регуляторов и ассемблер, архитектуру для PIC не знаете, будет достаточно сложно понять, что там к чему.

А может все таки есть у кого дизассемблированный приведенный к человеческому виду асм этой прошивки Moto_hex16.

romychs

Ту “Тормозные” у вас по видимому грелись из за того, что “встроенные” в полевики диоды, как многие отмечают, не того качества. Попробуй использовать внешний диод Шоттки в параллель мотору.

Назад ассемблируется MPASM, но гораздо удобнее это сделать в MPLAB, взять можно на www.microchip.com, www.microchip.ru

Нужные транзисторы можно подобрать на www.irf.com воспользовавшись параметрическим поиском.

dejavue…