void setup() {
volatile char *dirf, *dirk, *dira, *dirc, *outf, *ink, *outa, *outc;
dirf = 0x30; dirk = 0x107; dira = 0x21; dirc = 0x27;
outf = 0x31; ink = 0x106; outa = 0x22; outc = 0x28;
*dirf = 0x0F; *dirk = 0x00; *dira = 0x0F; *dirc = 0x0F;
while(1){
for(volatile char i=0;i<4;i++){
*outf = (1<<i);
*outa = *ink;
if(*ink!=0){
*outc = (1<<i);
for(volatile long i=0;i<60000;i++);
*outc = 0x00;
}
}
}
}
void loop() {
// put your main code here, to run repeatedly:
}