printf和xil_printf的不同

https://www.eefocus.com/walkie/blog/09-02/165549_bf04c.html

ps端对DDR的读写

/***************************************************************************/
/

*

  • @brief Performs an input operation for a memory location by reading

  •       from the specified address and returning the 8 bit Value read from
    
  •        that address.
    
  • @param Addr: contains the address to perform the input operation

  • @return The 8 bit Value read from the specified input address.

******************************************************************************/
static INLINE u8 Xil_In8(UINTPTR Addr)
{
return *(volatile u8 *) Addr;
}

/***************************************************************************/
/

*

  • @brief Performs an input operation for a memory location by reading from
  •       the specified address and returning the 16 bit Value read from that
    
  •       address.
    
  • @param Addr: contains the address to perform the input operation
  • @return The 16 bit Value read from the specified input address.

******************************************************************************/
static INLINE u16 Xil_In16(UINTPTR Addr)
{
return *(volatile u16 *) Addr;
}

/***************************************************************************/
/

*

  • @brief Performs an input operation for a memory location by
  •       reading from the specified address and returning the 32 bit Value
    
  •       read  from that address.
    
  • @param Addr: contains the address to perform the input operation
  • @return The 32 bit Value read from the specified input address.

******************************************************************************/
static INLINE u32 Xil_In32(UINTPTR Addr)
{
return *(volatile u32 *) Addr;
}

/***************************************************************************/
/

*

  • @brief Performs an input operation for a memory location by reading the
  •        64 bit Value read  from that address.
    
  • @param Addr: contains the address to perform the input operation
  • @return The 64 bit Value read from the specified input address.

******************************************************************************/
static INLINE u64 Xil_In64(UINTPTR Addr)
{
return *(volatile u64 *) Addr;
}

/***************************************************************************/
/

*

  • @brief Performs an output operation for an memory location by
  •       writing the 8 bit Value to the the specified address.
    
  • @param Addr: contains the address to perform the output operation
  • @param Value: contains the 8 bit Value to be written at the specified
  •       address.
    
  • @return None.

******************************************************************************/
static INLINE void Xil_Out8(UINTPTR Addr, u8 Value)
{
volatile u8 *LocalAddr = (volatile u8 *)Addr;
*LocalAddr = Value;
}

/***************************************************************************/
/

*

  • @brief Performs an output operation for a memory location by writing the
  •        16 bit Value to the the specified address.
    
  • @param Addr contains the address to perform the output operation
  • @param Value contains the Value to be written at the specified address.
  • @return None.

******************************************************************************/
static INLINE void Xil_Out16(UINTPTR Addr, u16 Value)
{
volatile u16 *LocalAddr = (volatile u16 *)Addr;
*LocalAddr = Value;
}

/***************************************************************************/
/

*

  • @brief Performs an output operation for a memory location by writing the
  •       32 bit Value to the the specified address.
    
  • @param Addr contains the address to perform the output operation
  • @param Value contains the 32 bit Value to be written at the specified
  •       address.
    
  • @return None.

******************************************************************************/
static INLINE void Xil_Out32(UINTPTR Addr, u32 Value)
{
#ifndef ENABLE_SAFETY
volatile u32 *LocalAddr = (volatile u32 *)Addr;
*LocalAddr = Value;
#else
XStl_RegUpdate(Addr, Value);
#endif
}

/***************************************************************************/
/

*

  • @brief Performs an output operation for a memory location by writing the
  •       64 bit Value to the the specified address.
    
  • @param Addr contains the address to perform the output operation
  • @param Value contains 64 bit Value to be written at the specified address.
  • @return None.

******************************************************************************/
static INLINE void Xil_Out64(UINTPTR Addr, u64 Value)
{
volatile u64 *LocalAddr = (volatile u64 *)Addr;
*LocalAddr = Value;
}

