ZYNQ7035PS--串口打印 及串口通信原理

琐碎知识点

PS端的IO分配相对固定,不能任意分配,且不需要在Vivado软件里分配管脚。但还是需要建立Vivado工程配置PS管脚。在IP生成的输出文件中已经包含了PS端引脚分配的XDC文件,绑定了PS端的IO,因此不需要再新建XDC绑定这些引脚。

本章开始使用ZYNQ的图形化方式建立工程create block design

PS端外设配置:

ZYNQ的PS端外设端很多是复用的,相同的引脚号可以配置成不同的功能(在Peripheral I/O Pins中修改)具体端口功能需要根据核心板原理图的设计进行选择。

生成顶层文件

Generate output products 会生成block的输出文件,包括IP,例化模板,RTL源文件,XDC约束,第三方综合文件等。

在export --> export hardware 导出硬件信息,这里就包含了PS端的配置化信息。此时,在本项目文件夹下,会多出一个sdk文件夹,文件夹中有一个.hdf文件,这个文件即为图形化设计后的硬件配置信息。

**_bsp文件夹下,bsp board support package板级支持包,包含开发板所需要的驱动文件,用于应用程序开发。

在 fsbl_debug.h文件中添加宏定义#define FSBL_DEBUG_INFO 可以在启动输出FSBL的一些状态信息,有利于调试,但会导致启动时间变长。

 

PS端UART读写控制

实验目标:用UART进行数据传输,每隔1s向外发送一串字符,如果收到数据,产生中断,并将收到的数据再发送出去。

在UART模块中用到了 TxFIFO, RxFIFO

SDK程序开发:

(1)主程序流程

UART初始化-->设置UART模式-->设置数据格式-->设置中断-->发送UART数据-->检查是否收到数据-->若收到数据发送收到的数据,否则等待1s继续发数据

(2)中断流程数据

中断初始化-->设置接收FIFP trigger寄存器,设置为1,即收到一个数据就中断-->打开接收trigger中断EMPTY及接收FIFO空中断RTRIG

(3)中断服务程序

判断状态寄存器是trigger还是empty-->清除相应中断-->trigger状态读取RxFIFO数据,empty状态将接收标志ReceivedFlag 置为1.

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小菜鸡变形记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值