Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Любая программа, довольно сильно привязанная к железу МК, так легко не сдастся. Вы пробовали переводить программу с двухтаймерного микроконтроллера на однотаймерный, причём оба таймера в программе использовались? А ещё может понадобиться эмулировать UARTы из-за их нехватки в новом МК...
А бывают и реальные песцы. Предположим, есть некоторая глобальная переменная, используемая и в фоне, и в прерываниях. В первой версии программы (для старого МК) все операции с этой переменной (например, её инкремент) компилятор реализовывал атомарно, напр., одной инструкцией
inc [MyVar],
а для нового МК и нового компилятора эта же инструкция уже не будет атомарной, напр.,
mov Acc,[MyVar]
inc Acc
mov [MyVar],Acc
А вот вспомните ли Вы при переносе программы на новый МК эту особенность? Вряд ли. И обнаружится это не сразу, глючить будет нечасто, но регулярно.
Для себя я сделал вывод: программа для МК создаётся в контексте аппаратных особенностей железа МК и особенностей компилятора. Нет такого надёжного автоматического способа переноса программы с одного МК на другой, при котором Вам не пришлось бы просматривать КАЖДУЮ строчку Вашего кода. А раз так, то напишите программу заново, это не займёт много времени (т.к. перед Вами уже лежит "образец программы" для предыдущего МК), зато Вы будете гарантированы от глубоко запрятанных ошибок.
Составить ответ | Вернуться на конференцию.
Ответы
- Хуйня. Используй запрещение прерываний. А вообще, если так всё происходит, то это запихивание слона в спичечный коробок. У меня например тот же самый 1-провод на всех МС работает, нужно только времянки подогнать. - Звероящер (09.10.2009, 18:57:24 89.251.104.242, пустое)
- Нда... Два таймера... Их обработчики хотябы страницу текста занимают? - Trashy (09.10.2009, 18:16:25 192.168.2.66,213.167.60.22, пустое)
- По опыту таскания программ между 51, AVR, MSP430, ARM7, ARM9. Таскать можно. Проблемы конечно есть, но решаемые. - vmp (09.10.2009, 18:04:19 10.0.1.100,87.245.155.198, 725 байт)
- "зато Вы будете гарантированы от глубоко запрятанных ошибок"))) это не глубоко запрятаная ошибка... ) гарантию от ошибок даёт тока высшая форма труда - безделье! ) - basilmak (09.10.2009, 17:52:58 82.142.173.231, пустое)