【TM1638不能成功读回按键值】

8led+8按键+8数码管。主函数调用TM1638_ReadData2,打印了返回值,无论是否按键,都一直打印255,为什么全是1,看来读数据函数有问题啊。

c 复制代码
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;
}
相关推荐
Groundwork Explorer9 小时前
W5500 网卡编程初始化与使用指南
python·单片机
单片机仿真设计9 小时前
【proteus仿真】基于 STM32 的智能垃圾桶设计(仿真图+程序)
c语言·stm32·stm32单片机·proteus·毕设·仿真
智闲电子设计10 小时前
STM32 SD 卡 + FatFS 实战:掉电丢数据?f_sync 和簇对齐写救你
stm32·单片机·嵌入式硬件
ヾChen12 小时前
ESP32 OTA 踩坑实录
stm32·单片机·嵌入式硬件·物联网·学习
小僧景贤13 小时前
嵌入式ADC高阶深度解析:基于STM32底层原理、误差溯源、硬件调校与工业级落地
单片机·嵌入式硬件·stm32 adc·工业级高精度采集·adc 误差校准·量产固件开发
黑猫学长呀13 小时前
【驱动开发常见问题】编译出现rm: cannot remove `asm/arch‘: Is a directory
驱动开发·单片机·嵌入式硬件·bug·编译报错·kernrl
雨田言炎13 小时前
STM32专题之内部FLASH详解
笔记·stm32·单片机
Be for thing15 小时前
【嵌入式成长10】STC89C51蜂鸣器|有源/无源蜂鸣器区分、三极管驱动、定时器播放音乐实战
单片机·嵌入式硬件·学习
郎哥编程课堂16 小时前
单片机零基础训练营第2天:嵌入式开发常用的三种进制
单片机·嵌入式硬件
LCG元16 小时前
STM32 DAC+DMA+定时器触发生成任意波形:数据对齐陷阱、输出缓冲器选型与频率精度实测
stm32·单片机·嵌入式硬件