



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、I/O端口介绍 信号采集与控制是工业控制的最重要组成部分。在工业控制中,通常采集到的信号有两类: 一类是电压或电流模拟信号;另一类是开关量或数字脉冲量(开关量、脉冲量都属于数字信号)。通常检测出的信号如果是模拟量的话,必须经过放大、变换变为电压010伏或电流010mA,这些模拟量必须经过模/数转换器(ADC:Analog-Digital Cnverter)转换成数字量, 才能被计算机所接受。同样输出控制量信号也必须是数字信号,得经过数/模转换器(DAC:Digital-Analog Cnverter),将数字信号转换成模拟信号010伏 (或0+5伏)或变为电流010mA, 再送入到控制器去控制生产设备的运行。 而在计算机中,CPU通过总线与输入输出设备相连。系统中的很多其他设备都要通过总线,按照CPU规定的时序分时地与CPU进行指令或数据的传输。因此输入输出设备不能直接与总线相连并占用总线,I/O端口就是在总线和输入输出设备之间进行数据交换的数据中转站,我们与输入输出设备的对话实际上是与I/O端口的对话,下面就详细讲述在Visual BASIC环境下如何进行输出和输入操作。 二、编写操作I/O端口的动态链接库函数 Visual BASIC没有提供直接读写I/O端口的方法,所以只能借助其他语言来编写动态链接库DLL(Dynamic Link Library)或VXD,然后再在Visual BASIC中调用。因此我们不得不先了解如何编写操作I/O端口的动态链接库函数。 1在汇编语言中,可以用 in、out 指令操作I/O端口,具体示例如下: 输入操作: MOV DX, Port;Port为端口号 IN AL, DX;读入端口数据到AL寄存器 输出操作: MOV DX, Port;Port为端口号 MOV AL, ConByte;ConByte为控制字,将控制字送到AL寄存器 OUT DX, AL;送出控制字到端口 2在C/C+中,通常用inp和_outp函数操作I/O端口,编写动态链接库我们可以编写如下两个函数,并把它编译生成DLL: /*作用:从指定端口读入一个字节,参数:portid端口号,返回值:读入的字节*/ int _stdcall Inport(short portid) return inp(portid); /*作用:向指定端口写入一个字节,参数:portid端口号*/ void _stdcall Outport(short portid,short value) outp(portid, value); 当需要一次操作两个字节时,我们就必须用到inpw和outpw两个函数,具体用法同inp和outp。 同时需要说明的是,_inp和_outp函数和inp和outp函数用法基本上相同,只是在使用时需要头文件,而且本人推荐使用_inp和_outp,而不是使用inp和outp。因为_inp和_outp在Debug和Release都可以使用,而inp和outp只能用于Release设置。如果在Debug设置时使用inp和outp,编译时不会错,但会产生链接错误。 三、Visual BASIC中操作I/O端口 到此我们就可以在Visual BASIC中通过动态链接库技术间接操作I/O端口了。在Visual Basic中动态链接库必须提前申明,其缺省为公有过程或函数。其格式为: “Declare Sub 过程名 Lib 库名 Alias 别名 (参数表)”,或者“Declare Function 过程名 Lib 库名 Alias 别名 (参数表) As 类型”。例如: Public Declare Function Outport Lib vcDll.dll (ByVal portid As Integer, ByVal value As Integer) As Integer /IO输出函数 Public Declare Function Inport Lib vcDl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年白城市暨洮北区人才交流中心就业见习岗位和见习人员征集模拟试卷含答案详解
- 2025广东依顿电子科技股份有限公司招聘成本会计岗等人员考前自测高频考点模拟试题及答案详解参考
- 2025广东韶关仁化县招聘中小学教师30人(编制)考前自测高频考点模拟试题及参考答案详解一套
- 2025年河北唐山幼儿师范高等专科学校选聘工作人员35人考前自测高频考点模拟试题含答案详解
- 2025年临沂高新区教育系统部分事业单位公开招聘教师(6名)模拟试卷及完整答案详解
- 2025贵州黔晨综合发展有限公司招聘观光车驾驶员及高压电工人员15人模拟试卷及答案详解(典优)
- 2025年洛阳宜阳县选聘县属国有集团公司部长10名模拟试卷及1套完整答案详解
- 2025河北雄安新区新建片区学校面向社会选聘教职人员102人模拟试卷及答案详解(全优)
- 2025年马鞍山市消防救援局招聘政府专职消防员38人考前自测高频考点模拟试题及答案详解(各地真题)
- 2025年哈尔滨市道里区爱建社区卫生服务中心招聘5人考前自测高频考点模拟试题有答案详解
- 2025年甘肃省天水市供热有限公司招聘12人考试历年参考题附答案详解
- 2025新疆医科大学第一附属医院招聘事业单位编制外工作人员(119人)考试参考题库及答案解析
- 2024年湖南省中考数学真题及答案解析
- 2025年艾灸行业研究报告及未来行业发展趋势预测
- 四年级数学上册第1单元《 大数的认识 》作业设计
- 对映异构简介教学设计-2025-2026学年中职专业课-药用化学基础-药剂-医药卫生大类
- (2025年)贵州省遵义市【辅警协警】笔试预测试题含答案
- 2025年建筑施工企业薪酬管理规定
- (高清版)DBJ∕T 13-318-2025 《建筑施工盘扣式钢管脚手架安全技术标准》
- 思想道德与法治2023年版电子版教材-1
- 河蟹健康养殖与常见疾病防治技术课件
评论
0/150
提交评论