|
Светофор в "Си"для контроллера с SIG_INTERRUPT0 |
|
|
|
Jan 31 2009, 12:18
|
Участник

Группа: Новичок
Сообщений: 18
Регистрация: 31-01-09
Пользователь №: 44 210

|
Такое дело надо спрограмировать светофор. Есть 2 микроконтроллера которые соединяются друг с другом и на каждый из них зашивается одна и таже программаю. Программа почти готова, но есть одна проблемка, у меня неправильно вызыватся SIG_INTERRUPT0. Буду ОЧЕНЬ благодарен любой помощи !!!! Зарание благодарю. Так выглядит борт :  CODE #include <stdint> #include <avr> #include <avr> #include <avr> #include <avr> // In/Outputs
short cntr = 0; int a=0; int b=0;
void lampochki() { if(PORTB==1) { PORTB=3; } else if(PORTB==3){ PORTB=4; }else if(PORTB==4) { PORTB=2; }else if(PORTB==2) { PORTB=1; a=1; PORTC = 1; //long i; //for(i = 0; i < 1000000; i++); } PORTC = 0; }
int main() { DDRB=7; DDRD=0; PORTB=1; DDRC = 7; PORTC=0; TCNT0 = 244; cntr = 28; TCCR0 = 5; TIMSK = 1; GICR = 64; // interrupt port D0 ein MCUCR = 1; // oder 2 sei();
while(1){} }
SIGNAL(SIG_OVERFLOW0){ if(!(cntr--)) { TCNT0=244; cntr=28; if(a==0) lampochki(); } }
SIGNAL(SIG_INTERRUPT0){ a=0; }
|
|
|
|
|
 |
Ответов
|
Feb 2 2009, 18:24
|
Участник

Группа: Новичок
Сообщений: 18
Регистрация: 31-01-09
Пользователь №: 44 210

|
Цитата(aesok @ Feb 2 2009, 21:28)  Ах..... не умеете Вы учиться на чужих ошибках. Будете учиться на своих, по крайней мере как делать правильно Вам расказали. На своих всегда интерестнее ... Всёравно спасибо, для меня щас главное что всё работает!!!!
Причина редактирования: Уменьшение размера цитаты. Цитируя всего два предложения убирайте из цитаты ненужный исходник!
|
|
|
|
Сообщений в этой теме
konstatinopol Светофор в "Си"для контроллера с SIG_INTERRUPT0 Jan 31 2009, 12:18 _Pasha Цитата(konstatinopol @ Jan 31 2009, 15:18... Jan 31 2009, 13:55 aesok Цитата(_Pasha @ Jan 31 2009, 16:55) Надо ... Jan 31 2009, 14:09 Сергей Борщ Цитата(konstatinopol @ Jan 31 2009, 14:18... Jan 31 2009, 14:19 konstatinopol _Pasha что вы подразумеваете под " программа ... Jan 31 2009, 15:01 _Pasha Цитата(konstatinopol @ Jan 31 2009, 19:01... Jan 31 2009, 15:25  konstatinopol Цитата(_Pasha @ Jan 31 2009, 19:25) То, ч... Jan 31 2009, 15:37   Сергей Борщ Цитата(konstatinopol @ Jan 31 2009, 17:37... Jan 31 2009, 16:16 aesok Цитата(konstatinopol @ Jan 31 2009, 18:01... Jan 31 2009, 16:24  konstatinopol Спасибо Анатолий, теперь я понял что вы имели введ... Jan 31 2009, 16:29  rvk Цитата(aesok @ Jan 31 2009, 19:24) Время ... Jan 31 2009, 16:58   singlskv Цитата(rvk @ Jan 31 2009, 19:58) Вот тако... Jan 31 2009, 21:46  Qwertty Цитата(aesok @ Jan 31 2009, 19:24) Время ... Jan 31 2009, 19:40   aesok Цитата(Qwertty @ Jan 31 2009, 22:40) Вовс... Jan 31 2009, 21:00 rvk Если у Вас трудности с прерыванием, зачем его вооб... Jan 31 2009, 15:33 rvk Про задержку верно, только вместо 10000 поставить ... Jan 31 2009, 15:44 konstatinopol Такая ситуация что в данный момент я немогу опробо... Jan 31 2009, 16:18 Rst7 Цитатаfor(i=0;i<100;i++){
PORTC=rand();
}
Не, ... Jan 31 2009, 22:07 singlskv Цитата(Rst7 @ Feb 1 2009, 01:07) Вообще-т... Jan 31 2009, 22:13 Rst7 Цитатачерез пару страничек обсуждений
Будем счита... Jan 31 2009, 22:20 singlskv Цитата(Rst7 @ Feb 1 2009, 01:20) Будем сч... Jan 31 2009, 22:23 delamoure 2Rst7
"for(i=0;i<100;i++){*((volatile int*... Feb 1 2009, 01:14 konstatinopol Цитата(singlskv @ Feb 1 2009, 01:13) Ну в... Feb 1 2009, 13:12 SysRq Цитата(konstatinopol @ Feb 1 2009, 16:12)... Feb 1 2009, 13:45 rvk Цитата(konstatinopol @ Feb 1 2009, 16:12)... Feb 1 2009, 15:13 konstatinopol Всё работает не так как нужно, а именно :
первый б... Feb 1 2009, 15:30 aesok Зачем Вы переменую "a" сделали локальной... Feb 1 2009, 15:44 aesok У Вас прерывание настроенно по обеим фронтам MCUCR... Feb 1 2009, 22:11 konstatinopol Цитата(aesok @ Feb 1 2009, 18:44) Зачем В... Feb 1 2009, 15:54 SysRq А у вас ATMega8? Или 48? Feb 1 2009, 17:25 konstatinopol Цитата(SysRq @ Feb 1 2009, 21:25) Если у ... Feb 1 2009, 17:36 SysRq Я углядел что на картинке m48 и выше, а m8 не заме... Feb 1 2009, 17:52 konstatinopol Цитата(SysRq @ Feb 1 2009, 20:52) Я угляд... Feb 1 2009, 18:04 konstatinopol Цитата(aesok @ Feb 2 2009, 01:11) У Вас п... Feb 1 2009, 22:15 aesok Цитата(konstatinopol @ Feb 2 2009, 01:15)... Feb 1 2009, 22:34 konstatinopol Цитата(aesok @ Feb 2 2009, 01:34) Биты IS... Feb 1 2009, 23:10 _Pasha Цитата(konstatinopol @ Feb 2 2009, 03:10)... Feb 1 2009, 23:27  SysRq Цитата(_Pasha @ Feb 2 2009, 02:27) Если б... Feb 2 2009, 00:05 konstatinopol Господа благодарю всех за содействие программа раб... Feb 2 2009, 13:09 aesok Код#include <stdint.h>
#include <avr/i... Feb 2 2009, 17:28
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|