⑴ 利用stm32的单片机完成下面的要求,程序该怎么写,用C语言
用两个定时器分别对两个LED灯闪烁,KEY1和KEY2要设置为外部中断输入,当进入中断时KEY1_DANG或KEY2_DANG指向下一个档位,并且发送串口。给你提供点思路。
void main()
{
while(1)
{
if(key1_dang==0x01)
中断定时1设置为0.2秒
if(key1_dang==0x02)
中断定时1设置为0.4秒
if(key1_dang==0x03)
中断定时1设置为0.6秒
if(key1_dang==0x04)
中断定时1设置为0.8秒
if(key1_dang==0x05)
中断定时1设置为1.0秒
if(key2_dang==0x01)
中断定时2设置为0.2秒
if(key2_dang==0x02)
中断定时2设置为0.4秒
if(key2_dang==0x03)
中断定时2设置为0.6秒
if(key2_dang==0x04)
中断定时2设置为0.8秒
if(key2_dang==0x05)
中断定时2设置为1.0秒
}
}
⑵ 怎么将stm32驱动ds18b20的程序,在数码管上显示,
每隔一段时间,读取一次温度,把读到的数通过IO口送出去显示
⑶ 请问我在stm32上移植了ucos,现在需要使用到DS18B20采集温度
第一 读取18B20的时候关闭任务切换,不进行任务调度
第二 通过任务通讯 互斥量或者邮箱 让其他任务挂起
第三 关闭中断
第四 将操作18b20的任务优先级设置高点或者操作时提升其任务优先级
延时的话可以用ucos的延时函数 也可以自己写,不过还是用ucos的好
⑷ ds18b20怎样与stm32连接的原理图
DS18B20是单总线,电源地连接就不说了,数据线的话任意一个IO口连接上就好了。但若是你已经有STM32控制DS18B20的程序了,你看看程序里面用的那个引脚就把那个引脚连接上去。使用任意一个IO口连接上去也没问题,到时候在程序里面调整一下引脚的定义即可