0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用串口控制LED灯亮灭

lhz13146887 来源:MCU杂谈 作者:MCU杂谈 2022-10-11 11:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

我们知道串口通信可以让单片机电脑进行数据交换。那么是否可以用串口来控制LED灯亮灭呢?当然是可以的。首先需要保证串口能正常通信,然后是连接LED灯的IO口要初始化完成。如图分别为串口初始化和LED灯初始化

d5f7cb60-4914-11ed-a3b6-dac502259ad0.png

d69d1f02-4914-11ed-a3b6-dac502259ad0.png

本文是建立在读者已经搭建好串口控制LED灯代码的基础上,列举一些可能犯的错误。

1接收到了字符,但是无法控制LED灯亮灭。如图

d6bc4a94-4914-11ed-a3b6-dac502259ad0.png

我们知道我们发给单片机的是字符,因此单片机在接收到的也是字符,因此在控制语句中我们要用字符,比如’0‘,而不是0.如图switch语句

d6ee2c30-4914-11ed-a3b6-dac502259ad0.png

此处需要将case0改为case’0‘就可以了

2可以控制led亮灭,但是偶尔能收到字符,不能一直收到字符。如图

d70c6218-4914-11ed-a3b6-dac502259ad0.png

在发送多次字符0之后,只有两次接收到了字符0,很多次都没有接收到。这里的问题是串口中断。如果读者是跟着野火的教程做的就会明白这个问题,刚开始是用串口通信,因此开了串口中断,而我们的led灯实验不需要串口中断,如果有中断的话,我们每次发送一个数据就会进入中断里面,因此把串口中断关闭就可以解决这个问题。如图

d7315ec4-4914-11ed-a3b6-dac502259ad0.png

注释掉usart_itconfig()这个函数,即关闭串口中断。再试一试

d74e3314-4914-11ed-a3b6-dac502259ad0.png

解决了,每次发送都能接收到了。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    244

    文章

    24810

    浏览量

    694118
  • 单片机
    +关注

    关注

    6078

    文章

    45649

    浏览量

    676393
  • STM32
    +关注

    关注

    2315

    文章

    11216

    浏览量

    375631
  • 串口
    +关注

    关注

    15

    文章

    1630

    浏览量

    83694

原文标题:stm32串口通信控制LED灯亮灭所遇到的问题

文章出处:【微信号:MCU杂谈,微信公众号:MCU杂谈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开关控制led

    各位大侠,求助,我是新手,关于一个开关控制led的问题,就是我按一下开关,第一个led
    发表于 08-04 08:54

    gpio是如何去控制led

    gpio是如何去控制led?如何去编写其主要代码程序?
    发表于 08-04 06:28

    怎样通过串口通信去控制LED

    怎样通过串口通信去控制LED呢?有什么方法吗?
    发表于 10-26 06:39

    请教大神STM32的串口是如何去控制LED

    请教大神STM32的串口是如何去控制LED的?
    发表于 12-07 06:10

    linux控制LED的方法

    对应nLED_1,nLED_2,nLED_4,所以代码里面操作GPF4-GPF6就可以控制LED。2、写代码前了解事项...
    发表于 12-16 06:12

    STM32CubeMXKEIL5的相关资料分享

    硬件平台:正点原子STM32MINI开发板(STM32RCT6)软件平台:STM32CubeMXKEIL5实现功能:串口控制LED
    发表于 02-21 07:38

    STM32F103ZET6是怎样用串口控制LED

    STM32F103ZET6 用串口控制LED1.串口
    发表于 02-22 08:22

    基于GD32F427R板UART1串口控制LED

    仿真设置断点,发现电脑端串口发送0xFF的时候,MCU收到的是0X66,然后仔细想了一下,应该是串口调试助手发送的数据不是以十六进制数发送的,然后在串口助手上勾选以十六进制数发送数据后,就能正常通过
    发表于 02-02 16:33

    LED和亮度控制

    LED和亮度控制
    发表于 03-28 14:24 42次下载

    如何实现对LED控制的详细资料概述

    这节课,我们学习了通过MakerPanda-ONE主控板的数字端口实现对LED控制,了解LED
    发表于 07-23 08:00 8次下载

    EXTI:通过按键中断控制led

    介绍EXTI的使用方法及基本原理并且包括实验通过按键中断控制led
    发表于 11-23 18:06 27次下载
    EXTI:通过按键中断<b class='flag-5'>控制</b><b class='flag-5'>led</b><b class='flag-5'>灯</b><b class='flag-5'>亮</b><b class='flag-5'>灭</b>

    STM32-CubuMX-HAL库学习(五)-- 串口的基础收发实现

    硬件平台:正点原子STM32MINI开发板(STM32RCT6)软件平台:STM32CubeMXKEIL5实现功能:串口控制LED
    发表于 12-24 19:15 1次下载
    STM32-CubuMX-HAL库学习(五)-- <b class='flag-5'>串口</b>的基础收发实现

    使用串口2控制led

    STM32F103ZET6 用串口控制LED1.串口
    发表于 12-28 19:16 9次下载
    使用<b class='flag-5'>串口</b>2<b class='flag-5'>控制</b><b class='flag-5'>led</b><b class='flag-5'>亮</b><b class='flag-5'>灭</b>

    基于51单片机的PWM控制LED设计资料源程序

    基于51单片机的PWM控制LED设计资料源程序
    发表于 04-27 15:09 26次下载

    stm32按键控制led

    stm32按键控制led  在嵌入式系统中,硬件按键常常被用作开关输入,控制
    的头像 发表于 09-02 17:05 1.4w次阅读