




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.WinDriver安装与使用1. 获取安装文件和序列号Win32平台使用WD1020X86.EXE安装Win64平台使用WD1021X64.EXE安装序列号文件sn.txt2. 安装向导,NEXT3. 许可声明,I Agree4. 安装选项,Next5. 安装目录,Install6. 安装7. Windows Vista及以上版本会弹出Windows安全提示,勾选始终信任来自”Jungo LTD”的软件,点击安装8. 安装完成,Finish9. 注册提示,Register Now10. 输入license string,Activate license11. 注册成功后Current Active Licens发生变化,点击OK12. 安装成功DRFM板驱动说明接口说明1. DRFM_Board_num函数int DRFM_Board_num();描述获取DRFM板数量参数无返回值板卡数量备注DRFM板对上位机是一个PCI设备,上位机通过两个ID号(Vendor ID & Device ID)识别PCI设备,获取板卡数量实际上是扫描指定ID号的PCI设备数量。2. DRFM_Open函数bool DRFM_Open(int board_id);描述打开板卡参数board_id =板卡号返回值true = 成功 false = 失败备注对板卡进行操作前,需要打开板卡;板卡号可根据DRFM_Board_num返回值确定取值范围,0,板卡数量);3. DRFM_Close函数int DRFM_Close(int board_id);描述关闭板卡参数board_id = 板卡号返回值0 = 正常 非0 = 异常备注对板卡操作完成后,需关闭板卡;板卡号可根据DRFM_Board_num返回值确定取值范围,0,板卡数量);4. DRFM_Load_FPGA函数int DRFM_Load_FPGA(int board_id,char *path);描述加载XC6VSX315T芯片FPGA程序参数board_id = 板卡号path = 加载文件返回值0 = 正常 非0 = 异常备注5. DRFM_Load_9520函数int DRFM_Load_9520(int board_id,char *stp_path,DWORD baseAddr);描述配置AD9520时钟文件参数board_id = 板卡号stp_path = 时钟文件 baseAddr = 基址返回值0 = 正常 非0 = 异常备注6. DRFM_Load_9739函数int DRFM_Load_9739(int board_id,DWORD baseAddr);描述配置AD9739参数board_id = 板卡号baseAddr = 基址返回值0 = 正常 非0 = 异常备注7. DRFM_Read_Memory函数void DRFM_Read_Memory(int board_id,int Bar,DWORD addr,DWORD *data,int length);描述读XC5VLX30T寄存器参数board_id = 板卡号bar = BAR空间addr = 偏移地址data = 内存首地址length = 长度(DWORD)返回值无备注8. DRFM_Write_Memory函数void DRFM_Write_Memory(int board_id,int Bar,DWORD addr,DWORD *data,int length);描述写XC5VLX30T寄存器参数board_id = 板卡号bar = 基地址addr = 偏移地址data = 内存首地址length = 长度(DWORD)返回值无备注9. DRFM_Load_ADC函数int DRFM_Load_ADC(int board_id);描述配置ADC10D1500参数board_id = 板卡号返回值0 = 正常 非0 = 异常备注10. DSP_Load函数int DSP_Load(int board_id,CString m_HPILoaderFilePath);描述加载DSP参数board_id = 板卡号m_ HPILoaderFilePath = 加载路径返回值0 = 正常 非0 = 异常备注板卡控制流程代码1. 准备工作基于WinDriver实现使用已有的DRFM板卡驱动DeviceBase.hdrfm.hDEVICE.lib将以上三个文件加入工程在对话框类中声明DRFM_BOARD类对象;2. 初始化在CDRFMSYSDlg:OnInitDialog中添加板卡初始化操作RegistDevice(NULL);/注册驱动库ConnectToDevice();/连接至板卡int num = m_drfm.DRFM_Board_num();/获取板卡数量CString strBoardNum;strBoardNum.Format(检测到 %d 块 DRFM 板卡, num);/格式化字符串PrintMessage(strBoardNum);/打印消息3. 为控件添加变量同样方法添加以下变量偏移地址 m_offset数据 m_data4. 按钮事件响应函数UpdateData(TRUE);/更新参数m_drfm.DRFM_Read_Memory(0, m_space, m_offset, &m_data, 1);/读数据/m_space为地址空间/m_offset为偏移量/m_data为数据UpdateData(FALSE);/更新参数/UpdateData(TRUE);/更新参数m_drfm.DRFM_Write_Memory(0, m_space, m_offset, &m_data, 1);/写数据/m_space为地址空间/m_offset为偏移量/m_data为数据搭建界面1. 新建项目2. 选择工程类型3. MFC应用程序向导4. 选择应用程序类型5. 启动界面编辑窗口6. 拖放控件7. 为控件添加变量8. 设置变量参数9. 添加列和行在CDRFMSYSDlg:OnInitDialog方法中加入以下代码/第0列名称为X,宽度100m_wndListCtrl1.InsertColumn(0, X, 0, 100);/第1列名称为Y,宽度100m_wndListCtrl1.InsertColumn(1, Y, 0, 100);/设置列表的样式LVS_EX_FULLROWSELECT = 正行选取LVS_EX_GRIDLINES = 显示网格m_wndListCtrl1.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); /定义字符串变量CString strData; /添加N行数据for (int i=0; iN; i+)/格式化字符串变量strData.Format(“%d”, i); /添加行m_wndListCtrl1.InsertItem(i, strData); 10. 同样方法为输出列表创建对象,添加列创建对象m_wndListCtrl2为控件添加列:时间、描述、线程11. 更新列表信息12. 添加自定义消息13. 同样方法再添加一个自定义消息消息名称:WM_USER+2消息处理程序:OnPrintMessage14. OnPrintData中定义列表更新方法15. 通过PostMessage更新列表信息16. OnPrintMessage中定义消息更新方法17. 定义消息打印接口函数18. 打印第一条消息在CDRFMSYSDlg:OnInitDialog方法中加入以下代码PrintMessage(CString(这是第一条消息);TeeChart控件使用说明1. 注册TeeChart将TeeChart8.ocx拷贝至c:目录下;Win+R,输入cmd,回车;输入regsvr32 c:teechart8.ocx,回车2. 添加TeeChart控件3. 插入ActiveX控件4. 调整好TeeChart控件大小与位置5. 对控件进行相关设置双击TeeChart控件会弹出设置窗口6. 选择绘图类型7. 设置绘图属性8. 为TeeChart控件添加类9. TeeChart控件和对象关联注释掉构造函数的初始化10. 编写绘图代码在CDRFMSYSDlg:OnPrintData中插入绘图功能afx_msg LRESULT CDRFMSYSDlg:OnPrintData(WPARAM wParam, LPARAM lParam)double *pData = (double*)wParam; /获取数据指针CString strData; /定义字符串变量for (int i=0; iN; i+)strData.Format(%lf, pDatai); /格式化字符串m_wndListCtrl1.SetItemText(i, 1, strData); /设置列表信息long SeriesCount = m_Chart.get_SeriesCount(); /获取曲线的数量ASSERT(SeriesCount = 1); /断言曲线数量为1CSeries m_Series = m_Chart.Series(0); /获取第0条曲线m_Series.Clear(); /清空曲线点COleSafeArray XValues, YValues; /定义X轴和Y轴数据变量DWORD rgElements = N; /定义数据长度XValues.Create(VT_R8, 1, rgElements); /申请数据内存空间YValues.Create(VT_R8, 1, rgElements);for (long j=0; jN; j+)double x = (double)j;double y = pDataj; /赋值XValues.PutElement(&j, &x);YValues.PutElement(&j, &y);m_Series.AddArray(N, YValues, XValues); /绘制曲线delete pData; /释放内存return 0;11. 运行效果线程创建与执行1. 添加线程执行函数2. 定义Process()3. 启动工作线程在CDRFMSYSDlg:OnInitDialog方法中加入以下代码AfxBeginThread(Thread, this);4. 运行效果网络通信接口使用说明接口说明我们使用封装好的两个类进行网络通信的程序开发:CSocketServer和CSocketClient将以下文件加入工程:SocketServer.hSocketServer.cppSocketClient.hSocketClient.cpp1. Open2. Close3. Send4. Recv编写网络流程代码1. 声明CSocketServe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年高考语文总复习文言文专题-学生版-古代文化常识(复习讲义)
- 新媒体行业发展趋势前瞻
- 智能家居市场用户行为分析
- 医疗健康行业市场前景分析
- 病程转归影响-洞察及研究
- 数字孪生技术-第1篇-洞察及研究
- 废旧皮革能源化利用-洞察及研究
- 部队使用手机课件
- 人教统编版高中思想政治必修4第二单元认识社会与价值选择检测试题含答案(教师用)
- 湖北省孝感市教科研协作体2025-2026学年高二上学期9月起点考试语文试题(含答案)
- 2025年时事政治考试100题及答案
- 农业产业强镇建设资金申请项目可行性研究及风险评估报告
- 秋形势与政策正确认识中国经济热点问题-教案2025版本
- 药品注册审评员考核试题及答案
- GB/T 7251.10-2025低压成套开关设备和控制设备第10部分:规定成套设备的指南
- 森林防灭火知识培训材料课件
- 2025全国教育大会
- 多彩贵州课件
- 成本管控的课件
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 计划生育技术服务诊疗常规和操作常规
评论
0/150
提交评论