![CVI串口调试总结RS232_第1页](http://file4.renrendoc.com/view/228873c487ac7feb91454bb4c6c3a3e7/228873c487ac7feb91454bb4c6c3a3e71.gif)
![CVI串口调试总结RS232_第2页](http://file4.renrendoc.com/view/228873c487ac7feb91454bb4c6c3a3e7/228873c487ac7feb91454bb4c6c3a3e72.gif)
![CVI串口调试总结RS232_第3页](http://file4.renrendoc.com/view/228873c487ac7feb91454bb4c6c3a3e7/228873c487ac7feb91454bb4c6c3a3e73.gif)
![CVI串口调试总结RS232_第4页](http://file4.renrendoc.com/view/228873c487ac7feb91454bb4c6c3a3e7/228873c487ac7feb91454bb4c6c3a3e74.gif)
![CVI串口调试总结RS232_第5页](http://file4.renrendoc.com/view/228873c487ac7feb91454bb4c6c3a3e7/228873c487ac7feb91454bb4c6c3a3e75.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、对于CVI串口调试助手(rs232)1软件简单介绍1.1串口界面串口调试助手用来与下位机连接,与下位机进行数据交换,实现pc机与单片机的连接 和实时数据采集。实现了十六进制的数据接收,如图1-1。图1.1数据转化为16进制PT uart USE30 31 32 33 34 35 36 37 38 39 65 66 67 0123456789abc打开串口关闭串口16进制换行值16+六进制MHEsagt! SerLdSend Data发谖计数:口接收计数:乾图1-2接收字符串CVI介绍LabWindows/CVI是National Instruments公司(美国国家仪器公司,简称NI公司)推出
2、 的交互式C语言开发平台。LabWindows/CVI将功能强大、使用灵活的C语言平台与用于 数据采集分析和显示的测控专业工具有机地结合起来,利用它的集成化开发环境、交互式编 程方法、函数面板和丰富的库函数大大增强了C语言的功能,为熟悉C语言的开发设计人 员编写检测系统、自动测试环境、数据采集系统、过程监控系统等应用软件提供了一个理想 的软件开发环境。NI公司的LabWindows/CVI是一个久经验证的用于测试和测量的ANSI C 开发环境,极大地提高了工程师和科学家们的生产效率。他们使用LabWindows/CVI来开发 高性能的、可靠的应用程序,用于制造测试、军事/航天、通讯、设计验证和
3、汽车工业等领 域。开发人员可以在设计阶段利用LabWindows/CVI的硬件配置助手、综合调试工具以及交 互式执行功能,来运行各项功能,使得这些领域的开发流水线化。使用内置的测量库,你可 以迅速的开发出复杂的应用程序,例如多线程编程和ActiveX的服务器/客户端程序。由于 LabWindows/CVI的便利性,你可以通过在相似环境中重复使用以前的代码来维护你的代码 投资,并且实现Windows、Linux或实时平台上分布测试系统的无缝集成。2软件介绍CVI 内部封装了 RS-232 library。callbacksCallbacks 中只含有一个函数 InstallComCallback
4、int InstallComCallback (int portNumber, int eventMask, int notifyCount, int eventCharacter, ComCallbackPtr callbackFunction, void *callbackData);Allows you to install a synchronous callback function for a particular COM port.The callback function is called whenever any of the events specified in eve
5、ntMask occur on the COM port and you allow the system to process events.Example:InstallComCallback (UValue, LWRS_RXCHAR, 0, 0, (void *)uartRevData, 0);controlComBreak (int portNumber, int breakTime_msec);A break signal is a communications signal that allows two communications devices to transmit a b
6、reak signal in the transmission line. A break signal is the transmission of a special character on the communication line fOr a period longer than the transmission time for one character and its framing bits.ComSetEscape (int portNumber, int escapeCode);指导一个COM端口进行扩展功能如清除或设置RTS信号线或设置收发器模式对RS - 485。串
7、行设备驱动程序定义了扩展的功能。FlushInQ (int portNumber);清除当前com所有input缓冲区的字符。int FlushOutQ (int portNumber);清除当前com所有output缓冲区的字符。int SetComTime (int portNumber, double timeout_seconds);设置超时限制输入/输出操作。对于读操作,超时当COM端口输入队列是空的,没有字节 被读入队列的持续时间内超时时间。对于写操作,超时当COM端口输出队列满了和LabWindows /约定不能写入队列的持续时间内超时时间。int SetCTSMode (int
8、 portNumber, int hardwareHandshaking);SetXMode (int portNumber, int mode);Enables or disables software handshaking by enabling or disabling XON/XOFF sensitivity on transmission and reception of data.extensionGetSystemComHandle (int portNumber, intptr_t *systemHandle);Input/OutputComFromFile (int por
9、tNumber, int fileHandle, int count, int terminationByte);从HEX文件中读出数据写入当前端口的输出队列中int ComRd (int portNumber, char buffer, size_t count);从输入端口输入队列总计数读取字节,将其存储在buffer中。当超时或是统计字节被读 时返回。返回一个整型的变量值表示当前字节数。int ComRdByte (int portNumber);读一个字节,数据自动左移。int ComRdTerm (int portNumber, char buffer, size_t count,
10、intterminationByte);读串口字符,可以设定截至字符。int ComToFile (int portNumber, int fileHandle, int count, int terminationByte);与ComFromFile相对应。int ComWrt (int portNumber, char buffer, size_t count);与ComRd相对应。int ComWrtByte (int portNumber, int byte);与ComRdByte相对应。Open/Closeint CloseCom (int portNumber);关闭串口。int
11、OpenCom (int portNumber, char deviceName);打开串口。OpenComConfig (int portNumber, char deviceName, long baudRate, int parity,int dataBits, int stopBits, int inputQueueSize, int outputQueueSize);打开并配置串口。StatusGetComConnectionState (int portNumber);得到当前COM连接状态1(connection)0(NO)。GetComLineStatus (int portN
12、umber);得到当前的COM 口操作命令。GetComStat (int portNumber);返回一些状态信息。GetInQLen (int portNumber);获取当前输入缓冲区字符长度。GetOutQLen (int portNumber);获取当前输出缓冲区字符长度。*GetRS232ErrorString (int errorNumber);获取当前rs232的错误。ReturnRS232Err (void);返回当前错误。XModem文件传输协议int XModemConfig (int portNumber, double startDelay, int maximumO
13、fRetries, double waitPeriod, int packetSize);配置文件传输。int XModemReceive (int portNumber, char fileName);文件接收。int XModemSend (int portNumber, char fileName);文件发送。3例程第一步配置串口通信:flag_com=OpenComConfig (UValue, ”,Uart.bps, Uart.check, Uart.data,Uart.stop, 64, 512);第二步调用接收函数if(!flag_com)(/Delay (1);SetCtrlV
14、al (panelHandle, PANEL_LED, 1);FlushInQ (UValue);FlushOutQ(UValue);/SetComTime (UValue, 0.1);/设计定时时间InstallComCallback (UValue, LWRS_RXCHAR, 0, 0, (void *)uartRevData, 0);第三部判断接收缓冲区内是否有字符,并计算长度。if(event& LWRS_RXCHAR)(Fmt(rev_Data, %s”, );/转化格式Fmt(Uart.revData, %s”, );Delay(0.1);rev_StrLen=GetInQLen (UValue);Uart.rev_StrLen_Keep+=rev_StrLen; /*统计接收字符 Fmt(rev_StrLen1, %s0)( if(Uart.choice_Format=_FORMAT_CHAR_)/字 符 for(i=0;i50) rev_Textbox_line+=1; SetCtrlVal (panelHandle, PANEL_TEXTBOX,n); rev_Textbox_length=0; rev_StrLen
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电力行业助理的工作职责简述
- 高校人才培养方案的更新
- 2025年全球及中国石油和天然气行业用有机缓蚀剂行业头部企业市场占有率及排名调研报告
- 2025-2030全球桶形立铣刀行业调研及趋势分析报告
- 2025年全球及中国医疗推车液晶显示器行业头部企业市场占有率及排名调研报告
- 2025-2030全球轮胎式破碎机行业调研及趋势分析报告
- 2025年全球及中国剧场动作自动化设备行业头部企业市场占有率及排名调研报告
- 2025年全球及中国单线金刚石线切割机行业头部企业市场占有率及排名调研报告
- 2025-2030全球履带调节器行业调研及趋势分析报告
- 2025-2030全球防水低光双筒望远镜行业调研及趋势分析报告
- 安全生产网格员培训
- 小学数学分数四则混合运算300题带答案
- 林下野鸡养殖建设项目可行性研究报告
- 心肺复苏术课件2024新版
- 2024年内蒙古呼和浩特市中考文科综合试题卷(含答案)
- 大型商场招商招租方案(2篇)
- 会阴擦洗课件
- 2024年山东泰安市泰山财金投资集团有限公司招聘笔试参考题库含答案解析
- 近五年重庆中考物理试题及答案2023
- 全科医医师的临床诊疗思维
- (七圣)七圣娘娘签诗
评论
0/150
提交评论