zynq之ps端开发相关推荐

  1. ZYNQ开发系列——PS和PL交互之PS端开发

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ZYNQ开发系列--PS和PL交互之PS端开发 前言 函数封装 后记 前言 前面<ZYNQ开发系列--使用AXI4LITE接口进 ...

  2. 初来乍到,zynq的ps端之hello world

    1. 为什么开始博客之旅 疫情带来的思考 西安疫情,让我从学习生活中慢了下来,呆在宿舍,肆无忌惮的玩了快两周,让我感到了空虚.自己大二开始就想着写写博客,来回顾自己的FPGA之路,但迟迟未行动起来.借 ...

  3. ZYNQ PS端MIO的使用——FPGA Vitis篇

    文章目录 1. 前言 2. MIO介绍 3. Vivado工程编写 4. Vitis工程编写 5. 实验小结 A. 附录 B. 工程源码下载 1. 前言 本实验介绍如何使用ZYNQ芯片PS端的MIO. ...

  4. ZYNQ使用1G/2.5G Ethernet PCS/PMA or SGMII拓展PS端网口

    文章目录 前言 一.硬件设计 1.创建 Block Design 2.配置 1G/2.5G Ethernet PCS/PMA or SGMII 核 3.配置PS端 4.连接PS端和1G/2.5G Et ...

  5. zynq系列之-----PS端iic使用

    本文主要讲述zynq的iic使用.此IIC只能作为主站,作为从站的不适合本文. Iic的接口在ps端.(iic的接口在pl端的情况下,不适合本文) 使用软件版本:vivado2018.3 pl端设置: ...

  6. XLINX项目之ZYNQ7000系列之PS端串口打印

    本篇文章,以配置一个PS端的UART外设,并打印一句话<hello ZYNQ7020,Author:liushuhe 2020.11.26>来演示 ZYNQ7020的基本开发流程,本篇文章 ...

  7. ZYNQ 7000 PS和PL 信号、接口、管脚分布

    1.ZYNQ 7000 PS端和PL端都有自己独立的电源引脚(Power Pin) 2.PS端接口和信号: PS_CLK(System reference clock) POR_RST_N(Power ...

  8. ddr传输 pl ps_Vitis ZYNQ开发秘籍 PS 端任意控制 VGA 显示画面最终实现

    上一篇文章,<Vitis ZYNQ开发秘籍>- PS 端任意控制 VGA 显示画面的硬件架构,已经介绍了在 Vivado 中需要调用的 IP 已经各 IP 间的连线.而在实现显示的功能,咱 ...

  9. zynq开发系列5:通过AXI GPIO的中断实现PL端按键控制PS端LED(SDK开发详解)

    axi_gpio是PL端gpio(FPGA资源搭建的软核),ps7_gpio是ps端gpio(硬核).打开Documentation的示例Examples,可知第二个是关于中断的示例.导入示例impo ...

  10. zynq开发系列5:通过AXI GPIO的中断实现PL端按键控制PS端LED

    在pg144-axi-gpio(LogiCORE IP Product Guide)中可以看见AXI GPIO提供通用输入输出接口到AXI接口,32位软核,设计与AXI4-Lite接口进行连接.IOP ...

最新文章

  1. 建立CentOS 6.9 的Yum本地源
  2. 完整中英文世界国家级联下拉列表插件【前端版】
  3. 一文看尽各种 NLP 任务
  4. 网站域名解析端口_Linux Nginx网站服务——2
  5. ​网页图表Highcharts实践教程之标签组与载入动画
  6. Java基础-重写方法
  7. tensorflow就该这么学--4(识别手写数字)
  8. nginx平滑升级make upgrade出错的解决办法
  9. 在IIS上部署你的ASP.NET Core项目
  10. 同TTX更可爱的层次分析法游戏破解
  11. 对于spring的一些巩固一些难点的理解 2021-04-18
  12. Android中的Menu(菜单)的三种类型菜单的学习
  13. 单片机音频谱曲软件_单片机谱曲软件讲解
  14. Rayman的绝顶之路——Leetcode每日一题打卡7
  15. 计算机打印机端口号,网络打印机端口号.doc
  16. Modern Family 开篇语
  17. OIO、NIO、AIO小结
  18. iMX6UL开发板移植libcurl库
  19. 跟着团子学SAP PS:企业如何依托信息化工具构建成熟的项目成本管理体系
  20. 12.1接收短信【斯纳克PACS医学影像云平台用户手册】

热门文章

  1. 充电器pps功能是什么_科普:PPS充电器为何不兼容笔电?
  2. 冰心吴文藻的爱情始于留学远洋客轮上
  3. 20162327WJH《程序设计与数据结构》课程总结
  4. 机器人工程行业算制造业吗
  5. 无源贴片晶振四角引脚_贴片晶振引脚脚位地方向如何进行区分?
  6. CSS实现自定义虚线
  7. 基于python和tesseract库的中英文识别(OCR)
  8. qpython怎么使用_SL4A、QPython学习笔记
  9. Android距离传感器亮屏,Android距离感应器P-Sensor浅析
  10. 大学英语(第四册)复习(原文及全文翻译)——Unit 5 - TO LIE OR NOT TOLIE—THE DOCTOR‘S DILEMMA(撒谎还是不撒谎——医生的难题)