Микроконтроллеры | Ликбез по программированию PIC |
|
---|---|---|
Вот последний вариант асма. |
|
|
movlw b'11110000' ; До подчёркивания правильно, после подчёркивания я бы сделал так: |
|
|
Если использовать константы, то надо давать им осмысленные имена, например |
|
|
Мы всё же пишем учебную программу с расчётом на тех, кто только начал осваивать ассемблер. Поэтому самый первый вариант программы я предлагаю сделать максимально простым и приближенным к алгоритму. Без подпрограмм, использования констант и т.п. Безусловно, все эти "хитрости" будут очень полезны в дальнейшем. Но пока, для понимания работы программы по алгоритму, я сделал всё максимально упрощенно. Кроме того, максимум комментариев и разбиение кода на участки. Предлагаемый исходник - в приложении. |
|
|
picmaniac: Мы всё же пишем учебную программу с расчётом на тех, кто только начал осваивать ассемблер. Согласен. Но я тоже из тех, кто только начал осваивать ассемблер. Наваял вот! Но где-то про***. Конечно я разберусь, для этого нужно лишь время, но прошу товарищей, имеющих опыт в программировании ткнуть меня мордой в *****, чтобы мне немножко облегчить жизнь. gan, вам отдельное спасибо, учту все ваши замечания. picmaniac: Предлагаемый исходник - в приложении ОК! Работаем сначала по Вашему исходнику. Потом предлагаю перейти к моему. Затем отметить остальные возможные варианты решения этой задачи. Это весьма интересно и поучительно. Главное, давайте не торопиться, масса вопросов возникает. |
|
|
Так и быть, выкладываю свой вариант (без шапки). Сразу уточняю, процедуры прерывания нет, зачем описывать прерывание если его нет и не предвидится в данном проекте. |
|
|
To picmaniac: Вопрос №1: в чем "сермяжная" правда этих строк:
|
|
|
В комментариях следует дополнить то, что раз в программе не используется таймер TMR0 и в слове конфигурации отключен WDT и не надо конфигурировать предделитель, то вместо установки в ноль только бита 7 (-RBPU) мы можем использовать байт-ориентированную команду загрузки 8-битной константы: movlw B'00000000' |
|
|
Splav56, тыкать Вас в ***** никто не будет, я искренне надеюсь. Ибо совершенно не за что. Скорее наоборот, респект Вам за настойчивое стремление получше разобраться. Я лишь пытаюсь с самого начала показать наработанные мной за два года хорошие (ИМХО) привычки в программировании. Если они понравятся уважаемым участникам, то возьмём их на вооружение. Так, я уже погонял написанную программу в симуляторе. Всё работает ОК. А вот и проект для PROTEUS: Отвечаю на вопрос о приведении в соответствие защелок. Команда |
|
|
ОК! Принято к сведению. |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |