【STM32F072】+红外遥控和串口打印测试

2020-03-01 11:52发布

   团购了板子也有些日子了,这两天有时间鼓捣鼓捣了,先熟悉下时钟系统吧,在这里用红外遥控解码来测试,然后使用printf语句发送到电脑显示出来,供大家参考。:lol
首先是硬件,串口用的是USART1,管脚为PA9和PA10,一体化红外接收头接到PA8上,采用下降沿中断,利用SysTick延时来大致计算脉冲宽度。
软件上,板子上没有外部晶振,所以用内部时钟HSI,倍频到48M作为系统时钟。
使用printf函数时在main文件中重定义一下fputc函数,就不用在工程中勾选Use MicroLIB了
编译软件我用的是最新版MDK5.10,板子自带ST LINK下载,串口发送用PL2303小板
下面上图,手头没有红外接收头了,只好把51板子翻出来了,见笑了哈!
测试结果和51得到的数据高地位是反的,可能是大小端的问题吧!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
as564335sa
1楼-- · 2020-03-02 23:18
zxm19820916 发表于 2016-4-6 08:59
请教楼主,如果MCU处于STOP模式,红外信号唤醒MCU,再解码,能做到吗?

看有没有对应的中断源可以实现唤醒就行
zxm19820916
2楼-- · 2020-03-03 00:56
 精彩回答 2  元偷偷看……
zxm19820916
3楼-- · 2020-03-03 03:09
as564335sa 发表于 2016-4-6 13:51
看有没有对应的中断源可以实现唤醒就行

嗯,已经实现了。
本来中断函数都写好了。但是从STOP模式唤醒,到进入EXTI中断,都没有开启GPIOA的时钟,所以中断中检测不了PA4管脚的高电平,导致解码不了红外信号。
xsnlaxsnla
4楼-- · 2020-03-03 03:41
看看快快快快快快快快快快快快快快快
shaohongjun126
5楼-- · 2020-03-03 08:04
啥地方啥地方啥地方啥地方啥地方生到方
toddchen817
6楼-- · 2020-03-03 13:12
中毒了,太可恶

一周热门 更多>