----本模块的功能是验证实现和PC机进行基本的串口通信的功能
需要在--PC机上安装一个串口调试工具来验证程序的功能
--程序实现了一个收发一帧10个bit(即无奇偶校验位)的串口控--制器,10个bit是1位起始位,8个数据位,1个结束--位
串口的波特律由程序中定义的div_par参数决定,更改该参数可以实--现相应的波特率
程序当前设定的div_par的值是0x104,对应的波特率是--9600
用一个8倍波特率的时钟将发送或接受每一位bit的周期时间--划分为8个时隙以使通信同步
--程序的工作过程是:串口处于全双工工作状态,按动key2,CPLD向PC发送皐elcome"--字符串(串口调试工具设成按ASCII码接受方式);PC可随时向CPLD发送0-F的十六进制--数据,CPLD接受后显示在7段数码管上
libraryIEEE;useIEEE
STD_LOGIC_1164
ALL;useIEEE
STD_LOGIC_ARITH
ALL;useIEEE
STD_LOGIC_UNSIGNED
ALL;ENTITYUARTISPORT(clk:INstd_logic;rst:INstd_logic;rxd:INstd_logic;--串行数据接收端txd:OUTstd_logic;--串行数据发送端en:OUTstd_logic_vector(7downto0);--数码管使能seg_data:OUTstd_logic_vector(7DOWNTO0);--数码管数据key_input:INstd_logic--按键输入);ENDUART;ARCHITECTUREarchOFUARTIS--//////////////////innerreg////////////////////SIGNALdiv_reg:std_logic_vector(15DOWNTO0);-