@КЭС Спасибо, буду знать
@nvju1967 Невнимательность. Я до этого просто просмотрел несколько советских интегралок и не в одной из них, не было ничего о внутренней структуре, так что я и тут пропустил, думая что в ней ничего нет.
Так может тогда поставить два таких реле https://okey-auto.com/catalog/robotekhnika/moduli_i_datchiki/18153/ рядом с этим китайским чудом, катушки подключитть вместо лампочек по родной схеме, а контакты соденить последовательно? Или@Valtasaar цветной картинкой надо нарисовать?
Так быть не должно. На оригинальной CD4069UBE всë всегда работало корректно. И скважность всегда 50% была в обычной схеме, и результатам из сима всегда соответствовало. У меня ещë осталась одна такая микра, завтра утром подсоберу и покажу.
У меня ещë К561ЛН2 есть интеграловские, должны быть аналогом CD4069. Проверю и их.
Здраствуйте читатели форума. Относительно недавно я начал работать с микроконтроллерами . Собрав конструкцию из кнопки ,мк и одного индикатора я написал вот такой код :
#include <avr/io.h>
#define F_CPU 1000000UL
#include <util/delay.h>
int main(void)
{
int button = 0;
int i =0;
DDRC = 0xFF;
DDRB = 0xFF;
DDRD = 0x00;
PORTD = 0b000001000;
void segchar (unsigned char seg)
{
switch(seg){
case 0:PORTB = 0b0110111; PORTC = 0b0000001; break;
case 1:PORTB = 0b0000001; PORTC = 0b0000001; break;
case 2:PORTB = 0b1111011; PORTC = 0b0000000; break;
case 3:PORTB = 0b0011011; PORTC = 0b0000001; break;
case 4:PORTB = 0b0001101; PORTC = 0b0000001; break;
case 5:PORTB = 0b0011110; PORTC = 0b0000001; break;
case 6:PORTB = 0b0111110; PORTC = 0b0000001; break;
case 7:PORTB = 0b0000011; PORTC = 0b0000001; break;
case 8:PORTB = 0b0111111; PORTC = 0b0000001; break;
case 9:PORTB = 0b0011111; PORTC = 0b0000001; break;
case 10:PORTB = 0b0111110; break;
}
}
while (1)
{
if (!PIND&&button==0)
{ _delay_ms(100);
i++;
button = 1;
}
if (PIND&&button==1)
{
_delay_ms(100);
button = 0;
}
if (i==0)
{
segchar(0);
}
if (i==1)
{
segchar(1);
}
if (i==2)
{
segchar(2);
}
if (i==3)
{
segchar(3);
}
if (i==4)
{
segchar(4);
}
if (i==5)
{
segchar(5);
}
if (i==6)
{
segchar(6);
}
if (i==7)
{
segchar(7);
}
if (i==8)
{
segchar(8);
}
if (i==9)
{
segchar(9);
}
if (i==10)
{
segchar(10);
}
if (i==11)
{
i = 0;
}
}
}
Код отрабатывает только от 0 до 2 , а дальше не работает(
Подскажите пожалуйста что я написал не так .
Заранее спасибо )
Recommended Posts