LabWindows CVI 6.0 编程指南
LabWindowsCVI6.0编程指南日录第1章绪论简介程序开发概述在中使用语言的程序结构的新特性装第2章 Labwindows/CVⅥI的开发环境载入、运行和编辑源程序的主要窗口源代码编辑工具操作用户界面的控件生成交互式代码访问用户界面库函数面板执行和调试程序单步执行断点显示和编辑数据第3章 Labwindows/CV应用程序设计38图形用户界面用户界面编辑器源代码连接代码生成器建立用户界面文件仗用函数面板和函数库源代码分析生成随机数组构建⊥程运行完整的工程添加分析功能修改用户界面编写回调函数运行程序用户事件处理用户事件回调函数第4章基本函数库用户界面库(面板()操作用户界面管理(菜单结构(控件曲线图带状图()操作弹出面板函数格式化输入输出斥(文件输入输出(字符串处理(数据格式化(实用函数库(定时等待(日期时间(文件应用(路径应用(端口(函数库接口介绍函数库概述编程举例第5章高级函数库116高级分析库概述应用实例斥网络化仪器协议与库服务器程序设计客户程序设计介绍发送数据程序设计接收数据程序设计工具厍(L具斥简介密码设计工具条设计分页界面设计系统托盘设计第6章数据库应用程序开发— SQL Toolkit183概述功能概述的安装入门数据库基木概念结构化查询语言控件数据库基本操作数据库操作基木步骤使用的函数库数据斥高级操作设置连接属性设置语句属性操作复合语句第7章高级程序设计230和的基础知识创建和调试使用概述编程实例多线程概述两种多线程机制多线稈间的数据保护防止死锁监视和控制次线程线程的优先级线程局部变量其它一些要注意的问题第8章 ActiveX技术261技术简介使用控件设计带有控件的应用程序需要注意的问题创建服务器应用程序、对象和接口创建服务器工具生成的代码库—服务器函数联编并发布服务器注册线程模式调试服务器些建议、提示和技巧第9章虚拟仪器软件设计301虚拟仪器概述规范规范概述虚拟仪器软件结构仪器驱动程序开发仪器驱动程序模型函数的应用函数面板的设计动态链接库的牛成仪器软面板的设计仪器软血板软面板的设计叫执行文件的生成帮助文件的制作安装盘的制作规范的安装要求制作安装盘驱动程序仪器可互换性驱动程序的结构驱动程序的其他功能驱动程序开发向导驱动程序与驱动程序附录A函数Fmt、Scan的标识符和修饰符附录BS叫L命令348虚拟仪器软件开发环境—一编程指南第1章绪论是公司美国国家仪器公司,简称公司推出的交互式语言开发平台。将功能强大、使用灵活的语言平台与用于数据采集分析和显示的测控专业L具有机地结合起来,利用它的集成化开发环境、交互式编程方法、函数面板和卡富的库函数大大增强了语言的功能,为熟悉语言的开发设计人员编写检测系统、自动测试环境、数据采集系统、过程监控系统等应用软件提供了一个理想的软件廾发坯境。考虑到人多数测控软件设计人员已经掌握了语言,因此本书的重点放在如何使用的编程环境和应用开发测控应用程序上。本书使用的版本是1.1 Labwindows/CV简介是为语言程序员提供的软件开发系统,在其交互式开发环境中编写的程序必须符合标准规范。使用可以完成如下工作:交互式的程厅开发;只有功能强大的函数库,用来创建数据米集和仪器控制的应用程序充分利用宄备的软件工具进行数据采集、分析和显示利用向导开发仪器驱动程序和创建服务器为其它程序开发目标模块、动态连接库)、语言库。在开发环境中可以利用其提供的库函数来实现程序设计、编辑、编译、链接和标准语言程序调试。在该丌发环垙中可以用丰富的函数库来编写程序,此外每个函数都有一个叫做函数面板()的交互式操作界面,在函数面板中可以执行该函数并可以生成调用该函数的代码,也可通过右击面板或控件获得有关函数、参数、函数类和函数库的帮助。在的交互式环境中编写程序必须符合标准语言的规范。另外,在开发应用程序时可以使用编译好的语言目标模块,动态链接库静态库和仪器驱动程序(如何在中载入目标模块和动态链接斥将在第章介绍)。的功能强大在于它提供了丰富的函数库。利用这些库函数除可实现常规的程序设计外,还可实现更加复杂的数据采集和仪器控制系统的廾发。其中比较重要的函数库如图所示仪器库是的特殊资源。它包括和仪器的驱动程序,如示波器、多用表和函数发生器,每个驱动程序都提供可编辑的源代码。使用开发工只提供的库函数可以创建自己的仪器驱动程序,可以创建单个仪器、多个仪器或实际上并不存在的虚拟仪器的驱动程序,在创建仪器驱动程序过程中可以虚拟仪器软件开发环境—一编程指南仪器库厍数据采集库数据采集厍格式化和厍数据分析分析库高级分析库函数库数据表示用户界面库动态数据交换厍网络和进程通讯传输控制协议库库标准凶数库的函数厍使用的其它库函数(本书在第章将介绍仪器驱动程序的开发)。使用的用户界面编辑器可以创建并编辑图形用户界面,而使用的用户界面库函数可以在程序中创建并控制。此外,为面板的设计,准备了许多专业控件,如:曲线图控件、带状图控件、表头、旋钮和指示灯等,以适应测控系统软件开发的需求,利用这些控件可以设计出专业的测控程序界面1.2 Labwindows/GVI程序开发概述在下开发应用程序和使用其它语言和开发环境一样,要保持良好的编程习惯。例如,在编写代码之前要改计程序的功能结构,冋时在代码中要有良好的文档和注释,这些可以帮助你更好的进行管理程序的开发。1.2.1在 Labwindows/cV中使用C语言使用的是语言,并且为仪器方面的应用程序开发增加了许多语言所不具备的功能。在使用之前,需要有语言的基础,在中可以使用它提供的标准厍函数。1.2.2 Labwindows/GVI的程序结构大多数工程测控软件都包含如下内容虚拟仪器软件开发环境—一编程指南用户界面程序控制:数据采集数据分析它们之间的相互关系如图所示。图是应用程序的组成示意图。其中,用户界面、数据呆集和数据分析部分将必要的信息输入给程序控制部分进行处理,每个部分还可再分成若干个子部件用户界面数据采集数据分析面板格式化菜单数字信号处理对话框统计朴学图表数据采集曲线拟合硬拷贝输出仪器驱动程序数组操作程序控制控制逻辑数据存储图应用程序各部分的相互关系用户界面用用户界面编辑器能轻松地建立复杂的交互式面板。设计的过程中,开发人员常常要确定程序如何获取并显示薮据,对菜单、面板、控件和对话框如何操作等问题,因此用户界面自然成为程序设计的起点二、代码生成器生成程序框架在用户界面绽辑器中完成设计后,能够使用代码生成器自动生成基于组件的程序框架。代码生成器自动写出所有控件的回调函数的框架,创建主程序,从而在程序启动时加载并显示窗体。代码编辑器自动生成程序的通用代码,从而节省了人量的程序开发时间。、程序控制程序控制部分同薮据采集、数据分析和用户界面协调运作。它包括管理程序流程的控虚拟仪器软件开发环境—一编程指南制逻辑和用户定义的支持函数。大多数控制程序的代码是手写完成的,学习软件光盘中所提供的例稈,能够很好理解如何编写测控稈序的代码。注意例程中回调函数的使用,它可以大大简化应用流程的控制四、数据采集通常的测控程序必须对从仪器或数据采集()设备的数据采集进行控制,程序的其它部分是对这些数据进行分析和显示各种库提供用来创建数据采集部分的函数,用这些库函数控制和设备以及的数据采集设备。此外,仪器斥包括多种常用的和仪器的驱动程序。五、数据分析获取数据后经常需要进行分析。例如,可能要对数据进行格式化、归一化、信号处理、统计和曲线拟合。格式化和库、分析库高级分析库提供了完成这些操作的函数。1.3 LabWindows/CVI6.0的新特性和以前的版本相比有一些改进,并增添了一些功能:用户可以在用户界面编辑器中创建控件,并在的程序中对它进行控制,本书将在第章“使用控件”中介绍用户可以用中的向导创建或者编辑服务器,本书将在第章“创建服务器”中介绍。用户界面厍中包含了一系列新的搾件。另外,对先前版本原有的搾件和菜单也进行了修改,使其更加接近标准的控件,的控件将在第章的的控件”中介绍支持多字节字符的应用。另外,现在的标准库和仪器驱动程序的上具箱包含了用户可以调用的函数和宏,用户可以用它们实现包含多字节字符的语句。在源程序中书写中文不会像先前的版本那样出现乱码。源代码浏览器列出了程序中的所有的文件、函数、变量、数据类型以及宏。用户可以用这个浏览器了解到程序的一个部分如何与另一个部分相互作用,本书将在第章“源代码编辑工具”中介绍这部分内容。用户可以用图形数组浏览窗∏作为调试上具,以图形方式观察生成的维或二维数组,该部分内容将在第章“显示和编辑数据”中介绍。在中,用户可以将多个工程分组到一个工作台。所有关于工程的外来设置都受工作台的保护。使用工作台,使得在同一源代码设置下的多个开发人员更容易共享工程。用户可以在用户界面编辑器中俣存预宄设置好的用户界面控件,以后可以在用户界面面板中使用,本书将在第章“的控件”中介绍
- 2020-12-07下载
- 积分:1
IP5209IP5109IP5207IP5108寄存器手册.pdf
英集芯移动电源芯片的IIC寄存器手册,不是数据手册。支持IP5209/IP5109/IP5207/IP5108等芯片,有详细的寄存器地址说明。英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51086、12C通讯波形介绍SDANOURMSBAcknowleAcknowledgementSignal From ReceiverSignal From Receiver8Condition(S)RW ACKACK Condition(Py1 2c master写的时候,先传8bit数据,第9个bit读save返回的ack,ack为低代表写入成功,为高代表写入不成功。l2 c master读的时候,最后一个byte传输是 slave返叵数据, master返回nack(高电平),代表读结束:如果 master返回的是ack(低电平),则说明读没有结束, master会继续读所以第九个bit的ack信号要看 master端是读操作还是写操作:因为IP5209/P5109/P5108/P5207只能做save如果往1P5209/P5109/P5108/P5207寄存器写入数据,P5209/P5109/P5108/P5207返回ack为低电平;如果从P5209/P5109/P5108/P5207读取数据,IP5209/|5109/P5108/P5207返回nack高电平),( master必须发NACK,否则会有异常)代表读结束(英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51083、寄存器功能描述标示为“ Reserved”的寄存器位有特殊控制作用,不可改变原有的值,否则会出现无法预期的结果。对寄存器的操作必须按照“读-→>修改-->写”来进行,只修改要用到的bit,不能修改其他未用bit的值。1.1 SYS CTLOOffset= Ox01Bit(s)NameDescriptionR/WReset7:5Reserved手电筒检测是否使能RW1. enableO: disableLight enableRW0: disable1 enableBoost enableRW1O: disable1: enableCharger enableRWO disable1: enable0Reserved1.2 SYS CTL1Offset=0x02Bit(sNameDescriptionResetReserved轻载关机使能(0c可设定轻载关机阙|R/W值1:使能| BATLOW轻载关机功能0:关闭 BATLOW轻载关机功能负载插入自动开机R/W1:使能0:关闭英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51081.3 SYS CTL2Offset =0x0cBit(s)NameDescriptionR/WReset7:3轻载关机电流阈值设定RW00100n * 12mA当BAT电流小于设定阈值时,持续325米机注意:此电流设定阈值需要大于100mA2:0Reserved1. 4 SYS CTL3Offset=0x03it (s)NameDescriptionR/WReset7:6长按按键时间选择010:1S01:2s10:3S11:4S1:连续两次短按(两次短按在15内)R1关札功能使能O:连续两次短按(两次短按在15内)关机功能关闭4:0Reserved1.5 SYS CTL4Offset =0x04Bit(s)NameDescriptionR/WReset7:6关机时间设定R/W11:64s10:3201:16s00:8sV|N拔出是否开启 BOOST11:开启0:不开启4:0Reserved(i)英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51081.6 SYS CTLSOffset = 0x07Bit(s)NameDescriptionR/WResetReservedNNTC功能使能R/W:使能1:关闭ReservedR/W按键开关WLED于电筒方式选择:0:长按251:短按两次按键0按键关机方式选择:R/W0:短按两次按键1:长按251.7 Charger_ CTIOffset=0x22Bit(s)NameDescriptionR/WReset7:5Reserved3:2充电欠压环设定(充电时输出端voUT的R/电压)11:4.83V10:4.73V01:4.63V00:4.53V注:在充电的时候C会检测输出voUT的电压来自动调整充电电流,当VOUT的电压大于改置值时就以最大电流对充电充电,小于设定值时就自动减小充电电流以维持此电压;如果客户要求边充边放状态下可在输出端加采样电阻检测边充边放状态输出端的负载电流大于100mA时可把欠压环设置为最高,优先对外部负载充电1:0Reserved英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51081.8 Charger CTL2Offset=0x24Bit(s)NameDescriptionR/WResetReserved6:5BAT电池类型选择R/W0011: RESERVED10:4.35V电池01:43V电池00:4.2V电池4:3RESERVED2:1恒压充电电压加压设置1011:加压4210:加压28mV1:加压1400:不加压注:4.30V/4.35V建议加压14mV;4.2V建议加压28mV;如果客户需要支持44V的电芯,可以在435V电池的基础上选择加压48mV,充饱由MCU检测到电池电压大于44V,电流小于200MA才认为是电芯充饱了Reserved1.9 CHG DIG cTL4Offset = 0x26Bit(s)NameDescriptionR/WResetReserved电池类型内部寄存器设定还是外部setP|设定|RW选择1:外部 VSET PIN设置内部寄存器设置如果是该bit为0,可通过0x24寄存器的bit6:5来设定电池类型5:0Reserved英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51081.10 CHG DIG CTL4Offset=0x25Bit(s)NameDescriptionR/WReset7:5Reserved充电电流设置(设置为电氾端电流)R/W10111lbat=b0*0.1+b1*0.2+b2*0.4+b3*08+b4*1.6A注:默认值为1011123A左右1.11 MEP CTLOOffset = 0x51it (s)NameDescriptionR/WReset7:6Reserved5: 4 LIGHT selLGHT功能选择R/W0000: WLED01: GP10210: VREF11: Reserved3: 2 L4_selL4的功能选择R/W00:L401:GP|o110: Reserved11: Reserved1:0L3_seL3的功能选择R/W01: GPIO010: Reserved11: Reserved1.12 MFP CTL1Offset=0x52sit(s)NameDescriptionR/WReset7:4ReservedR/W3: 2 VSET selVSET功能选择W0000:电池电压选择PN)英集应利P5209/P5109/P5207/P510801: GP10410: Reserved11: Reserved1: 0 RSET seRS氏T功能选择R/W0000:电池内阻选择PN01:GP|O310: Reserved11: Reserved1.13 GPIO CTL2Offset =0x53 default oxoBit(sNameDescriptionR/WReset7:5Reserved4:0 GPIO_ INEN GPIO[4: 0]input enableRW00: Disable1: Enable1.14 GP0 CTL2Offset= Ox54 default oxoBits)NameDescriptionR/WReset7:5Reserved4: 0 GPIO_OUTEN GPIO[4: ]output enableRW00: Disable1: Enable在丌启 Output之前,需要先将data配好1.15 GPO CTL3Offset =0x55Bit(s)NameDescriptionR/w Reset7:5Reserved4:0 GPIO DATGPIO[4: 0]DATAR/W0(i)英集匙利技INJOINIC TECHNOLOGYP5209/P5109/P5207/P51082.1 BATVADC DATOOffset =Oxa2Bit(s)NameDescriptionR/WReset7:0 BATVADO7:| BATVADC数据的低8bitRO2.2 BATVADC DAT1Offset Oxa3Bit(s)NameDescriptionR/VReset7:6Reserved5:0 BATVADC[13: BATVADC数据的高6btR8]VBAT=BATVADC*0. 26855mv+2.6VBATVADC VALUE low =l2C Read Byte( 12C SLAVE ADDR, Oxa2);//low 8bitBATVADC VALUE high=12c Read Byte(I2C SLAVE ADDR, Oxa3); //high 6bitf( BATVADC VALUE high&0x20)=0x20)//补码BATVOL[=2600-("BATVADC VALUE low +((BATVADC vaLUe high & 0x1F)*256+1)*0.26855else//原码BATVOL[]=2600+(BATVADC VALUE low+BATVADC_ VALUE high *256)*0.26855; //mv 24i
- 2020-12-11下载
- 积分:1