Jump to content

Search the Community

Showing results for tags 'PIC12F683'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Вопрос-Ответ. Для начинающих
    • Песочница (Q&A)
    • Дайте схему!
    • Школьникам и студентам
    • Начинающим
    • Паяльник TV
    • Обсуждение материалов с сайта
  • Радиоэлектроника для профессионалов
    • Световые эффекты и LED
    • Роботы и модели на ДУ-управлении
    • Автоматика
    • Самодельные устройства к компьютеру
    • Программное обеспечение
    • Автомобильная электроника
    • Системы охраны и наблюдения. Личная безопасность
    • Питание
    • Электрика
    • Промышленная электроника
    • Ремонт
    • Металлоискатели
    • Измерительная техника
    • Мастерская радиолюбителя
    • Сотовая связь
    • Спутниковое ТВ
    • КВ и УКВ радиосвязь
    • Жучки
    • Телефония и фрикинг
    • Высокое напряжение
    • Идеи и технологии будущего
    • Справочная радиоэлементов
    • Литература
    • Разное
  • Аудио
    • FAQ, Технологии и компоненты
    • Для начинающих
    • Источники звука
    • Предусилители, темброблоки, фильтры
    • Питание аудио аппаратуры
    • Усилители мощности
    • Акустические системы
    • Авто-аудио
    • Ламповая техника
    • Гитарное оборудование
    • Прочее
  • Микроконтроллеры
  • Товары и услуги
  • Разное
  • Переделки's ATX->ЛБП
  • Переделки's разные темы
  • Киловольты юмора's Юмор в youtube

Blogs

There are no results to display.

There are no results to display.

Marker Groups

  • Пользователи форума

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


ICQ


Skype


Интересы


Город


Сфера радиоэлектроники


Оборудование

Found 1 result

  1. Добрый день. Пытаюсь сделать прерывания по изменению GP0. Ставлю GP0 на вход, разрешаю прерывания по изменению GPIO, разрешаю глобальные прерывания, ставлю бит IOC0 в 1. Но при изменении GP0 прерывание не срабатывает. Прерывание по переполнению таймера срабатывает отлично. Что я делаю не так? Прикладываю код программы. Если этого недостаточно, чтобы понять проблему, приложил полный код программы файлом. list p=12f683 #include "p12f683.inc" __config 0x3FF4 W_TEMP EQU 0x40 STATUS_TEMP EQU 0x41 flag EQU 0x42 org 0 goto start ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; org 0x04 MOVWF W_TEMP SWAPF STATUS,W MOVWF STATUS_TEMP ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;программа обработки прерываний ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SWAPF STATUS_TEMP,W MOVWF STATUS SWAPF W_TEMP,F SWAPF W_TEMP,W retfie ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; start clrf GPIO movlw 0x07 movwf CMCON0 bsf STATUS,RP0 ;1 bank movlw b'00001001' movwf TRISIO movlw b'10000001' movwf OPTION_REG bcf INTCON,T0IF bsf INTCON,T0IE movf GPIO,w bcf INTCON,GPIF bsf INTCON,GPIE bsf INTCON,GIE movlw b'00000001' movwf IOC bcf STATUS,RP0 ;0 bank movlw .0 movwf TMR0 ask btfss flag,4 ;данный бит устанавливается в программе обработки прерываний goto ask bcf flag,4 call indicate ;подпрограмма indicate выводит значение, полученное в результате ;обработки прерывания, на индикаторы goto ask reciever1.asm
×
×
  • Create New...