unsigned char g = 0 ;
unsigned char r = 0 ;
unsigned char b = 0 ;
void T0H( )
{
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
}
void T1H( )
{
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
}
void TLD( )
{
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
__asm__( "nop" ) ;
}
void setup( )
{
DDRD = B00010000;
for ( int i = 0 ; i< 57 ; i++ )
{
for ( int bn = 7 ; bn >= 0 ; bn-- )
{
if ( g & 1 << bn) {
PORTD = 1 << 4 ;
T1H( ) ;
PORTD = B00000000;
TLD( ) ;
} else {
PORTD = 1 << 4 ;
T0H( ) ;
PORTD = B00000000;
TLD( ) ;
}
}
for ( int bn = 7 ; bn >= 0 ; bn-- )
{
if ( r & 1 << bn) {
PORTD = 1 << 4 ;
T1H( ) ;
PORTD = B00000000;
TLD( ) ;
} else {
PORTD = 1 << 4 ;
T0H( ) ;
PORTD = B00000000;
TLD( ) ;
}
}
for ( int bn = 7 ; bn >= 0 ; bn-- )
{
if ( b & 1 << bn) {
PORTD = 1 << 4 ;
T1H( ) ;
PORTD = B00000000;
TLD( ) ;
} else {
PORTD = 1 << 4 ;
T0H( ) ;
PORTD = B00000000;
TLD( ) ;
}
}
}
delayMicroseconds( 7 ) ;
}
void loop( ) {
// put your main code here, to run repeatedly:
}
dW5zaWduZWQgY2hhciBnID0gMDsKdW5zaWduZWQgY2hhciByID0gMDsKdW5zaWduZWQgY2hhciBiID0gMDsKdm9pZCBUMEgoKQp7CiAgCiAgICBfX2FzbV9fKCJub3AiKTsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKICAKICAKfQp2b2lkIFQxSCgpCnsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKfQp2b2lkIFRMRCgpCnsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKICAgIF9fYXNtX18oIm5vcCIpOwogICAgX19hc21fXygibm9wIik7CiAgICBfX2FzbV9fKCJub3AiKTsKICAgIF9fYXNtX18oIm5vcCIpOwp9CnZvaWQgc2V0dXAoKSAKewpERFJEID0gQjAwMDEwMDAwOwpmb3IoaW50IGkgPSAwOyBpPDU3OyBpKyspCnsKZm9yIChpbnQgYm4gPSA3OyBibiA+PSAwOyBibi0tKQp7CmlmIChnICYgMSA8PCBibikgewpQT1JURCA9IDEgPDwgNDsKVDFIKCk7ClBPUlREID0gQjAwMDAwMDAwOwpUTEQoKTsKfSBlbHNlIHsKUE9SVEQgPSAxIDw8IDQ7ClQwSCgpOwpQT1JURCA9IEIwMDAwMDAwMDsKVExEKCk7Cn0KfQpmb3IgKGludCBibiA9IDc7IGJuID49IDA7IGJuLS0pCnsKaWYgKHIgJiAxIDw8IGJuKSB7ClBPUlREID0gMSA8PCA0OwpUMUgoKTsKUE9SVEQgPSBCMDAwMDAwMDA7ClRMRCgpOwp9IGVsc2UgewpQT1JURCA9IDEgPDwgNDsKVDBIKCk7ClBPUlREID0gQjAwMDAwMDAwOwpUTEQoKTsKfQp9CmZvciAoaW50IGJuID0gNzsgYm4gPj0gMDsgYm4tLSkKewppZiAoYiAmIDEgPDwgYm4pIHsKUE9SVEQgPSAxIDw8IDQ7ClQxSCgpOwpQT1JURCA9IEIwMDAwMDAwMDsKVExEKCk7Cn0gZWxzZSB7ClBPUlREID0gMSA8PCA0OwpUMEgoKTsKUE9SVEQgPSBCMDAwMDAwMDA7ClRMRCgpOwp9Cn0KfQpkZWxheU1pY3Jvc2Vjb25kcyg3KTsKfQoKdm9pZCBsb29wKCkgewogIC8vIHB1dCB5b3VyIG1haW4gY29kZSBoZXJlLCB0byBydW4gcmVwZWF0ZWRseToKfQ==
compilation info
prog.c: In function ‘setup’:
prog.c:38:1: error: ‘DDRD’ undeclared (first use in this function)
DDRD = B00010000;
^~~~
prog.c:38:1: note: each undeclared identifier is reported only once for each function it appears in
prog.c:38:8: error: ‘B00010000’ undeclared (first use in this function)
DDRD = B00010000;
^~~~~~~~~
prog.c:44:1: error: ‘PORTD’ undeclared (first use in this function)
PORTD = 1 << 4;
^~~~~
prog.c:46:9: error: ‘B00000000’ undeclared (first use in this function)
PORTD = B00000000;
^~~~~~~~~
prog.c:84:1: warning: implicit declaration of function ‘delayMicroseconds’ [-Wimplicit-function-declaration]
delayMicroseconds(7);
^~~~~~~~~~~~~~~~~
stdout