
#第九届立创电赛#智能温湿度传感器
简介
当有按键按下时,触发中断,此时结束睡眠模式,执行按键判断,获取温湿度并启动数码管进行显示;同时启动定时器中断,循环显示两次数据后再次进入睡眠,等待下次唤醒。
简介:当有按键按下时,触发中断,此时结束睡眠模式,执行按键判断,获取温湿度并启动数码管进行显示;同时启动定时器中断,循环显示两次数据后再次进入睡眠,等待下次唤醒。开源协议
:Public Domain
描述
注:* 为必填项
请在报名阶段填写 ↓
* 1、项目功能介绍
当有按键按下时,触发中断,此时结束睡眠模式,执行按键判断,获取温湿度并启动数码管进行显示;同时启动定时器中断,循环显示两次数据后再次进入睡眠,等待下次唤醒。
*2、项目属性
项目首次公开
* 3、开源协议
Public Domain
请在竞赛阶段填写 ↓
*4、硬件部分

*5、软件部分
部分代码如下:
/* 64Mhz时钟时,当ulCount为1,函数耗时3个时钟,延时=3*1/64us */
__asm void SysCtlDelay(unsigned long ulCount)
{
SUBS r0,#1;
BNE SysCtlDelay;
BX lr;
}
/*
函数内容:数码管显示数据函数
函数参数:uint8_t row----行号
uint8_t column-列号
uint8_t value--显示数据
返回值:无
*/
void ShowNum(uint8_t row, uint8_t column, uint8_t value)
{
if(row == 1)
{
switch(column)
{
case 1: //如果是第一排第一个
SN74HC595_Send_Data(SN_DIG,0xFE);
SN74HC595_Send_Data(SN_LED1,sgh_value[value]);//显示值对应16进制数
break;
case 2:
SN74HC595_Send_Data(SN_DIG,0xFD);
SN74HC595_Send_Data(SN_LED1,(sgh_value[value]|0x80));
break;
case 3:
SN74HC595_Send_Data(SN_DIG,0xFB);
SN74HC595_Send_Data(SN_LED1,sgh_value[value]);
break;
default:
break;
}
SysCtlDelay(1000); //大致延时50us
SN74HC595_Send_Data(SN_LED1,0x00); //消影,防止错位
}
else
{
switch(column)
{
case 1:
SN74HC595_Send_Data(SN_DIG,0xF7);
SN74HC595_Send_Data(SN_LED2,sgh_value[value]);
break;
case 2:
SN74HC595_Send_Data(SN_DIG,0xEF);
SN74HC595_Send_Data(SN_LED2,(sgh_value[value]|0x80));
break;
case 3:
SN74HC595_Send_Data(SN_DIG,0xDF);
SN74HC595_Send_Data(SN_LED2,sgh_value[value]);
break;
default:
break;
}
SysCtlDelay(1000); //大致延时50us
SN74HC595_Send_Data(SN_LED2,0x00);
}
}
*6、BOM清单

*7、大赛LOGO验证

* 8、演示您的项目并录制成视频上传
https://oshwhub.com/yg_test/sensor_temhum
设计图

BOM


评论