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

ch579串口编程笔记

“CH579SFR.h”库文件,关于串口中断部分

/* UART interrupt identification values for IIR bits 3:0 */
#define UART_II_SLV_ADDR    0x0E                      // RO, UART0 slave address match 
#define UART_II_LINE_STAT   0x06                      // Re staO, UART interrupt by receiver lintus
#define UART_II_RECV_RDY    0x04                      // RO, UART interrupt by receiver data available
#define UART_II_RECV_TOUT   0x0C                      // RO, UART interrupt by receiver fifo timeout
#define UART_II_THR_EMPTY   0x02                      // RO, UART interrupt by THR empty
#define UART_II_MODEM_CHG   0x00                      // RO, UART0 interrupt by modem status change
#define UART_II_NO_INTER    0x01                      // RO, no UART interrupt is pending

参数解释
名称说明解释
UART_II_SLV_ADDR    0x0ERO, UART0 slave address match 只读,串口0从机地址匹配
UART_II_LINE_STAT   0x06Re staO, UART interrupt by receiver lintus只读,串口
UART_II_RECV_RDY    0x04RO, UART interrupt by receiver data available只读,
UART_II_RECV_TOUT   0x0CRO, UART interrupt by receiver fifo timeout只读,
UART_II_THR_EMPTY   0x02RO, UART interrupt by THR empty只读,
UART_II_MODEM_CHG   0x00RO, UART0 interrupt by modem status change只读,
UART_II_NO_INTER    0x01RO, no UART interrupt is pending只读,

接收长字符串

CH57x_uart.h中修改提供代码如下

红圈部分根据芯片说明书修改为如下

typedef enum
{UART_1BYTE_TRIG = 0,        // 1×Ö½Ú´¥·¢UART_2BYTE_TRIG = 1,            // 2×Ö½Ú´¥·¢UART_4BYTE_TRIG = 2,            // 4×Ö½Ú´¥·¢UART_7BYTE_TRIG = 3,            // 7×Ö½Ú´¥·¢}UARTByteTRIGTypeDef;   

初始化UART1

文件CH57x_uart.c中修改为1字节触发。

测试结果

相关文章:

  • 婴儿专用洗衣机哪个牌子比较好?婴儿专用洗衣机哪个牌子比较好
  • CODESYS开发教程12-任务配置
  • Spring底层原理学习笔记--第二讲--(BeanFactory实现与ApplicaitonContext实现)
  • Oracle(10)Managing Undo Data
  • 【服务器使用】vscode winscp进行服务器容器连接(含修改初始密码)
  • maven之pom文件详解
  • Elasticsearch:在你的数据上训练大型语言模型 (LLM)
  • CHS零壹视频恢复程序高级版视频修复OCR使用方法
  • 如何通过一条数字人三维动画宣传片,打造出数字文旅
  • 【云原生基础】了解云原生,什么是云原生?
  • 模拟实现.net中的Task机制:探索异步编程的奥秘
  • java JUC并发编程 第十章 Synchronized与锁升级
  • 【数据结构】 二叉树理论概念!一文了解二叉树!
  • Java锁常见面试题
  • 力扣218.天际线问题 线段树解法
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • Apache Pulsar 2.1 重磅发布
  • IOS评论框不贴底(ios12新bug)
  • Java精华积累:初学者都应该搞懂的问题
  • JS基础之数据类型、对象、原型、原型链、继承
  • laravel5.5 视图共享数据
  • spark本地环境的搭建到运行第一个spark程序
  • Vue2.0 实现互斥
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • Wamp集成环境 添加PHP的新版本
  • 包装类对象
  • 将回调地狱按在地上摩擦的Promise
  • 聊聊sentinel的DegradeSlot
  • 前端存储 - localStorage
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 微信公众号开发小记——5.python微信红包
  • 微信支付JSAPI,实测!终极方案
  • 一、python与pycharm的安装
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • ()、[]、{}、(())、[[]]命令替换
  • (1)(1.9) MSP (version 4.2)
  • (6)STL算法之转换
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (数据结构)顺序表的定义
  • (一)Neo4j下载安装以及初次使用
  • (一一四)第九章编程练习
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .NET Core Web APi类库如何内嵌运行?
  • .net core 依赖注入的基本用发
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .NET MVC 验证码
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .net对接阿里云CSB服务
  • ::
  • @RequestBody详解:用于获取请求体中的Json格式参数
  • [ 代码审计篇 ] 代码审计案例详解(一) SQL注入代码审计案例
  • [C#]winform利用seetaface6实现C#人脸检测活体检测口罩检测年龄预测性别判断眼睛状态检测
  • [C/C++]关于C++11中的std::move和std::forward