8led+8按键+8数码管。主函数调用TM1638_ReadData2,打印了返回值,无论是否按键,都一直打印255,为什么全是1,看来读数据函数有问题啊。
u8 TM1638_ReadData2(void)
{uint8_t i;uint8_t temp=0x00;TM1638_DIOModeInput();//DIO设置为输入for(i = 0; i < 8; i++){temp >>= 1; TM1638_CLKReset; //CLK上升沿读数据才有效delay_us(4);if(TM1638_DIORead == 1){temp |= 0x80; }else{ temp &=0x7f;}TM1638_CLKSet;delay_us(4); }return temp;
}