资料
  • 资料
  • 专题
FPGA器件实现UART
推荐星级:
类别: 消费电子
时间:2020-01-14
大小:49KB
阅读数:194
上传用户:wsu_w_hotmail.com
查看他发布的资源
下载次数
0
所需E币
5
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
用FPGA器件实现UART核心功能的一种方法 用FPGA器件实现UART核心功能的一种方法 串行外设都会用到RS232- C异步串行接口,传统上采用专用的集成电路即UART实现,如TI、EXAR、EPIC的550、45 2等系列,但是我们一般不需要使用完整的UART的功能,而且对于多串口的设备或需要加 密通讯的场合使用UART也不是最合适的。如果设计上用到了FPGA/CPLD器件,那么就可以 将所需要的UART功能集成到FPGA内部,本人最近在用XILINX的XCS30做一个设计的时候, 就使用VHDL将UADT的核心功能集成了,从而使整个设计更加紧凑,更小巧、稳定、可靠 ,下面就谈谈设计方法。 ---- 分析UART的结构,可以看出UART主要由数据总线接口、控制逻辑和状态接口、波特率发 生器、发送和接受等部分组成,各部分间关系如图一。 [pic] ---- 了解了UART的各部分组成结构后,下面对各部分的功能进行详细的分析。我们假定所要 设计的UART为:数据位为7位、8位可选,波特率可选,效验方式为奇、偶、无等效验方 式,下面的分析都是在这个假定的基础上进行。 一、波特率发生部分 ---- 从图一可以看出,UART的接收和发送是按照相同的波特率进行收发的(当然也可以实现 成对的不同波特率进行收发),波特率是可以通过CPU的总线接口设置的。UART收发的每 一个数据宽度都是波特率发生器输出的时钟周期的16倍,即假定当前按照9600bps进行收 发,那么波特率发生器输出的时钟频率应为9600*16Hz,当然这也是可以改变的,我们 只是按照UART的方法进行设计。 ---- 我们假定提供的时钟为1.8432MHz,那么可以很简单地用CPU写入不同的数值到波特率保 持寄存器,然后用计数器的方式生成所需要的各种波特率,这个值的计算原则就是1843 ……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
PARTNER CONTENT
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书