Стандартные решения
Метки: AVR, программирование, схема, решение задачи
![]() |
|
ДЕНИС ЦИНИН
26-12-2010 19:24 (ссылка)
Re: Стандартные решения
Кто как борется с "Дребезгом контактов?"
Комментарии запрещены
Лебедев Михаил
26-12-2010 20:17 (ссылка)
Re: Стандартные решения
Я ставлю триггер на микросхеме 555 или программным путем-задержка.
Комментарии запрещены
ДЕНИС ЦИНИН
26-12-2010 20:26 (ссылка)
Re: Стандартные решения
А какой гистерезис получается если ставишь микросхему ???
А как сделать программную задержку для меню в котором одни кнопки изменяют значение параметра , а другие делают переход к следующему параметру??? прошу выложить пример кода на си
А как сделать программную задержку для меню в котором одни кнопки изменяют значение параметра , а другие делают переход к следующему параметру??? прошу выложить пример кода на си
Комментарии запрещены

ДЕНИС ЦИНИН
27-12-2010 19:44 (ссылка)
Re: Стандартные решения
Интересно было бы посмотреть (Динамическую индикацию на 7 сегм. инд. ; контрастность для LCD на шим и не только; и еще конечно протоколы TWI,UART,USART,SPI,USB ), вот тот небольшой список который я хочу изучить в ближайшее время и надеюсь что вы все мне поможете изучить...А еще всем тем кто в этом заинтересован и наткнется на этот пост
Комментарии запрещены
Лебедев Михаил
02-01-2011 13:14 (ссылка)
Re: Стандартные решения
http://myrobot.ru/wiki/inde...
Вот прога для устройства из видео:
/************************************************
Проект: светофор
*************************************************/
#include
#include
#define F_CPU 8000000UL // 8 MHz
unsigned char number[] =
{
0x3f, //0
0x06, //1
0x5b, //2
0x4f, //3
0x66, //4
0x6d, //5
0x7d, //6
0x07, //7
0x7f, //8
0x6f, //9
0X00, //выключить индикацию
};
int main(void) // начало основой программы
{
DDRB=0XFF;
PORTB=0XFF;
DDRD=0XFF;
PORTB = number[11];
unsigned char a;
while(1)
{
PORTD=0X00;
PORTD =(1<<4)|(1<<3);
_delay_ms(700);
for (a=0;a<3;a++)
{
PORTD |=1<<5;
_delay_ms(50);
PORTD &=~1<<5;
_delay_ms(50);
}
PORTD =(1<<4)&(1<<3);
PORTD=(1<<2)|(1<<6);
unsigned char count = 9;
while(count>0) {
PORTB = number[count];
count--;
_delay_ms(100);
}
PORTD=(1<<1)&(1<<2);
PORTB = number[11];
}
} // закрывающая скобка основной программы
Вот прога для устройства из видео:
/************************************************
Проект: светофор
*************************************************/
#include
#include
#define F_CPU 8000000UL // 8 MHz
unsigned char number[] =
{
0x3f, //0
0x06, //1
0x5b, //2
0x4f, //3
0x66, //4
0x6d, //5
0x7d, //6
0x07, //7
0x7f, //8
0x6f, //9
0X00, //выключить индикацию
};
int main(void) // начало основой программы
{
DDRB=0XFF;
PORTB=0XFF;
DDRD=0XFF;
PORTB = number[11];
unsigned char a;
while(1)
{
PORTD=0X00;
PORTD =(1<<4)|(1<<3);
_delay_ms(700);
for (a=0;a<3;a++)
{
PORTD |=1<<5;
_delay_ms(50);
PORTD &=~1<<5;
_delay_ms(50);
}
PORTD =(1<<4)&(1<<3);
PORTD=(1<<2)|(1<<6);
unsigned char count = 9;
while(count>0) {
PORTB = number[count];
count--;
_delay_ms(100);
}
PORTD=(1<<1)&(1<<2);
PORTB = number[11];
}
} // закрывающая скобка основной программы
Комментарии запрещены