И как элементароно заставить его работать?
- Код: Выделить всё • Развернуть
#include <mega8.h>
void main()
{
DDRC = 0x88;
DDRD = 0x40;
if (PINC.0 == 0)
PORTC.0 = 1;
else
PORTC.5 = 1;
}
roboforum.ruТехнический форум по робототехнике. |
|
|
#include <mega8.h>
void main()
{
DDRC = 0x88;
DDRD = 0x40;
if (PINC.0 == 0)
PORTC.0 = 1;
else
PORTC.5 = 1;
}
while(tsop==1); // ждем "0"
led=1; // зажигаем индикацию
#include <mega8.h>
#include <delay.h>
void main()
{
DDRC = 0xff;
DDRD = 0x70;
while(PIND.0 == 1); // ждем "0"
PORTC.5 = 1; // зажигаем индикацию
}
При включении питания диод загорается,
while(1)// крутимся в цикле
{
if(PIND.0 == 0) // пришел "0"
{
PORTC.5 = 1; // зажигаем индикацию
delay(1..2sec); // чтобы успеть заметить
}
PORTC.5 = 0; // гасим
}// конец цикла
только иногда светодиод самопроизвольно загорается - помехи наверное какие нибудь.
#include <mega8.h>
#include <delay.h>
void main()
{
DDRC = 0xff;
DDRD = 0x02;
DDRB = 0xff;
PORTB = 0x00;
PORTD.1 = 1;
while(1){ // цикл
if (PIND.0 == 0){ // пришел "0"
PORTC.5 = 1; // зажигаем индикацию
delay_ms(100); // чтобы успеть заметить
}
PORTC.5 = 0; // гасим
}}// конец цикла
while(1)// цикл
{
PORTC.6 = 1; // зажигаем ИК диод
delay_us(13); // половинка периода
PORTC.6 = 0; // гасим
delay_us(13);
}
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11