• 发文
  • 评论
  • 微博
  • 空间
  • 微信

ESP8266_05 ESP8266有几个串口?

单片机爱好者 2019-07-30 08:32

     问题:ESP8266有几个串口?

     答:一个半。

     先说一个完整的,这个比较常用。

     以第三节生成的工程为例。咱们做一些修改。在软件左侧的Project Explorer打开app->user,除了user_main.c和Makefile,其它C文件都删掉。打开user_main.c文件,去掉文件头多余的头文件,添加如下两个和串口相关的头文件:

     函数user_init(void)内,除了初始化相关的函数,其余都去掉。添加串口初始化函数,设置波特率为115200,同时打印输出“Hello world!”

     保存、清理、编译一条龙,生成bin文件。

     注意事项:user_main.c里面和系统初始化、系统配置相关的函数或定义不要动,如user_pre_init(void)、at_partition_table[]。如果是SDK2.2的话,你把这些删掉是没影响的,但是3.0不可以。


     接下来说那半个UART,为什么说它是半个?  因为它只有一个发送管脚,TXD。其实从串口的初始化函数可以看出来,模块上面不止一个UART口:

     uart_init(BIT_RATE_115200, BIT_RATE_115200);

     咱们通常用来下载程序,或者输出调试信息的那个端口就是UART0,那么另一个自然就是UART1。对应的IO管脚在哪里?         

     打开uart.c文件,找到uart_init(void) 函数。可以发现:

     它的UART1的输出管脚是GPIO2,如果要使用这个功能的话,把第340行的注释取消就可以,此时UART0只能做为程序下载接口,无法再输出调试信息。

         


        往期文章:

ESP8266_前言

ESP8266_01搭建开发环境

ESP8266_02程序的编译与下载

ESP8266_03 SDK与Makefile的基本用法

ESP8266_04管脚控制与软件定时器

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
文章点评

提交评论
最新评论

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名

    请输入密码