Перейти к содержанию

Paul Mort

Members
  • Постов

    2
  • Зарегистрирован

  • Посещение

Информация

  • Город
    Челябинск

Электроника

  • Стаж в электронике
    3-5 лет
  • Сфера радиоэлектроники
    Электроснабжение ж\д

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

Достижения Paul Mort

Новичок

Новичок (1/14)

  • Неделя на форуме
  • Месяц на форуме
  • Год на форуме

Последние значки

0

Репутация

  1. Товарищи! подскажите? в протеусе на команде GOTO MAIN он переходит на GOTO D1 (в подпрограмме задержки), всё перекопал, всё равно туда уходит постоянно, даже если задержку делать не таймером, а циклами в mplab при отладке всё работает как надо LIST p=16f873 __CONFIG 03FF1H STATUS EQU 03H PORTB EQU 06H TRISB EQU 86H TMR1L EQU 0EH ;младший байт таймера TMR1H EQU 0FH ;старший байт таймера PIR1 EQU 0CH ;тут флаг переполнения таймера TMRN EQU 21H T1CON EQU 10H ORG 0x0000 GOTO MAIN ORG 0x0100 MAIN CLRF PORTB BCF STATUS, 0 ;убираем С BCF STATUS, 2 ;убираем Z BSF STATUS, 5 CLRF TRISB ;portb выход BCF STATUS, 5 BSF T1CON,4 ;предделитель 1/8 BSF T1CON,5 RIGHT BTFSC STATUS,0 ;проверка флага С GOTO LEFT ;С поднят BSF PORTB,0 CALL DELAY MOVF PORTB, 0 ;значение огоньков в акум CLRF PORTB ;огоньки пропадают CALL DELAY ;вызов задержки MOVWF PORTB ;возвращаем сохранённое значение огоньков RLF PORTB ;вращаем порт GOTO RIGHT LEFT BCF STATUS, 0 ;очистка С MOVF PORTB,0 ;знакомая уже процедура CLRF PORTB CALL DELAY MOVWF PORTB RLF PORTB CALL DELAY MOVF PORTB,1 ;здесь проверяем порт на 0, сохраняем самого в себя BTFSS STATUS, 2 ;если portb = 0, поднимается флаг Z, проверяем его GOTO LEFT BCF STATUS, 0 ;после вращения еденичка из 7го бита уходит в бит С, очищаем его GOTO RIGHT ;всё заново DELAY MOVLW 02H ;переполнения ожидаем 2 раза MOVWF TMRN D2 CLRF TMR1L CLRF TMR1H BSF T1CON,0 ;запуск таймера D1 BTFSS PIR1, 0 ;ждём флаг переполнения GOTO D1 BCF T1CON,0 ;остановка таймера BCF PIR1, 0 ;очистка флага DECFSZ TMRN ;декрементируем счётчик, если 0 пропускаем след ком GOTO D2 RETURN END
  2. Доброго времени суток, господа. В институте узнал, что есть такое направление в электронике, как программирование МК, изучали там PIC16, к слову. В рамках учебной программы справлялся с задачами на отлично и решил, что хочу копнуть глубже в эту область. Собрал на досуге горе аналог отладочной платы, программатор, побаловался с ними, да и стало скучно. И, собственно вопрос в следующем: Надоело гонять лампочки туда сюда, цифры на индикаторе, да тыкать кнопки. Как двинуться дальше? Где взять, скажем, задачи, в порядке возрастания сложности? Может литературу посоветуете? Всякие мп3 плееры и lcd дисплеи, интересно, конечно, но пока для меня сложно. Однако со временем хочется охватить возможности МК по максимуму, USART например и проч. Спасибо.
×
×
  • Создать...