Микроконтроллеры | Ликбез по программированию PIC |
|
---|---|---|
|
||
Что именно? |
|
|
picmaniac: Что именно? |
|
|
Написал кусок программы (проверка первого условия), может быть коряво и неправильно, в симуляторе еще не проверял:
Подпрограмма Light1:
И описание констант:
|
|
|
А вот с шапкой. |
|
|
Дописал до конца, в MPLAB'е пока не пробовал. Буду пробовать вечером. Исходник прилагаю. Полагаю что это не лучший и далеко не единственный вариант. |
|
|
Смотрю я на нашу блок-схему http://pro-radio.ru/user/uploads/35460.gif и вижу кое-какие несоответствия: Здесь должно быть считывание с PORTB. Ячейка TEMP=PORTB & F0 состоит из двух команд, сначала считать PORTB а затем поразрядное "И" с константой F0h, что и сделано строкой ниже andlw Mask1 ;поразрядное "И" с константой F0h и в конце: И ещё, для команды movf PORTB, надо ставить указатель адреса результата (проверено), то есть movf PORTB,0 |
|
|
gan, спасибо за замечания, буду разбираться. Если еще что-нибудь найдете, сообщите. Вывод оформил подпрограммами на случай усовешенствования программы, да и просто для тренировки. Кстати я там забыл подключить подтягивающие резисторы на входы. |
|
|
Splav56: да и просто для тренировки |
|
|
Что-то я совсем запутался с этим Портом В. Куда проще было бы входы сунуть на Порт А. Но чтобы понять, где я напортачил, давайте разберем мой асм не только с указанием ошибок, но и правильных решений этих ошибочных мест. Иначе количество вопросов не уменьшается, а только увеличивается. gan: А если тренироваться, то по-крупному. Не, давайте сначала по мелочам потренируемся, а то мозги уже итак набекрень. |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |