реклама на сайте
подробности

 
 
> Внешнии прерывания atmega8L, трабл с перрыванием
failguru
сообщение Nov 9 2011, 21:05
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 1-11-11
Пользователь №: 68 094



Прописал прерывание по спаду на INT0, а оно вызывается два раза подрят, причем когда отсоединяю землю еще два раза, пробовал и высокий уровень через 5кОм, и задержку менять, ничего не помогает(((( пишет подряд две "G"
Код
#include <io.h>
#include <delay.h>
extern void wrlcd(int rsi, int rwi, int arg);
extern void initlcd();
int i=0;
char fl=1;
interrupt [EXT_INT0] int_0(void){
     wrlcd(1,0,(int)'G');
    delay_ms(200);
}
void main(){
    delay_ms(100);
    initlcd();
        wrlcd(1,0,(int)'E');
        wrlcd(1,0,(int)'C');
        DDRD.2=0;               //порт с INT0 на вход
        PORTD.2=1;              //подтяжка
        MCUCR=0b00000010;       //прерывание по спаду
        GICR=0b01000000;        //врубаю INT0
        #asm("sei")
        while(1){
            delay_ms(200);
        }
}

ХЭЛП
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
failguru
сообщение Nov 9 2011, 21:20
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 1-11-11
Пользователь №: 68 094



что делать? как же кнопки делают на INT0 INT1 wacko.gif
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Nov 9 2011, 21:48
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(failguru @ Nov 10 2011, 01:20) *
что делать? как же кнопки делают на INT0 INT1 wacko.gif

Для кнопок совсем не нужны INTx, если только они не служат для пробуждения процессора из спячки. Обычно кнопки опрашиваются по таймеру с программным антидребезгом.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- failguru   Внешнии прерывания atmega8L   Nov 9 2011, 21:05
- - aaarrr   Цитата(failguru @ Nov 10 2011, 01:05) оно...   Nov 9 2011, 21:08
- - failguru   ничесе дребезг) задержка 200милисек!!!   Nov 9 2011, 21:10
|- - aaarrr   Цитата(failguru @ Nov 10 2011, 01:10) нич...   Nov 9 2011, 21:14
|- - x736C   Таймаут по таймеру и маскирование прерываний INT0,...   Nov 9 2011, 21:46
|- - ILYAUL   Цитата(aaarrr @ Nov 10 2011, 01:48) Для к...   Nov 10 2011, 05:15
- - failguru   ЦитатаТаймаут по таймеру и маскирование прерываний...   Nov 10 2011, 07:53
|- - ILYAUL   Цитата(failguru @ Nov 10 2011, 11:53) есл...   Nov 10 2011, 09:22
- - failguru   Код#include <io.h> #include <delay.h...   Nov 10 2011, 09:55
|- - Палыч   Дребезг контактов можно подавить двумя способами; ...   Nov 10 2011, 10:11
|- - rx3apf   Цитата(Палыч @ Nov 10 2011, 14:11) 3. Пер...   Nov 10 2011, 10:21
||- - Палыч   Цитата(rx3apf @ Nov 10 2011, 14:21) Не ну...   Nov 10 2011, 16:03
||- - aaarrr   Цитата(Палыч @ Nov 10 2011, 20:03) Не все...   Nov 10 2011, 16:08
|||- - Палыч   Цитата(aaarrr @ Nov 10 2011, 20:08) Или у...   Nov 10 2011, 16:26
|||- - ILYAUL   Цитата(Палыч @ Nov 10 2011, 20:26) Бывает...   Nov 10 2011, 18:01
|||- - aaarrr   Цитата(Палыч @ Nov 10 2011, 20:26) Пару-т...   Nov 10 2011, 18:40
||- - rx3apf   Цитата(Палыч @ Nov 10 2011, 20:03) При др...   Nov 10 2011, 16:18
|- - aaarrr   Цитата(Палыч @ Nov 10 2011, 14:11) 2. Про...   Nov 10 2011, 12:52
- - failguru   да, в этом дело похоже, что дожидается. а как сбро...   Nov 10 2011, 12:46
|- - rx3apf   Цитата(failguru @ Nov 10 2011, 16:46) да,...   Nov 10 2011, 13:15
- - failguru   Вот в таком варианте работает. Странно почему надо...   Nov 10 2011, 13:31
|- - rx3apf   Цитата(failguru @ Nov 10 2011, 17:31) Два...   Nov 10 2011, 13:39
|- - rx3apf   Цитата(failguru @ Nov 10 2011, 17:31) Вот...   Nov 10 2011, 14:21
- - failguru   уже два раза не пишет, все ок. теперь осталось тол...   Nov 10 2011, 13:54
- - ILYAUL   Цитата(failguru @ Nov 10 2011, 17:54) уже...   Nov 10 2011, 14:13


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 15:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01384 секунд с 7
ELECTRONIX ©2004-2016