Я хотел бы отобразить 2 числа, используя два регистра сдвига 4094, 7-сегментный светодиод и ATmega 328p. Мой текущий код:
uint8_t LED[10]={0b11111100,0b01100000,0b011011010,0b011110010,0b01100110,0b10110110,0b10111110,0b111000000,0b11111110,0b11110110};
int j =Led; //input from the main
uint8_t num_1=Led/10;
uint8_t num_2=Led%10;
Strobe=0;
uint8_t mask=0x80;
for(uint8_t i=0; i<8; i++)
{
mask=mask>>1;
if( (LED[num_1] & mask) ==1)
{
DATA= 1;
}
else
{
DATA= 0;
}
pulse();
}
mask=0x80;
for(uint8_t i=0; i<8; i++)
{
mask=mask>>1;
;
if( (LED[num_2] & mask)==1)
{
DATA= 1;
}
else
{
DATA= 0;
}
pulse();
}
Но, конечно, это не работает должным образом. Он генерирует только 0. Можете ли вы указать мне правильное направление? РЕДАКТИРОВАТЬ: я использую Atmel studio 6. Цель кода - сгенерировать число от 00 до 16.