火龙果(redpitaya)开发板常用接口C语言开发指南(九)——产生信号脉冲(持续更新中)

——本人为《火龙果实战指南——搭建基于Zynq处理器的测量仪器与创新实践平台》一书的作者之一,为了便于各位快速上手火龙果开发板,现提供部分实战指南,包含环境配置、源码、效果等,供大家学习交流使用。

在实际的工程中很多时候都需要信号脉冲,信号脉冲的功能很多,可以作为启动信号,也可以作为芯片各个部分之间的通信的信号,故而本节将为大家讲解如何利用火龙果开发板产生一个需要的信号脉冲。便于读者为今后实际的工程做准备。
连接开发板并在项目文件夹redpitaya下创建GenerateBurstTriggerSoftware.c文件,写入如下代码

关键库函数讲解:

  • int rp_Init():初始化火龙果应用程序库。在其他库之前,必须先调用它,如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenMode(rp_channel_t channel, rp_gen_mode_t mode):设置生成模式.channel参数设置通道,mode参数设置波形形式,CONTINUOUS, BURST, STREAM参数分别表示连续信号,冲击信号和数据流,如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenBurstCount(rp_channel_t channel, int num):生成脉冲波形,channel参数设置通道, num参数设置波形个数,若为-1将会连续产生。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenBurstRepetitions(rp_channel_t channel, int repetitions):设置触发重复次数,rp_channel_t channel参数选择通道,int repetitions设置重复次数,若为-1将会无限重复。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenBurstPeriod(rp_channel_t channel, uint32_t period):在微秒级别内设置一次触发的周期,周期必须大于等于一次触发所需的时间,rp_channel_t channel参数选择通道,uint32_t period参数设置一个周期的时间,如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenTriggerSource(rp_channel_t channel, rp_trig_src_t src):设置触发源,rp_channel_t channel参数设置通道,rp_trig_src_t src中src指针将返回,如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenFreq(rp_channel_t channel, float frequency):设置信道和信号频率,channel参数设置通道,frequency设置信号频率。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenAmp(rp_channel_t channel, float amplitude):设置信道和信号峰峰值,channel参数设置通道,amplitude设置信号峰峰值。从0到最大值(最大值为1V)。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenWaveform(rp_channel_t channel, rp_waveform_t type):设置信道和波形,channel参数设置通道,type参数设置波形,参数为SINE, SQUARE, TRIANGLE, SAWTOOTH, PWM, DC, ARBITRARY分别表示正弦波,方波、三角波、锯齿波、PWM波、直流信号以及任意波形。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • int rp_GenArbWaveform(rp_channel_t channel, float waveform, uint32_t length):设置用户自定义波形,channel参数定义通道,waveform定义波形,最小值-1V最大值1V,length定义波形长度。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e中任意一个即代表错误发生。
  • int rp_GenOutEnable(rp_channel_t channel):打开输出,程序运行到此语句火龙果开始输出波形.channel设置输出通道,如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
  • rp_Release():释放火龙果应用程序库资源,库不再使用之后放在最后,通常放在应用程序最后。如果函数成功,返回值是rp_ok,如果函数不成功,返回值为rp_e*中任意一个即代表错误发生。
    编译参考命令:
make GenerateBurstTriggerSoftware
cat /opt/redpitaya/fpga/fpga_0.94.bit > /dev/xdevcfg
LD_LIBRARY_PA TH=/opt/redpitaya/lib ./ GenerateBurstTriggerSoftware

此时程序开始运行测试,可以看到火龙果开发板已经从通道OUT1输出了脉冲波形(如图所示),输出脉冲以正弦波的形式体现。读者可根据自己的实际需求对峰峰值,频率等参数进行调节。

