高级会员
- 积分
- 762
- 金钱
- 762
- 注册时间
- 2021-5-18
- 在线时间
- 28 小时
|
1)实验平台:正点原子达芬奇FPGA开发板
2) 摘自【正点原子】达芬奇之Microblaze 开发指南
3)购买链接:https://detail.tmall.com/item.htm?id=624335496505
4)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/fpga/zdyz_dafenqi.html
5) 正点原子官方B站:https://space.bilibili.com/394620890
6)对正点原子FPGA感兴趣的同学可以加群讨论:876744900
第五章串口中断实验
我们在使用MicroBlaze进行嵌入式系统设计的时候,通常会用到AXI Uartlite IP核与外部设备通信。AXI UART IP核实现了RS-232通讯协议,并使得大家可以设置串口通信相关的波特率、奇偶校验位、停止位和数据位等参数。本章我们进一步向大家介绍利用AXI UART IP核的中断进行通信的方法。
本章包括以下几个部分:
55.1简介
5.2实验任务
5.3硬件设计
5.4软件设计
5.5下载验证
5.1简介
AXI UART IP核提供UART信号和AMBA(高级微控制器总线体系结构高级可扩展接口)之间的AXI接口,并提供异步串行数据传输的控制器接口。
AXI UART Lite IP核具有以下特点:
对通过axi4-lite接口接收的字符执行并行到串行转换,并对从串行外围设备接收的字符执行串行到并行转换。
发送和接收8、7、6或5位字符,有一个停止位,并支持奇数、偶数或无奇偶位的配置。AXI UART Lite可以独立传输和接收数据。
下图为AXI UART IP核的顶层框图:
图 5.1.1 AXI UART IP核的顶层框图
AXI Interface(AXI接口):该模块实现了用于寄存器访问和数据传输的AXI4-LITE从接口。
UART Lite Registers(UART Lite寄存器模块):此模块包括内存映射寄存器。它由一个控制寄存器、一个状态寄存器和一对发射/接收FIFO组成,两个FIFO都有16个字符的深度。当接收FIFO变为非空或当发送FIFO变为空时,生成上升沿敏感的中断。此中断可以通过使用中断启用/禁用信号来屏蔽。
UART Control(UART控制模块):该模块包括Rx Control(接收控制)、Tx Control(发送控制)、BRG (Baud Rate Generator)和Interrupt Control(中断控制)四个模块。
AXI UART IP核提供了AXI4-Lite接口,我们可以通过AXI4-Lite接口读取状态寄存器或配置UART Control模块(复位收发FIFO、启用中断)。当AXI UART接收到上位机发送的数据后,Rx Control模块根据BRG模块产生的波特率将串行的数据转化成并行数据,写入接收FIFO,然后处理器通过AXI4-Lite接口读出接收FIFO中的数据;处理器中的数据也可以通过AXI4-Lite接口写入发送FIFO,然后经Tx Control根据BRG模块产生的波特率将并行数据转化为串行数据发送出去。
5.2实验任务
本章的实验任务是根据AXI UART IP核产生的中断信号,完成串口数据的收发。
5.3硬件设计
根据实验任务可以画出系统框图,如图 5.3.1所示:
图 5.3.1 系统框图
原文链接:https://www.yunduoketang.com/article/zhibojiaoxuejq.html
|
|