首页 Xilinx 正文

ARM开发之hello world 串口打印

yummy头像 yummy Xilinx 2022-05-03 13:05:22 0 245
导读:一、实验目的新建FPGA开发工程,然后调用原语输出单端信号转差分信号逻辑输出。差分信号输出逻辑为:输入一个信号,输出互为相反的两个信号。二、ZYNQ工程建立三、新建bd以及ZYNQ...

一、实验目的

新建FPGA开发工程,然后调用原语输出单端信号转差分信号逻辑输出。差分信号输出逻辑为:输入一个信号,输出互为相反的两个信号。

二、ZYNQ工程建立

三、新建bd以及ZYNQ处理器IP调用

  1. 新建bd文件

    image.png

    image.png

  2. 添加IP模块


    image.png

  3. 双击打开配置模式,在PS-PL Configuration->general->Enable Clock Resets,(找不到请右边下拉菜单) 取消勾选 FCLK_RESET_N。Zynq提供了四个对外输出的复位信号,低有效。我们不需要,因 为我们本例程没有FPGA部分设计。然后在general->AXI non secure enablement->GP Master AXI interface下,取消掉M AXI GP0 interface。这里我们也没有任何用到连接其他 模块的总线接口,所以也不需要。

    image.png

  4. 在Peripheral I/O Pins下,我么找到串口1,因为我们要用到串口打印信息,我们 勾选上,再将IO界面往右拉,确认是48,49管脚:

    image.png

  5. Clock configuration下,PL Fabric clocks,有四个对外提供的时钟。这四个也是给 FPGA提供的,我么也不需要,将其勾选掉

    image.png

  6. DDR3配置,程序运行是在DDR3上运行,所以不能配置错误。这里我们配置型号和位 宽如下图所示,型号是MT41J256M16 RE-125,位宽是16位。请一定要确认,否则程序无法 运行或下载到DDR3上。

     image.png

    7. 最后点击OK完成设置。回到Diagram界面,我们点击Diagram上方的Run Block Automation进行自动模块连接操作:

    8. 点击OK

     image.png

   9. 最后,模块自动将接口信号和DDR3信号印出来,表示这些信号是连接到芯片外部。我们都知道,DDR3是一种内存芯片,是跟芯片通过数据线,地址线,控制线和时钟线连接的,通过这些信号读写。

    image.png

   10 .回到Sources,我们在Design_1右键,点击Generate Output Products输出生成相关文件。包括bd图表文档里面所有IP核的例化硬件代码文件,仿真相关文件等。

image.png

  11.点击 Generate

   image.png

  12.等待生成完成之后,我们再次design_1图表文件右键点击Create HDL Wrapper自动创建工程的顶层例化文件。

   image.png

  13.点击OK

  image.png

 14. 生成了顶层的.v文件

  image.png

15. 最后,我们导出硬件描述文件。这个文件在后面的软件SDK环境中需要用到,也是整个软 件代码的硬件核心文件。File->Export->Export Hardware:

image.png

四、SDK下的代码开发

 1. 启动SDK,在工具栏File ->Launch SDK启动

  image.png

  2. 接着我们创建一个helloword的application工程。我们点击左上角工具栏File->New- >Application Project,工程名helloword,其余不变,点击Next:

  image.png

3. 选择hello world,点击finish

image.png

4.自动创建了一个bsp的支持包工程

image.png

5.接着调试helloworld,将两个USB接上电脑,然后选择helloworld工程,点击虫子符号

image.png

6.选择第一个点击OK,接着点击yes

image.png

7.弹出debug界面,看到helloworld.c函数,现在还未开始运行,只是说明可以正常debug

image.png

8.接下来,我们先在我的电脑->右键属性->设备管理器查看下串口号

image.png

9.记住这个串口号,关闭设备管理器,回到我们的SDK得DEBUG 界面。我们接着使用SDK自带的串口工具。工具栏的Window->Show View->Other,我们下拉找到 Terminal选中然后点击OK:

image.png

10.右下方就出现了我们的terminal窗口界面

image.png

11.我们点击terminal上面左边第一个绿色的符号打开串口连接。第一次打开需要设置,自动弹出 设置界面,我们设置好连接方式为serial,串口号COM4,波特率115200最后点击OK:

image.png

12.串口就连接好了。我们点击工具栏下方的启动运行按钮运行。由于代码输出helloword打印 之后就退出,CPU自动会进入一个exit函数中,然后自动停止运行。点击了启动运行按钮之后,按钮自动又变回原来状态。右下方的termal就出现了我们的helloword输出。

image.png



本文地址:https://xn--zqqs03dbu6a.cn/?id=48
若非特殊说明,文章均属本站原创,转载请注明原链接。

欢迎 发表评论:

标签列表

退出请按Esc键