火龙果(redpitaya)开发板常用接口C语言开发指南(九)——产生信号脉冲(持续更新中)相关推荐

  1. NanoPi开发板硬件接口

    NanoPi开发板硬件接口 NanoPi WiKi链接

  2. fmc接口定义_Xilinx开发板FMC接口-Samtec连接器LPC HPC

    Xilinx 开发板 FMC 接口 -Samtec 连接器 LPC HPC 一. FMC 标准 FMC 标准描述了一个通用的模块,它是以一定范围的应用,环境和市场为目标的. 该 标准由包括 FPGA ...

  3. c语言接口作用是什么,单片机接口C语言开发技术

    单片机接口C语言开发技术 编辑 锁定 讨论 上传视频 <单片机接口C语言开发技术>是2009年清华大学出版社出版的图书,作者是龚运新.彭建军.[1] 书    名 单片机接口C语言开发技术 ...

  4. Go语言开发学习笔记(持续更新中)

    Go语言开发学习笔记(持续更新中) 仅供自我学习 更好的文档请选择下方 https://studygolang.com/pkgdoc https://www.topgoer.com/go%E5%9F% ...

  5. 北京迅为i.mx6ull终结者开发板使用手册+嵌入式Linux开发指南+裸机手册下载地址

    i.MX6ULL终结者三大手册,加速学习和开发速度,一秒化无形! <嵌入式Linux开发指南>+<开发板使用手册>+<裸机使用手册> 详细手册点击链接下载:http ...

  6. 大型医院云HIS系统:采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发 融合B/S版电子病历系统

    一套医院云his系统源码 采用前后端分离架构,前端由Angular语言.JavaScript开发:后端使用Java语言开发.融合B/S版电子病历系统,支持电子病历四级,HIS与电子病历系统均拥有自主知 ...

  7. python 物联网开发板_物联网学什么开发板好?

    可以试试我们的三明治开发板呀!比较容易上手,你可以使用它轻松创建一款通过智能音箱语音或者手机App控制的智能硬件产品,喜欢玩DIY的知友可以体验下. 配合我们的IoT开发平台,即可快速完成智能产品de ...

  8. alios things开发板_AliOS Things图形界面开发指南

    摘要: 简介   物联网设备开发过程中,嵌入式GUI(用户图形界面)的开发是一个重要的组成部分.许多智能设备如智能家电.智能手表.智能仪表上都会涉及到GUI开发.AliOS Things集成开源图形库 ...

  9. 玩转开发板--Linux系统移植至开发板fl2440实践过程

    一.开发板介绍     CPU:S3C2440(SAMSUNG).ARM920T.400MHz     Pone/mic:耳机和话筒 JTAG:可以通过外部插入直接控制CPU,因此在初始化内存时,起到 ...

最新文章

  1. 阿里、京东、去哪儿等大厂技术专家齐聚北京,Flink China Meetup再度归来!
  2. 四大发明之活字印刷——面向对象思想的胜利
  3. python展示数据库视图_在Django的视图中使用数据库查询的方法
  4. as cast float server sql_Sql Server中Float格式转换字符串varchar方法(转)
  5. java 设计作业——简单计算器
  6. 饶军:Apache Kafka的过去,现在,和未来 1
  7. [渝粤教育] 中国地质大学 运筹学1 复习题
  8. 计算机科学导论填空题,计算机科学导论习题
  9. 汇编语言典型例子详解_汇编语言常见例子
  10. miui v5 android版本,miuiv5主题下载-miuiv5主题(MiroEX) 安卓版v3.4.1-PC6安卓网
  11. 工具-IDEA 好看的样式字体/字号/
  12. Golang环境windows 设置 GOROOT 和 GOPATH
  13. 快速搭建免费的个人网站
  14. Hadoop是什么?基本概念
  15. 计算机的键盘组合件,电脑组合键盘快捷键大全
  16. 手机怎样测海拔高度?手机测量海拔的方法分享。
  17. 静态链接之与静态库的链接
  18. 利用大数据风控教你全栈式实时反欺诈
  19. 教学用计算机怎样关闭系统还原,关闭系统还原好吗 如何关闭系统还原【图文】...
  20. Attention Map

热门文章

  1. 2016年第二季度总结
  2. 百度推广客户端下载地址
  3. 一个IT人成功的背后!
  4. 超强视频剪切工具Boilsoft Video Splitter7.02.2中文免费绿色版
  5. 北京linux嵌入式培训,北京嵌入式培训上嵌Linux开发基础和嵌入式C语言初级编程总结...
  6. “互联网+”智慧农业-国稻种芯-万祥军:江西现代农业弯道赶超
  7. 青岛新添智能交通大数据共享服务平台 可避堵
  8. 用简单命令查看Windows上USB盘使用记录
  9. 1033202-61-7|2-(4-碘苯基)咪唑[4,5f][1,10]邻菲啰啉|分子式C19H11IN4|分子量422.22
  10. 什么是CMA,具备CMA资质的软件第三方检测机构有哪些?