野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12228|回复: 2

请教各位老师,这个程序哪里出了问题呢?

[复制链接]
发表于 2019-5-4 21:25:40 | 显示全部楼层 |阅读模式
老师好,在贵司购买了STM32 MINI开发板,正在跟着教学资料折腾学习,如下的程序不知道出了什么问题。单独运行都OK,一旦运行了串口收发程序,按键检测功能就无法实现了。
具体思路为:上位机的串口命令可以控制PC2,PC3口的LED亮灭,按键也可以控制LED亮灭。源程序见附件。感谢指导。


uart&key_scan.jpg

example2.rar

4.67 MB, 下载次数: 13

源程序

回复

使用道具 举报

发表于 2019-5-4 23:26:40 | 显示全部楼层
简单猜测,程序一直阻塞在了uart1_send_receive()等你发字符,你试着调试下应该会发现程序停在了哪里,都到不了key_scan_test()这里,按键和串口接收都应该改造成中断形式比较好



阻塞了

阻塞了

一直在等你输入

一直在等你输入
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-5 18:56:59 | 显示全部楼层
WishWish 发表于 2019-5-4 23:26
简单猜测,程序一直阻塞在了uart1_send_receive()等你发字符,你试着调试下应该会发现程序停在了哪里,都到 ...

感谢老师,我自己修正了程序,目前可以按照思路执行,具体办法为:写一个串口的中断服务程序,把这段程序加到stm32f10x_it.c中。个人认为,既然用中断的方式来处理串口收发,主要是接收时候产生中断,按照教材那样的处理方法是不合适的。
222.jpg
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-12-6 16:24 , Processed in 0.046196 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表