当前位置: 首页 > news >正文

SWM181 串口功能使用介绍

SWM181 串口功能使用介绍


  • 📌SDK固件包:https://www.synwit.cn/kuhanshu_amp_licheng/
  • 注意新手谨慎选择作为入门单片机学习。
  • 🌼开发板如下图:
    在这里插入图片描述
  • 📋SWM181描述上写了有4个串口,在数据手册上,将引脚复用功能只是简称funtion功能块,(FUNCTION :可配置为 UART/I2C/PWM/TIMER/CAN/HALL 功能),在所给出的库函数里面只可以找到被定义的3个串口的相关宏。在存储器映射地址中又可以找到4个串口。

在这里插入图片描述
阅读这样的数据手册真的有点费劲。

  • 🔖在所公开的相关案例中,串口的案例有几个,都只是提供了一个串口的例子或软串口的使用,所给的SPI模拟串口案例还是一个有问题的工程,直接编译报错,缺少一个结构体成员变量。需要往对应的结构体当中补充一个成员变量。不够目前不知道这个SPI模拟UART有何用。真怀疑官方没有用心在做这些基本的事情,连基本的编译测试功能都没有做。

  • 📖串口案例:
    在这里插入图片描述

✨SWM181串口特性

  • 支持标准的 UART 协议
  • 支持全双工模式
  • 支持波特率可配置
  • 支持 8 位/9 位数据格式选择
  • 可配置的奇偶校验位
  • 支持 1 位/2 位停止位选择
  • 支持波特率自动调整
  • 深度为 9 字节的发送和接收 FIFO
  • 支持 break 操作自动检测
  • 支持接收超时中断
  • 支持 LIN 模式
  • 支持发送/接收数据 LSB/MSB 选择
  • 支持发送/接收数据电平反向

📑功能描述

  • UART 模块支持波特率配置,最高速度可达到模块时钟 16 分频。具备深度为 8 的 FIFO,同时提供了多种中断供选择。
    在这里插入图片描述
  • 🌿接收FIFO
    在这里插入图片描述

每接收到一个数据,RX FIFO 中数据个数加一,当 RX FIFO 中数据个数大于
RXThreshold 时,触发接收中断。有效的利用串口硬件FIFO,可以减少中断次数

📖串口初始化配置函数

  • 🌿串口引脚:PA0(RXT)、PA1(TXD)
    在这里插入图片描述
void SerialInit(void)
{UART_InitStructure UART_initStruct;PORT_Init(PORTA, PIN0, FUNMUX_UART0_RXD, 1);	//GPIOA.0配置为UART0输入引脚PORT_Init(PORTA, PIN1, FUNMUX_UART0_TXD, 0);	//GPIOA.1配置为UART0输出引脚UART_initStruct.Baudrate = 57600;//波特率UART_initStruct.DataBits = UART_DATA_8BIT;UART_initStruct.Parity = UART_PARITY_NONE;UART_initStruct.StopBits = UART_STOP_1BIT;UART_initStruct.RXThreshold = 3;//RX FIFO中数据个数UART_initStruct.RXThresholdIEn = 1;//当RX FIFO中数据个数 >  RXThreshold时触发中断UART_initStruct.TXThreshold = 3;//TX FIFO中数据个数UART_initStruct.TXThresholdIEn = 1;//TX FIFO中数据个数 <= TXThreshold时触发中断UART_initStruct.TimeoutTime = 10;//超时时长 = TimeoutTime/(Baudrate/10) 秒UART_initStruct.TimeoutIEn = 0;//超时中断,RX FIFO非空,且超过 TimeoutTime/(Baudrate/10) 秒没有在RX线上接收到数据时触发中断UART_Init(UART0, &UART_initStruct);UART_Open(UART0);//UART串口打开
}
http://www.lryc.cn/news/26385.html

相关文章:

  • Stochastic Approximation 随机近似方法的详解之(三)Dvoretzky’s convergence theorem
  • 7个ES6解构技巧让代码更简洁
  • 曾经被人们看成是异想天开的产业互联网,或许终将会实现
  • log4j控制台不打印日志的故障解决方案
  • C# 序列化时“检测到循环引用”错误的彻底解决方案
  • 小红书“复刻”微信,微信“内造”小红书
  • 用arthas轻松排查线上问题
  • mysql一explain结果分析
  • 原理底层计划--HashMap
  • win10 设备管理器中的黄色感叹号(华硕)
  • 新产品上市推广不是“铺货”上架
  • MATLAB训练神经网络小结
  • 实战:一天开发一款内置游戏直播的国产版Discord应用【附源码】
  • 嵌入式学习笔记——基于Cortex-M的单片机介绍
  • Python 虚拟环境的使用
  • 招生咨询|浙江大学MPA项目2023年招生问答与通知
  • Qt std :: bad_alloc
  • 《设计模式》装饰者模式
  • 一文说清Kubernetes的本质
  • 信息发布小程序【源码好优多】
  • 创新型中小企业申报流程
  • 【UE4 Cesium】加载离线地图
  • Spring面试题
  • 动态网站开发讲课笔记03:HTTP协议
  • 2023年天津财经大学珠江学院专升本专业课考试题型
  • 五方面提高销售流程管理的CRM系统
  • AutoCAD通过handle id选择实体
  • 页面状态码的含义
  • Redis 越来越慢?常见延迟问题定位与分析
  • 【python】python-socketio+firecamp使用踩坑指南