没有合适的资源?快使用搜索试试~ 我知道了~
工程科学与技术,国际期刊19(2016)964完整文章用于低成本医用超声扫描仪的微控制器USB接口与MATLAB GUIJean Rossario Raja,*,S.M.K. Rahmana,b,Sneh Ananda,ba印度新德里印度理工学院生物医学工程中心b印度新德里全印医学科学研究所生物医学工程单位A R T I C L E I N F O A B S T R A C T文章历史记录:2015年12月13日收到2016年1月12016年1月12日接受2016年2月1日在线发布保留字:MATLABMEX程序微控制器超声波扫描仪USBUSBXpress本文介绍了一种基于8051单片机控制的超声扫描仪原型硬件,从主机笔记本电脑MATLAB GUI。许多仪器的硬件控制都是由微控制器实现的。这些微控制器又由驻留在通过USB接口连接的计算机中的GUI控制传统上,这种GUI是使用“C”语言或其变体开发的但是当这类GUI程序需要处理大量的图像/视频时,MATLAB GUI是一个更好的工具。然而,将MATLAB与微控制器接口是一项具有挑战性的任务。在这里,MATLAB接口通过一个中间MEX本文介绍了用MATLAB GUI实现单片机平滑接口的MEX编程方法。© 2016,Karabuk University.出版社:Elsevier B.V.1. 介绍基于微控制器的系统作为内部和外部控制提供了重大进步微控制器可以控制一个典型的电路板中的内部设备的主要部分。此外,大多数芯片还具有可由微控制器控制的内置接口。它们具有USB接口,通过该接口与计算机或服务器等外部设备进行接口[1]。在[2]中提出了一种使用Arduino和Visual Basic进行操作性研究的低成本USB接口。许多数据采集系统使用微控制器和USB接口[3]。单片机程序设计采用传统微处理器和微控制器为硬件和软件的集成提供了途径[4]。微控制器在仪器仪表领域有着深远的应用[5,6]。主计算机或服务器中的应用程序通常以诸如“C”或其变体(如C++、Visual C++、Java等)的语言编写[7]的文件。微控制器制造商以窗口动态链接库(DLL)的形式提供接口程序,可与微控制器接口的应用程序一起编译[8,9]。对于涉及信号处理、图像处理或视频处理的应用,MATLAB是一种比较适合的编程方式* 通讯作者。联系电话:+919811084119;传真:+91 1126862037。电子邮件地址:bmz108120@cbme.iitd.ac.in(J.R.Raj)。由Karabuk大学负责进行同行审查http://dx.doi.org/10.1016/j.jestch.2016.01.0082215-0986/© 2016,Karabuk University.出版社:Elsevier B.V.语言[10,11]。在[12]中使用MATLAB测试台研究了不同成像条件下超声成像的质量指标和视觉感知。在MATLAB中,有许多内置函数和例程可以更快地推出应用程序[13]。MATLAB有一个非常大的内置算法数据库,用于数学建模,图像处理,仿真和计算机视觉应用[14,15]。MATLAB能够读取各种常见和特定领域的图像格式。然而,主要的挑战是在接口的MATLAB应用程序与微控制器,以获得最好的两个世界。这些要求涉及图像、视频的实时读取以及直接处理和显示[16]。我们遇到挑战的一个应用是开发医用超声扫描机的原型[17,18]。该应用程序在MATLAB中进行,以利用丰富的图像和视频处理功能[10,19]。硬件具有与微控制器的USB接口,用于配置内部芯片的各种参数并执行不同的操作[20微控制器与不同的内部芯片连接,例如ADC、发送侧FPGA(TxFPGA)、接收侧FPGA(RxFPGA)等[23,24]。微控制器接口的框图如图1所示。ADC具有自定义串行总线编程,而FPGA使用串行外设接口(SPI)编程明。针对这些器件的接口程序也为微控制器和FPGA开发。MATLAB和微控制器制造商都没有提供用于交互工作的接口逻辑。因此,出版社:Karabuk University,PressUnit ISSN(印刷版):1302-0056 ISSN(在线):2215-0986 ISSN(电子邮件):1308-2043主 办可 在 www.sciencedirect.com上 在 线ScienceDirect可在ScienceDirect上获得目录列表工程科学与技术国际期刊杂志主页:http://www.elsevier.com/locate/jestchUSB接口MDIO接口千兆以太网物理Rx FPGA微控制器J.R. Raj等人/ Engineering Science and Technology,an International Journal 19(2016)964-969965串行接口Tx FPGA地址/数据总线接口SPI接口Fig. 1. 实验装置的框图。MATLAB GUI和微控制器是一项具有挑战性的任务。本文介绍了一种用C语言接口函数MEX程序进行接口的新方法2. 材料和方法2.1. 接口体系结构MATLAB GUI和微控制器与USB接口的逻辑框图如图所示。2,其中指明了微控制器端以及MATLAB GUI端的逻辑用于研究。 使用Silicon Laboratories C8051F340微控制器。 它的最高运行速度为48 MHz,具有4 k的板载RAM(XRAM)和64 k的闪存. 微控制器集成了USB接收器和USB控制器。它有48个IO引脚,配置为5个IO总线,每个IO总线有8个IO。超声扫描仪原型中的微处理器与一组ADC和FPGA接口微处理器的固件是用C语言编写一个IO总线用作编程头,用于对微控制器进行编程。使用M/s SiliconLabs的编程器硬件将固件传输到该开发需要M/s Silicon Labs提供的USBXpress API,用于微控制器固件、 固件开发、 主 机 中USBXpress驱动程序安装、C++编译器安装(使用Visual C++)、MEX文件开发、MATLAB GUI开发以及从MATLAB编译和链接2.2.USBXpress APISilicon Laboratories USBXpress提供主机和设备软件解决方案,用于将通信桥连接到USB。主机软件和设备固件的高级应用程序接口(API)用于提供USB连接。USBXpress包括Windows设备驱动程序、设备驱动程序安装程序、以DLL形式提供的主机接口函数库(主机API)主机API执行的一些重要功能如表1所示。在执行每个函数时,该函数返回操作的状态,如SI_SUCCESS或SI_DEVICE_NOT_FOUND或SI_INVALID_PARAMETER,以及任何返回值,以在读取或写入逻辑中采取适当的校正步骤。API在中断驱动模式下使用。除了“主”固件文件外,作为应用程序一部分提供的c8051340.h和USB_API. h文件也添加到项目中在构建目标时,USBXpress库文件USBX_F320_1.LIB被链接为外部对象。2.3. 微控制器固件在开发的原型中,微控制器配置了不同的芯片,如ADC,FPGA等,通过MATLAB GUI的控制。因此,微控制器固件实现USB接口逻辑以及其他设备的接口逻辑。固件中包含为使用四个IO总线与ADC、TxFPGA、RxFPGA和PHY设备尽管ADC侧不需要任何单独的软件逻辑,但FPGA侧需要用Verilog或VHDL等语言编写的硬件逻辑。类似的接口逻辑也写入FPGA侧,用于使用SPI接口的读写操作。SPI接口有读,写,芯片使能,主在从输出(MISO)和主输出从在(MOSI)引脚的互连。USB_API. h包含通用代码控制USB外设状态所需的定义,但这USB接口函数的USB_API. h和其他文件(如C8051F340_def. h、compiler_defs.h、stddef. h、stdio. h等)均包含在编译中。图中给出了固件的流程图。3.第三章。USB图二、微控制器MATLAB接口。ADCSiLabs提供的USBXpress微控制器固件微控制器程序SiLabs提供的USBXpressDLLMexC语言编程(DLL)MATLABGUI笔记本电脑项目USBXpress驱动程序安装在笔记本电脑966J.R. Raj等/工程科学与技术,国际期刊19(2016)964表1USB API设备接口函数。函数名称函数USB_Clock_Start设置USB时钟USB_Init启用USB接口Block_Write通过USB向主机写入数据缓冲区Block_Read通过USB从主机读取数据缓冲区USB_Int_Enable启用API中断USB_Disable禁用USB接口USB_Suspend挂起USB接口表2USB DLL接口函数。函数名称函数SI_GetNumDevices返回连接的设备数SI_GetProductString返回设备的描述符SI_Open打开设备并返回句柄SI_Close取消挂起的IO并关闭设备SI_Read从设备读取数据块SI_Write将数据块写入设备SI_SetTimeouts设置读取和写入块超时SI_CheckRXQueue获取设备Rx队列中的字节数2.4.USBXpress DLLM/s Silicon Labs 提 供 了 USBXpress DLL 作 为 它 充 当 主 机 中 的USBXpress驱动程序与MEX文件之间的接口。DLL支持的重要函数如表2所示。用户通过调用SI_GetNumDevices启动与目标USB设备的通信这将返回目标设备的数量。当调用SI_GetProductString以构建设备序列号或产品描述字符串的列表时,将使用此编号。为了访问设 备 , 使 用 从 对 SI_GetNumDevices 的 调 用 确 定 的 索 引 通 过 对SI_Open的调用来打开该设备。SI_Open函数将返回所有后续访问中使用的设备句柄。数据I/O是执行形成使用SI_写和SI_读功能。当I/O操作完成时,通过调用SI_Close关闭设备这些函数用于从MEX程序文件读取数据并将数据写入USB接口。2.5.MEX接口工 作 的 核 心 是 在 C 语 言 中 开 发 MEX 此 外 , MEX 集 成 了USBXpress DLL的connec,与微控制器的活力。因此,MEX文件充当MATLAB和微控制器之间的 MEX头文件包含函数声明。MEXC++文件包括MEX文件的读取TxFPGA参数的功能流程图如图所示。 四、开始USB_时钟_启动USB_初始化端口初始化定时器初始化块写图三. 微控制器固件流程图。等待中断中断类型USBXpress设备暂停停止FFFFF情况1壳体2壳体3不壳体4壳体5壳体6壳体7F壳体8FFTTTTT不块读取接口和设备写入PHY写入ADC写入RxFPGA写入TxFPGA从PHY从ADC从RxFPGA从TxFPGA<1排队成功案例不F返回错误SI_CheckRX队列SI_写入接收机ADCTx FPGA以太网MAC以太网PHYRx FPGA微控制器不成功案例不F返回错误SI_设置超时SI_GetProductString成功案例不F返回错误SI_打开J.R. Raj等人/ Engineering Science and Technology,an International Journal 19(2016)964-969967图五. 超声波扫描仪原型硬件。F成功案例不返回错误SI_关闭SI_读取见图4。 用于读取寄存器值的MEX函数流程图。同样,其他所需的函数也内置在MEX文件中。所需的SiliconLaboratories 库 文 件 SiUSBXp.dll 、 SiUSBXp.h 、 SiUSBXp.lib 和SiUSBXp.exp都放在同一个项目文件夹中。MEX文件通过MATLAB链接Visual C++编译器编译成DLLMEX文件也可以使用Visual C++应 用 程 序 直 接 从 项 目 中 编 译 。 本 例 中 创 建 的 DLL 名 称 为“USConfig.dll”。包含所有函数名称的库文件MATLAB 程 序 使 用 MATLAB 的 “loadlibrary” 和 “calllib” 函 数 从MATLAB文件或命令提示符直接调用MEX函数。这些函数在需要时作为MATLAB GUI代码的一部分适当地包括在内。USBXpress带有自己的驱动程序,需要安装在主机上一旦安装了驱动程序,当微处理器插入时,主机计算机自动识别微处理器3. 结果一个原型开发的超声扫描仪与USB接口对MATLAB图形用户界面显示在图。 五、 该原型采用SiliconLaboratoriesC8051F340微控制器、XilinxFPGA和ADI公司的ADC(AD9272)。它具有微控制器编程头以及USB接口。在硬件上的不同组件标记在图. 五、MATLAB GUI如图所示。 六、使用GUI按钮的按钮点击功能,从该GUI执行各种ADC、FPGA、PHY等配置。这些函数依次调用MEX接口函数,并将所需的值传递给微控制器接口AD 9272的配置包括LAN增益、VGA增益、AAF上限和下限截止频率、启用/禁用不同测试模式等。通过微控制器通过TxFPGA配置脉冲发生器来启用不同的超声通道所有这些配置参数都被编码为二进制值并传递给微控制器。这些器件中的各种寄存器值也可通过此接口进行读写。最后,原型超声扫描的开始和停止也通过微控制器在发射和接收方向上配置FPGA来控制。 对于体模测试,制备琼脂-琼脂体模。 超声扫描图像是使用一个包含体模拍摄的,如图1所示。7.第一次会议。使用线性阵列换能器探头在4 MHz下拍摄图像在MATLAB中实现了接收波束形成、平滑、锐化、直方图均衡等图像和视频处理算法接收波束形成涉及到同时接收信道的延迟和求和算法夹杂物的位置以及体模的深度如图所示。7.第一次会议。4. 结论与讨论MATLAB与单片机的接口是超声机设计中的一个重大这使得各种信号,图像和视频处理要求可以使用MATLAB内置函数轻松执行[13]。捕获的原始数据被数字化并发送到MATLAB进行进一步处理。因此,许多硬件处理被转移到MATLAB中的软件算法,如波束形成等,在主机中,从而减少了硬件的尺寸和复杂性提出了基于USB的高数据速率通信的多普勒超声系统的软件处理[21],其中数字信号处理从硬件转移到软件许可。这也有助于开发适合远程医疗应用的超声机器[23]。这种接口在微控制器控制和编程的其他广泛领域具有更大的影响,因此是一种非常创新的方法。这在传感器领域也有许多应用,包括医疗电子产品。有大量的微控制器实现与原生的“C”或“C++”接口成功案例不F返回错误SI_GetNumDevices不成功案例不F返回错误成功案例不返回数据F返回错误读取或写入配置寄存器值脉冲发生器通道使能ADC配置968J.R. Raj等/工程科学与技术,国际期刊19(2016)964图六、 MATLAB GUI用于配置各种扫描仪参数。Java应用程序。 然而,没有这样的实现可用于与MATLAB的微控制器的接口。在该应用中,从超声换能器接收的数据作为未来的步骤,还可以实现通过USB接口捕获数据包致谢作者感谢印度政府科学技术部为该项目提供资助,资助号为SR/WOS-A/ET-24/2008。 作者还指出,申办者在研究设计、数据收集、分析和解释、报告撰写以及提交文章发表的决定中没有任何作用。包含反射反射底表面体模(含夹杂物)见图7。 在原型中捕获的包含体模的超声图像。引用[1] C.- H. 黄文F. 赵,J.-F. 一种USB接口数据传输装置及USB接口数据通信系统。谷歌专利,2012年。[2] R. Escobar,C.A.Pérez-Herrera,使用Arduino和Visual Basic进行操作性研究的低成本USB接口,J。Exp. Anal. 行为举止。 103(2015)427 -435,doi:10.1002/ jeab.135.[3] A. Bora,K.C. Sarma,使用PIC微控制器的基于USB的多通道低成本数据采集系统的设计,Int. J. Comput. 59(2012)5-8。[4] A. Al-Dhaher,集成硬件和软件开发基于微处理器的系统,微处理。微系统25(2001)317-328,doi:10.1016/S0141-9331(01)00124-7。[5] V. Kaundal,A.K. Mondal,P. Sharma,K. Bansal,使用无线传感器网络跟踪 阴 影 对 SPV 网 格 的 SPV 单 元 的 影 响 。 Sci. Technol. ( 2015 ) doi :10.1016/j.jestch.2015.03.008.[6] B. 蒙达尔,M。Meetei,J.Das,C.R.Chaudhuri,H.Saha,在嵌入式平台中使用金属氧化物气体传感器的人工神经网络定量识别易燃和有毒气体,Eng. Sci.18(2015)229 -234,doi:10.1016/j.jestch.2014.12.010。[7] D.T. Martinez,T.U.小加尼龙,C.S. 李文,王晓刚,等.基于C++的嵌入式系统开发.北京:计算机科学出版社,2000,21(1):100 - 100. 2(2013)201-204。[8] T. DeBoer,P.Carbone,J.Waldman,D.约翰逊河Dautel,与微控制器通信的系统和方法。Google Patents,2013.[9] P.C. Pradhan,R.K.Sahu,S.Panda,Fire,基于模糊PID算法优化的UPFC和SMES多 区 域 多 电 源 电 力 系 统 AGC控 制 器 , Eng. Sci. Technol. ( 2015 ) doi :10.1016/j.jestch.2015.08.007.[10] J. Ferrer-Buedo , M.Martínez-Sober , Y.Alakhdar-Mohmara , E.Soria-Olivas , J.C.Benítez-Martínez , J.M. Martínez-Martínez , 基 于 Matlab 的 接口,用于同时采集力测量和多普勒超声肌肉图像,Comput.方法程序生物医学。110(2013)76 -81,doi:10.1016/ j.cmpb.2012.09.009。[11] R. Gupta , J.贝 拉 湾Mitra, 用于ECG信号在线采集和分析的 嵌 入式 系 统 和基于MATLAB 的 GUI 的 开 发 , 测 量 43 ( 2010 ) 1119 -1126 , doi :10.1016/j.measurement.2010.05.003。[12] X. Zhao,J.Zhou,W.-F. Loke,M.奇拉拉角Zhang,超声质量评价使 用 MATLAB 测 试 台 进 行 成 像 , 见 : SPIE Medical Imaging ,InternationalSociety for Optics and Photonics,2013,p. 八六七五十六。[13] J. Blahuta,T. 加油,P。C.Cz e le rm á k ,D. 我不走M. Vecerek,半自动神经病学疾病分类的超声医学图像识别,在:医学数据和决策支持系统的智能分析进展,施普林格,2013年,pp. 125-133J.R. Raj等人/ Engineering Science and Technology,an International Journal 19(2016)964-969969[14] N. 桑迪普角张文龙,等离子体在非均匀热源/热汇作用下的非定常混合对流换热 , 北 京 : 科 学 出 版 社 , 2004 。 18 ( 2015 ) 738 -745 , doi : 10.1016/j.jestch.2015.05.006。[15] S. Padmanaban,E.Kabalci,A.Iqbal,H.阿布-鲁布岛Ojo,基于比例积分补偿器的DC-DC升压功率电路的控制策略和硬件实现,工程科学。18(2015)163-170,doi:10.1016/j.jestch.2014.11.005。[16] J.J. R 拉吉河,西-地拉赫曼,S。Anand,一种新的软件算法在高帧率超声检查中 的 信息 减 少 应用 , 国 际 。J. Comput. Appl. 3( 2014) 729-733 , doi :10.7753/ijcatr0311.1016。[17] J.J. R 拉吉河,西-地拉赫曼,S。Anand,通过高帧率机器中的以太网在瞬态窗口中获取无损数据,在:2015年第二届计算促进可持续全球发展国际会议(INDIACom),IEEE,新德里,2015年,pp。591-596.[18] M. Tiouririne,S.Nguyen,J.A.Hossack,K.Owen,F.小威廉·莫尔丁脊柱的手持实时体积成像:技术开发,J. Med。工程技术38(2014)100 -1 0 3 , do i :1 0 . 3 1 0 9 / 0 3 0 9 1 9 0 2 . 2 0 1 3 . 8 7 7 9 8 9 。[19] J.J. R 拉吉河,西-地Rahman,A.李文,超声瞬态弹性成像系统的硬件设计,北京:医学科学出版社,2001。4(2012)3700[20] D. Jones,智能手机兼容超声探头,J.诊断Med. 索诺格 30(2014)200-204,doi:10.1177/8756479314534523.[21] B.- E. Byambasuren,M.Oyun-Erdene,S.Y. Nam,D.-H. 金,S.-M. 韩,基于USB的经颅多普勒超声系统高速数据通信设计,国际控制自动化杂志。5(2012)97-106。[22] Y.-- S. 李,J. -H. 杨,S.-Y. 金,W.-S. Kim,O.K. 郭文贵,基于Matlab和USB数据采集板的快速控制原型系统开发,J。Inst. 控制机器人。18(2012)912[23] N. Li,J.Guo,H.S.聂,W.Yi,H.J.Liu,H.徐,基于数字自动平衡电桥法的嵌入式生物阻抗分析仪的设计,见:应用力学与材料,Trans Tech Publication Ltd,2012,pp. 396-401[24] J. 拉吉河,西-地拉赫曼,S。Anand,通过以太网接口高帧速率数据,而不会丢失远程医疗应用,在:2015年国际信号处理和通信会议(ICSC),IEEE,2015年,pp。51比55
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功