STM32按键设置阈值函数
代码如下(示例):
//按键函数(传递引用, 最小值, 最大值,每次加多少)
void key_Set( unsigned int *settemp, int mi, int mx,int halve){
if(KEY2_IN_STA== 0){
if(*settemp < mx)
*settemp=*settemp+halve;
}
if(KEY3_IN_STA==0){
if(*settemp > mi)
*settemp=*settemp-halve;
}
}
主函数使用
代码如下(示例):
switch (val%7)
{
case 0:
get_shuju();
break;
case 1:
key_Set(&TempsetH1, 0, 100,1);
OLED_ShowCH(0,0,"温度1H:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetH1,5,0);
break;
case 2:
key_Set(&TempsetL1, 0, 100,1);
OLED_ShowCH(0,0,"温度1L:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetL1,5,0);
break;
case 3:
key_Set(&TempsetH2, 0, 100,1);
OLED_ShowCH(0,0,"温度2H:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetH2,5,0);
break;
case 4:
key_Set(&TempsetL2, 0, 100,1);
OLED_ShowCH(0,0,"温度2L:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetL2,5,0);
break;
case 5:
key_Set(&TempsetH3, 0, 100,1);
OLED_ShowCH(0,0,"温度3H:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetH3,5,0);
break;
case 6:
key_Set(&TempsetL3, 0, 100,1);
OLED_ShowCH(0,0,"温度3L:"); //显示中文:温度
OLED_ShowCH(0,3,"设置"); //显示中文:温度
OLED_ShowNum(60,0,TempsetL3,5,0);
break;
}