roboforum.ru

Технический форум по робототехнике.


KITT

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

KITT

Сообщение Boris317 » 25 ноя 2006, 22:26

Здравствуйте, я почти сделал мигалку как у Китта в сериале Рыцарь дорог. Но есть проблема: при нажатии на кнопки выбора скорости(5,10,30,80) лампочки мигают с выбранной скорость, но когда я отпускаю кнопки частота становится прежней(30). В чём может быть дело?

#include <tiny2313.h>
#include <delay.h>

void prov(int n)
{
if(PIND.2==0)
n=5;  
if(PIND.3==0)
n=10;  
if(PIND.4==0)
n=30;  
if(PIND.5==0)
n=80;  
delay_ms(n);
}

void main(void)
{
int n;
n=30;

PORTB=0x00;
DDRB=0xFF;

PORTD=0xFF;
DDRD=0x00;

while (1)
{
 PORTB=1;
 prov(n);
 PORTB=2;
 prov(n);
 PORTB=4;
 prov(n);
 PORTB=8;
 prov(n);
 PORTB=16;
 prov(n);
 PORTB=32;
 prov(n);
 PORTB=64;
 prov(n);
 PORTB=128;
 prov(n);
 PORTB=64;
 prov(n);
 PORTB=32;
 prov(n);
 PORTB=16;
 prov(n);
 PORTB=8;
 prov(n);
 PORTB=4;
 prov(n);
 PORTB=2;
 prov(n);
};
}
Аватара пользователя
Boris317
 
Сообщения: 21
Зарегистрирован: 12 ноя 2006, 21:30
Откуда: Москва

Сообщение =DeaD= » 26 ноя 2006, 01:26

#include <tiny2313.h>
#include <delay.h>

int n;

void prov()
{
if(PIND.2==0)
n=5;  
if(PIND.3==0)
n=10;  
if(PIND.4==0)
n=30;  
if(PIND.5==0)
n=80;  
delay_ms(n);
}

void main(void)
{
n=30;

PORTB=0x00;
DDRB=0xFF;

PORTD=0xFF;
DDRD=0x00;

while (1)
{
PORTB=1;
prov();
PORTB=2;
prov();
PORTB=4;
prov();
PORTB=8;
prov();
PORTB=16;
prov();
PORTB=32;
prov();
PORTB=64;
prov();
PORTB=128;
prov();
PORTB=64;
prov();
PORTB=32;
prov();
PORTB=16;
prov();
PORTB=8;
prov();
PORTB=4;
prov();
PORTB=2;
prov();
};
}
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Сообщение Карлсон » 26 ноя 2006, 01:57

китовскую мигалку можно собрать на счетчике джонсона - 4017.
одна из схем вот тут http://www.talkingelectronics.com/Proje ... nerP2.html

и не нужен контроллер :)

только вместо мультивибратора лучше воткнуть NE555.
с ней тоже есть схемы.
Аватара пользователя
Карлсон
 
Сообщения: 114
Зарегистрирован: 30 окт 2005, 13:10
Откуда: Москва

Сообщение Boris317 » 26 ноя 2006, 02:36

Огромное спасибо!
Аватара пользователя
Boris317
 
Сообщения: 21
Зарегистрирован: 12 ноя 2006, 21:30
Откуда: Москва


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9