求问怎么用定时器延时36s?

2019-10-15 04:37发布

功能大致是给个值a自减到0,然后等待36s,给接了继电器的一个GPIO引脚一个高低电平来控制继电器的开闭。
但是不会用定时器延时这么长时间……
用的是STM32F1。
谢谢。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
正正杨
1楼-- · 2019-10-15 08:56
用delay来延时36s会死在那,这又是为什么?
密耳
2楼-- · 2019-10-15 14:56
比如你可以用定时器定时100毫秒。0.1秒。然后每进一次定时器中断,++1,加到360次就是36秒。。我是来拿分的。。。。。
正正杨
3楼-- · 2019-10-15 20:21
 精彩回答 2  元偷偷看……
ziyan0005
4楼-- · 2019-10-15 20:41
用定时器设定100ms中断一次,每中断一次计数加1,加到360的时候就是36秒,然后让GPIO引脚输出高电平。
你也可以用系统嘀嗒做一个ms的延时函数,这个在原子的例程里可以直接拿来用
正正杨
5楼-- · 2019-10-16 02:08
ziyan0005 发表于 2017-2-3 09:32
用定时器设定100ms中断一次,每中断一次计数加1,加到360的时候就是36秒,然后让GPIO引脚输出高电平。
你 ...

我是要计数减到0时才开启定时器延时36s,但是用例程的话应该是从程序运行开始就会延时了。请问这个该怎么处理?
xdzhang
6楼-- · 2019-10-16 07:13
你的计数器减到0开启嘀嗒计时器。

一周热门 更多>