查看: 1455|回复: 0

[评测分享] 【超越者Spartan-6 FPGA开发板】基于AXI UART IP核的串行通讯

[复制链接]
  • TA的每日心情
    奋斗
    2023-5-10 20:09
  • 签到天数: 1742 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2021-6-25 15:30:07 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 jinglixixi 于 2021-6-25 15:46 编辑

    在使用MicroBlaze进行嵌入式系统设计时,常会用到AXI Uartlite IP核与外部设备通信,而使用AXI UART IP核即可进行RS-232通讯协议。
    AXI UART IP核提供了UART信号和AMBA(高级微控制器总线体系结构高级可扩展接口)之间的AXI接口,并提供了异步串行数据传输的控制器接口。

    该核的特点是:
    对以axi4-lite接口接收的字符执行并/串行转换,并对从串行外围设备接收的字符执行串/并转换。它可发送或接收8、7、6及5位的字符,有一个停止位,并支持奇数、偶数或无奇偶位的校验配置,且可以独立发送和接收数据。
    AXI UARTIP核的顶层框图如图1所示,使用其进行串行通讯的系统框图如图2所示。
    1.png
    图1 AXI UART IP核顶层框图
    2.png
    图2 串行通讯系统框图
    由系统框图可知,当AXIUART 检测到串口设备状态发生变化时,AXIUART 就会产生一个中断信号传入中断控制器(AXIINTC),中断控制器生成中断输出信号,传入MicroBlaze处理器。要进行AXI UART IP核的串行通讯测试,其实现方式有2种,一种是在例程Hello World的基础上通过增加中断控制器(AXIINTC)IP核来实现,另一种就是直接利用已生成的设计成果,经下载来完成功能验证。由于第一种方式的操作步骤比较长,这里是采用第二种方式。具体的操作步骤如下:1.打开uart_intr的ISE工程,其见面如图3所示。
    3.png
    图3 打开uart_intr工程
    2.双击“microblaze”进入硬件系统,然后选取“IP Catalog”选项卡,并点击“Communication Low-Speed”前的“+”号将其展开,即可见到已添加串口IP核“AXI UART(Lite)”,见图4所示。
    4.png
    图4 串口IP核
    3.双击“AXI UART(Lite)”,即可进入IP核设置界面,将波特率设置为“115200”,数据位宽“8”,不启动奇偶校验位,见图5所示。然后点击“OK”,在弹出的图6所示对话框中继续点击“OK”即可。
    5.png
    图5 设置通讯参数
    6.png
    图6 连接对话框
    4.选取“Ports”选项卡,并点击“axi_intc_uart”加以展开,则可查看到中断信号源的状态。若如图7所示,则说明已连接好中断信号来源。
    7.png
    图7 已连接中断信号来源
    5. 选取“Project”选项卡,并双击“microblaze.ucf”,则可查看管脚约束,见图8所示。
    8.png
    图8 管脚约束
    6.双击“SDK”工具图标,并按图9所示点击按钮,则弹出工作空间设置对话框,按图10进行设置即可。
    9.png
    图9 SDK对话框
    10.png
    图10 设置工作空间
    7.若点击“uart_intr/src/main.c”,则可查看主程序的内容,见图11所示。
    11.png
    图11 主程序
    8. 右击“uart_intr”,在快捷菜单中选取“BuildProject”来编译工程。
    12.png
    图12 编译工程
    9. 按图13所示连接好下载器和USB接口,并打开电源。
    13.png
    图13 开发板连接
    10.打开串口工具,并按图14来设置参数,然后打开串口。
    14.png
    图14 设置并打开串口
    11.返回SDK界面,点击“ProgramFPGA”下载程序,如图15所示。
    15.png
    图15 下载程序
    在弹出的对话框中,点击“Program”,见图16所示。
    16.png
    图16 进行下载
    12.点击“Run”右侧的下拉图标,选择“RunConfigurations...”,见图17所示。
    17.png
    图17 运行配置
    13. 选取“STDIO Connection”选项卡,并按图18进行设置,然后依次“Apply”和“Run”按钮即可下载。
    18.png
    图18 运行程序
    此时,若点击“发送”按钮,即可见到图19所示的结果,即将发送区的数据发送出去。然后又接收回来。
    19.png
    图19 收发测试
    若清空后发送字符串“uarttest”,则执行结果如图20所示,说明测试正确。
    20.png
    图20 测试结果




    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-23 08:47 , Processed in 0.132017 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.