资料
  • 资料
  • 专题
用VHDL语言在CPLD上实现串行通信
推荐星级:
时间:2019-12-25
大小:105KB
阅读数:237
上传用户:978461154_qq
查看他发布的资源
下载次数
0
所需E币
5
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
用VHDL语言在CPLD上实现串行通信 用VHDL语言在CPLD上实现串行通信   摘 要: 串行通信是实现远程测控的重要手段。采用VHDL语言在CPLD上实现了串行通信,完全可 以脱离单片机使用。 关键词: CPLD;VHDL;串行通信 引言 随着EDA技术得发展,CPLD已经在许多方面得到了广泛应用,而串行通信是实现远程测控 的重要手段。本文利用VHDL语言在CPLD上实现了串行通信,完全可以脱离单片机使用, 克服了单片机的许多缺点。   串口结构及内容 本设计所采用的是异步通信方式,可以规定传输的一个数据是10位,其中最低位为启动 位(逻辑0低电平),最高位为停止位(逻辑1高电平),中间8位是数据 位。为了方便对数据进行正确控制,选取发送(接受)每位数据用4个时钟周期。为了能够 达到串行通信的波特率,例如4800B/s,则需把时钟频率设为 19.2kHz。系统结构如图1所示: [pic] 图1 系统原理 首先介绍串行通信发送器的工作原理。6位计数器用于判断发送的数据是否发送完毕及在 发送完毕后装入新的数据,其VHDL语言程序如下: process(carry) begin if carry'event and carry='1'then if counter40="100111"then load counter40 else counter40 load end if; end if; end process; 由于本设计中选取一位数据4个时钟周期,因此当计数到“100111”时,表示10位数据发送 完毕;此时将加载信号“load”置1,则向移位寄存器加载10位数据。此计数器……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
PARTNER CONTENT
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书