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

UART16550 IP core笔记二


XIN时钟
表示use external clk for baud rate选型,IP核会出现Xin时钟引脚
XIN输入被外部驱动,也就是外部时钟源,那么外部时钟必须要满足特定的要求,就是XIN
的range范围是xin<=S_AXI_CLK/2,如果不满足这个条件,那么AXI UART16550这个IP核就
不能正确的运行。
XIN时钟如果太快,也就是超过系统时钟的一半,UART可能无法在一个时钟周期内完成这些任务,
从而导致数据的丢失或者错误。

16550模式编程步骤
1.由于LCR线控制器的bit7对register space的所有寄存器都有影响,所以首先要对LCR寄存器
的bit7进行配置;
2.通过LRC寄存器,然后设置数据位是5bit,还是7bit,还是8bit;
3.通过LRC寄存器,来设置Divisor latch access bit设置除数锁存访问位置;
4.中能使能寄存器写入之,运行哪些条件下产生中断,比如是否使能接收数据产生中断,是否
发送缓冲器为空的时候产生中断,是否发生极性错误产生中断等等。
5.配置FIFO,写FIFO控制寄存器
启用FIFO,清除FIFO,设置接收FIFO的触发级别,多少byte触发中断
6.设置uart波特率
写Divisor latch除数锁存,先写最低有效字节,再写最高有效字节,用于设置正确的波特率
7.处理中断
当AXI UART 16550触发中断的时候,软件必须读取相关寄存器,处理数据,然后清除中断标识。

参考:https://icode.best/i/815770382847922

http://www.xdnf.cn/news/408529.html

相关文章:

  • 从0到1:Python机器学习实战全攻略(8/10)
  • 小白学习java第18天(下):mybatis
  • SHAP分析!Transformer-GRU组合模型SHAP分析,模型可解释不在发愁!
  • 5倍无损压缩+50 倍速转换HD Video 4K/8K 视频处理
  • 前端项目2-01:个人简介页面
  • 系统架构设计(五):构件
  • 服务器共享文件夹如何实现外网访问
  • [数据结构高阶]并查集初识、手撕、可以解决哪类问题?
  • hdfs-客户端操作-文件上传
  • 记一次redis未授权被种挖矿
  • Linux常见命令
  • GPL v2 许可证深度解析:条款逻辑与合规风险指南(下)
  • Tomcat服务部署
  • pth的模型格式怎么变成SafeTensors了?
  • Matlab 空调温度时延模型的模糊pid控制
  • YOLOv8网络结构
  • 1.10-数据传输格式
  • Java使用POI+反射灵活的控制字段导出Excel
  • MapReduce 的工作原理
  • 数据库分区与分表详解
  • java 中 pojo 的详细讲解
  • BGP练习
  • Java 内存模型(JMM)与内存屏障:原理、实践与性能权衡
  • Python基础:类的深拷贝与浅拷贝-->with语句的使用及三个库:matplotlib基本画图-->pandas之Series创建
  • 用户态到内核态:Linux信号传递的九重门(二)
  • 微信小程序仿淘宝拍照/照片点位识图、点位裁剪生图、图片裁剪组件、图片点位框选、裁剪生成图片,canvasToImg
  • 使用 DMM 测试 TDR
  • Ai应用部署离不开Docker环境
  • shell脚本实现docker运行镜像挂载
  • 【分享】利用自定义表单,文件摆渡系统实现数据合规与高效流转