求一段 电脑用串口调试工具向STM32发送数据控制LED灯 的STM32 程序

我是单片机的初学者,想在开发板上做一个STM32串口和GPIO的练习,比如初始化GPIO 后先点亮LED2 ,串口收到数字1时 单片机点点亮LED1,当单片机串口接到电脑发送的数据后产生中断,在中断服务函数中很据所发的数据来判断是否点亮LED1 , 我是初学者,还请注释写细点
GPIO b0 指向LED1 GPIO C3指向LED2 串口使用USART1
另外想请教下 (1)Main 函数里 末尾写一个 for(;;)的内容为空的死循环的话 ,是不是程序执行到死循环就一直停着,而不会再重头执行 main里面的程序
(2)main 函数里 掉用了其他程序文件的函数后,是不是会回到main里继续执行被调用函数后的其他程序语句

第1个回答  2015-10-23
既然是初学者,这种问题最好自己解决,看STM32数据手册,上网找例程自己改,才能学到东西。
main函数里必须要有while(1)或者是你说的for(;;),因为如果没有的话,程序执行完后会跑飞的,出现各种莫名其妙的错误。
你main函数里除了初始化配置在while(1)前之外,所有的非中断程序都要在死循环里做。
main如果没有while(1),程序执行完后就不知道跑到哪里了,不能这么干追问

  我在中断服务函数里面加了些操作,接收到串口中断 点亮LED1 就可以(图1),但是加一个if判断,接收到的值等于1时LED1 亮,就没有反应(图2),不晓得为什么,请高手指点下~

图1

 然后图2


 

追答

因为你串口收到的不是数字1,而是ASCII码的1,ASCII的1应该是0x31吧,你可以这么写
if(ch == '1')
'1',加个单引号,表示字符串的1

本回答被提问者和网友采纳

stm32初学者必会操作---usart串口调试工具
1. 接线:使用STM32F103RCT6芯片时,我们需连接USART1到PA9和PA10。确保将串口的正负极正确连接,避免接反。2. 编码与配置:打开GPIOA和USART1,配置相应的GPIOA引脚,即PA9和PA10。确保选择浮空输入模式(4)和复位推挽输出模式(b)。3. USART1配置:在APB1ENR中设置波特率,通常为SystemCoreClock\/...

...STM32进行双单片机串口通信,我对串口中断发送程序这不太清除?_百度...
你可以先用串口调试助手,向单片机发送一个数据,如果有j-link,用j-link在中断函数里设置断点,进入中断后程序会停在usart中断那里,还有,通常情况下不使用发送中断,而是接收中断,对于多数据发送,可以等待发送完成标志 while(!(USART1->SR & 0X80));\/\/判断发送寄存器的数据是否到移位寄存器发送 USA...

如何实现 电脑与STM32之间的通讯
一般采用串口(uart)通信,买个USB转TTL的模块,连接起来使用串口调试助手就能通讯了。当然,你手里要是有对应的模块,正确模块后也可以连上后也可以通过RS232\/RS248(使用串口助手),网口(使用网口调试助手),USB(使用USB调试工具)等等。一般开发板上会集成有串口RS232通讯口,你也可以使用USB转232...

stm32串口发送一串命令,如何读取返回的值
你要说明你的通讯方式 以串口为例 你可以听歌usb和电脑连接,用串口调试助手来发送指令 单片机调用串口接收函数 receive 然后通过串口中断读取寄存器的值。希望可以帮到你。

stm32通过串口烧写程序是一直是这个问题,不知道该如何搞,求大神帮忙...
请确保你电脑上的串口工作正常,测试方法,打开一个串口调试助手,短接串口线的TX和RX,然后串口调试助手发送一个字符,比如a,如果串口通信正常,你能在串口调试助手中收到a.请确保STM32上用于ISP的串口是串口1,IO是PA9,PA10,如果是STM32F2XX,也可以是串口3.请确保STM32在上电时两个BOOT引脚的电平正确(...

stm32程序上传到电脑
将编译好的程序文件上传到STM32设备中。整个过程中,不会直接生成或涉及任何表格和图片的上传。如果需要在电脑上查看STM32程序的执行结果或调试信息,可以通过串口调试助手等工具接收STM32发送的数据,并在电脑上进行分析和处理,但这些步骤并不属于将程序上传到电脑的过程本身。

stm32从keil安装到程序烧录
3. **官方STM32芯片库**:下载适用于STM32L151芯片的库文件,确保项目开发所需的源码与头文件可用。4. **ST-LINK V2烧录器**:通过官方网站下载驱动并安装,便于后续的程序烧录操作。5. **串口调试助手**:用于实时监视程序运行状态,提升调试效率。二、软件安装与配置:1. **安装环境**:将...

stm32程序在插上串口线可以进行调试,程序正常运行(程序有指示灯),拔 ...
while (1){ } } 里面设置一个断点,看程序运行的时候会不会进去,进去则说明你的程序逻辑上有问题,有可能是数组越界之类的错误;其次,如果没有进去,你需要量一下boot0和boot1的电平,看是不是正常的flash内启动模式。我之前也遇见过类似的问题,发现时开发板上boot前的一个三极管击穿了所以导致...

串口调试工具软件简介
此外,该软件还支持XMODEM MODEM协议文件传输,这对于在PC端管理和更新像AVR和STM32这样的嵌入式微控制器的BootLoader非常实用。通过它,开发者可以轻松上传和下载程序,大大简化了固件升级的过程。总的来说,这款串口调试工具凭借其易用性、功能性和实用性,成为单片机开发人员必备的工具之一,无论是初学者...

问题如下:本人在调试STM32串口通信时,后面JLINK仿真器突然亮红灯,之后...
问题如下:本人在调试STM32串口通信时,后面JLINK仿真器突然亮红灯,之后一直就程序下载不进去。 后面用其它工具弄了下,JLINK又可以下载程序,但是程序下载进去不跑了!!!而且仿真器有时候插上时红灯又亮了,程序又下不进去!!高手解释下是什么问题!谢谢!... 后面用其它工具弄了下,JLINK又可以下载程序,但是程序下载进去...

相似回答