一、本节任务
创建一个PS最小系统,通过串口发送hello world到电脑

ZYNQ嵌入式系统开发流程
嵌入式最小系统包含一个UART和一个DDR3控制器

ZYNQ的最小嵌入式系统
二、开始操作
1.配置IP核,构建PS最小系统
新建工程、新建IP核等操作


新建ZYNQ最小系统

双击IP核,对其进行配置

可以在此对接口进行配置
最小系统需要对DDR控制器和UART串口进行配置

配置DDR
配置需要的串口引脚,正点原子开发板原理图的UART0为14,15脚,此处应与之对应。


配置串口波特率
原理图的UART0在Bank0,电压标准为3.3V,Bank1电压标准为1.8V,调整配置为与之对应。


原理图,BANK0使用33.333333M晶振,UART为14,15脚
取消勾选,可以去掉多余的接口

去掉M_AXI_GP0接口

去掉PS提供给PL的时钟接口

去掉PS提供给PL的复位接口

最终可以变成这样

自动配置端口


验证设计

生成IP,自动生成管脚约束等

生成顶层HDL文件

导出这个玩意
2.在Vitis中编写C语言代码
正点原子教程该更新了,现在ZYNQ的嵌入式系统开发都用Vitis了

打开Vitis
在Vitis中新建工程


选择刚才生成的.xsa文件

工程命名

选择一个例程,可以选择hello world或者空的工程
在main函数中改改代码


编译

烧到板子上

HelloWorld!但是为什么\n\r没用?
三、总结
原来配置一个PS的uart那么容易吗,去年暑假还在写硬件uart人都写麻了=-=。虽然妹懂底层的逻辑,但是我大受震撼。
这一次写得依托答辩,反正不是很难的东西,当作是大记忆恢复术吧,把暑假学的内容复习一下,后面再慢慢学其他东西,我还很好奇这里面怎么实现中断呢。
另外还是要多看官方的技术手册,感觉都没怎么啃技术手册,愣是跟着教程学,这不好。