ttt222

синхронные внешние прерывания ATmega64A

6 сообщений в этой теме

ttt222    1

добрый день

уровень знаний микроконтроллеров у меня низкий, и ранее не использовал внешние прерывания.

пишу на ассемблере

суть проблемы, есть переключающая кнопка, после нее стоит  подавитель дребезга на к561ла7, пока кнопка не нажата на ногу микроконтроллера поступает 5В. нажал - 0В

напомню, у атмеги64 8 внешних прерываний, 4 из них ассинхронные, 4 синхронные

если я подключаю кнопку к выводам с ассинхронными прерываниями INT3..INT0 , все работает, микроконтроллер обрабатывает прерывания

подключаю к синхронным выводам INT4...INT7 , не работает. менял настройки регистра EICRB, но бестолку

читал даташит и прочее но так и не понял в чем проблема и как сделать и что необходимо настроить чтобы синхронные прерывания обрабатывались

RESET:
    LDI R16, high(RAMEND)
    OUT SPH, R16
    LDI R16, low(RAMEND)
    OUT SPL, R16
;-------------------------------------------------
    CBI DDRE, 4                       
    SBI PORTE, 4            

    LDI R16, 0B00000000
    STS EICRB, R16                     
    LDI R16, 0B00010000
    OUT EIMSK, R16                     
    SEI
;_______________________________________________
CYCL:
    NOP
    NOP
    JMP CYCL
    


EXT_INT4:
    .........

    RETI

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
Prozac    22

Немножко не в тему, но для чего Вам подавитель дребезга на К561ЛА7? Неужели сложно дребезг программно подавить? Просто, после нажатия кнопки вызываем задержку 100-200 мс, а затем уже обработчик нажатия - вот и все. Так же - при отпускании (ведь при отпускании кнопка тоже дребезжит): дожидаемся "отжатия", потом ныряем в ту же процедуру задержки - и дело в шляпе. Получится, что весь дребезг мы просто переждем - поэтому, задержка должна быть длиннее, чем время дребезга. Я всегда так пишу (кстати, тоже на Асике) - и никаких ЛА7 мне ни разу не потребовалось...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ttt222    1
В 19.10.2017 в 23:55, Prozac сказал:

Немножко не в тему, но для чего Вам подавитель дребезга на К561ЛА7? Неужели сложно дребезг программно подавить? Я всегда так пишу (кстати, тоже на Асике) - и никаких ЛА7 мне ни разу не потребовалось...

ну, а я решил аппаратно подавить, люблю микросхемы паять, думаю почему бы не впаять пару корпусов лишних... и удовольствие получил, и красивее  плата стала.. эстет я

 

кто нибудь расскажет как обрабатывать сихнронные внешние прерывания на atmega 64?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ARV    230
5 часов назад, ttt222 сказал:

как обрабатывать сихнронные внешние прерывания на atmega 64?

Это чо такое - синхронные прерывания?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Sergey-Ufa    518

Вы не определили вектор прерывания EXT_INT4

Так все работает правильно

.org     $00
        rjmp     RESET
.org     $0a
        rjmp     EXT_INT4
 RESET:
    LDI R16, high(RAMEND)
    OUT SPH, R16
    LDI R16, low(RAMEND)
    OUT SPL, R16
;-------------------------------------------------
    CBI DDRE, 4                       
    SBI PORTE, 4            
    LDI R16, 0B00000000
    STS EICRB, R16                     
    LDI R16, 0B00010000
    OUT EIMSK, R16                     
    SEI
;_______________________________________________
CYCL:
    NOP
    NOP
    JMP CYCL
EXT_INT4:
    NOP
    NOP
    RETI

 

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ttt222    1
11 час назад, Sergey-Ufa сказал:

Вы не определили вектор прерывания EXT_INT4

Не, нашел ошибку, из-за невнимательности неправильно выводил результат работы прерывания, но все равно спасибо

13 часа назад, ARV сказал:

синхронные прерывания?

насколько я понял синхронным необходимо чтобы тактовый генератор работал,  асинхронным нет, как то так

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сообщения

    • 5 реле мне кажется меньшее зло, чем то, что внутри 2311 находится. PGA2311 весьма хороший вариант, но никитинский вариант мне нравится больше   Не могу с уверенностью сказать как РГ реализован в этом чипе, но обычно регулировка уровня происходит в ЦФ откуда следует ухудшение разрешающей способности ЦАПа. По сути ухудшается ENOB. Мне кстати едет ЦАП сейчас на 9028)
    • то есть управление РГ посредством ЦАП ?
    • в смысле?) я как раз в его группе вижу бесплатные проекты для повторения.   А в ваш спор не лезу, мне тут делать нечего:D
    • Панель для видеостены Usenda Digital Technologies LTI460HN11  
      Brand Name: USENDA Model Number: LTI460HN11 Type: TFT Application: Indoor Panel Size: 46"  
      Max Resolution: 1920*1080 Viewing Angle Hor:Ver: 178, 178 
      Contrast Ratio: 3000:1 Brightness: 700 cd/m2,  
      Bezel: 3.7mm, HDCP: yes, HDMI: yes, Frequency:60Hz, 
      Signal format: NTSC、PAL、480P、576P、720P、1080I、1080P, built-in splitter: yes, realized 15x15 as largest screens, Picture in picture: Yes, Automatic restoration of work after a power failure:yes  Interfaces: Analog RGB Dsub-15, HDMI 1.4 
      Цена:115000 рублей 
      Сайт: usenda.ru  +74993807574 

      LCD панель Usenda Digital Technologies LTI460HN11  
      Brand Name: USENDA Model Number: LTI460HN11 Type: TFT Application: Indoor Panel Size: 46"  
      Max Resolution: 1920*1080 Viewing Angle Hor:Ver: 178, 178 
      Contrast Ratio: 3000:1 Brightness: 700 cd/m2,  
      Bezel: 3.7mm, HDCP: yes, HDMI: yes, Frequency:60Hz, 
      Signal format: NTSC、PAL、480P、576P、720P、1080I、1080P, built-in splitter: yes, realized 15x15 as largest screens, Picture in picture: Yes, Automatic restoration of work after a power failure:yes  Interfaces: Analog RGB Dsub-15, HDMI 1.4 
      Цена:115000 рублей 
      Сайт: usenda.ru  +74993807574  http://ittechnology.spb.ru
    • А ... боюсь, топикстартер пошлёт перечитать тему. Ну, людей в гугл, Вас - в тему...
    • Не нравится, что у этого РГ: не постоянно выходное сопротивление и зависит от положения уровня, пускать сигнал через несколько реле, нравится чистый мощник с РГ на стороне источника (но тут есть и известные минусы).
      Альтернатива - на PGA2311 - это АНАЛОГОВЫЙ РГ.
      Но я хочу ЦАП на ES9038(28)Pro с РГ внутри микросхемы ЦАП.
    • Ставьте миллеровский конденсатор, как крайняя мера. С коллектора т7 на базу т8 - 51-82 пф.