首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
基于VC++编程的WinCE工业平板电脑调用CPU的GPIO口
广州三青创工自动化科技有限公司
收藏本文     查看收藏

 WinCE系统是微软操作系统在嵌入式领域的一朵奇葩。自打WinCE出来,就占领了消费量电子,PDA,手机,更在工业自动化行业占有很大的一片市场。与XP,WIN7乃至WIN8系统,同是微软家族成员,所以,对于WinCE应用开发,跟普通的PC机应用开发,区别不大,所以支持很多开发工具和语言开发。最常用的莫过于 VS2005或者VS2008,里面集成了VC++,C#.net,VB.net等主流语言开发,方便应用编程人员轻松的开发程序。至此,诞生了国内一些做WinCE工业设备的厂家,并提供相应的开发包,例如SDK,函数库文件等。国内做的比较大的,莫过于深圳扬创科技,软硬件定制都非常方便,并提供一系列的技术支持,方便工程师快速开发应用程序。

    下面介绍深圳扬创科技WinCE系统工业平板电脑,基于VC++编程开发,如何调用CPU的GPIO,轻松实现智能控制工业报警灯,继电器,智能采集计算器数据等设备。

     首先介绍硬件

     

DB25扩展口(此功能选配)

扩展了8路24V IO输入,8路24V IO输出(12V也可以);

管脚13的EXT_24V是外部电源24V;管脚21是外部地

 

输入输出电压为24V 

隔离电压: 输入端 2500Vrms(Min)

                输出端 2500Vrms(Min)

 

 

输入输出原理及连接方法

    a) 输入原理及接线

EXT_IN0—EXT-IN7 的输入原理相同 ,下图以 EXT_IN0的原理进行说明

图中 EXT_IN0 为外部输入,EXT_VDD为外部参考电压, IN0通过光电隔离转换后CPU的输入信号。工作原理为:当EXT_IN0 输入为高电平时,光耦内部发光二极管两侧无压差,内部无电流,发光二级管不发光,无法使内部的三极管导通,则输出信号IN0为高电平,CPU采集到输入为高;当EXT_IN0 输入为低电平时,光耦内部发光二极管两侧有压差,内部有电流,发光二级管发光,使内部的三极管导通,则输出信号IN0为低电平;CPU采集到输入为低 。

 

EXT_IN0—EXT-IN7为8路开关量输入信号,EXT_VDD为其公共外接电源,开关量地端与外部公共外接电源地端相连。电源可以采用5V-24V,当输入开关量信号为5V时,可以采用5V供电;当输入开关量信号为12V时,可以采用12V供电;当输入开关量信号为24V时,可以采用24V供电。随之光电隔离内部发光二级管的外接分压电阻Rin做调整 根据不同的电压作调整 ,以满足光电隔离器工作要求,ePC系列工业平板电脑默认的分压电阻式按照24V调节的。

开关量输入的接线图如下:

b) 输出原理及接线

EXT_OUT0-EXT_OUT7的输出原理相同,下图以EXT_OUT0的原理图进行说明:

图中右侧为对外的输出信号(EXT_OUT0)及外接电源(EXT_VDD)。其工作原理:当用户在软件里面置位OUT0为低电平时,光耦内部发光二级管发光工作,使内部三极管导通,通过光隔后的输出信号变低电平信号,,反之,OUT0置位为高电平时,光耦内部发光二极管不工作,内部三极管无法导通,通过光隔后的输出信号EXT_OUT0(被Rout上拉到EXT_VDD)拉成高电平。

 EXT_OUT0-EXT_OUT7 为8路开关量输出信号, EXT_GND为公共地,EXT_VDD为外部外接电源正,Rout 为上拉电阻,工业平板电脑内部集成焊接的阻值是4.7k,开关量输出可以为5V-24V,当输入开关量信号为5V时,可以采用5V供电;当输入开关量信号为12V时,可以采用12V供电;当输入开关量信号为24V时,可以采用24V供电。

开关量输出 低电平有效,小型继电器、警示灯等现场开关设备接法:

 

接小型继电器等设备的时候,输入端请一端接外部电源EXT_VDD,另一端接EXT_OUT,默认上电启动是EXT_OUT输入口为高电平,设备两端没有压差,不工作;

进入系统以后可以通过控制EXT_OUT输出为高低电平来控制设备工作:

  • 设置EXT_OUT为低电平时,设备两端有压差,电流通过,设备工作;
  • 设置EXT_OUT为高电平时,设备两端没有压差,没有电流通过,设备不工作。

总共有16路IO口,默认配置为8路输入和8路输出。

    (1)8路输出

       BOOL   SetIO (byte level ,byte idNum);

       参数说明:

              byte level:       0:低电平 1:高电平

              byte idNum:    0-7 (分别代表要输出的IO口号:OUT0 ~ OUT7)

       (2)8路输入

BOOL     SetIoMode(int ioNum,int ioMode ,int triggeredMode)

参数说明:

              int ioNum:             0-7 (分别代表要设置的IO口号:IN0 ~ IN7)

              int ioMode:            IO_POLLING_MODE(查询模式)

                                       IO_INTR_MODE     (中断模式)

        int triggeredMode: IO_INTR_LOW_LEVEL_TRIGGERED        低电平触发

IO_INTR_HIGH_LEVEL_TRIGGERED             高电平触发

IO_INTR_FALLING_EDGE_TRIGGERED        下降沿触发

IO_INTR_RISING_EDGE_TRIGGERED      上升沿触发

IO_INTR_BOTH_EDGE_TRIGGERED        双沿触发

函数说明:

SetIoMode是设置8路输入口的接收方式,分为查询方式和中断方式,可以对每一个口单独配置为查询或者中断。

在配置为查询模式后此函数的第三个参数不起作用,可以设置为任意的整数。

              在配置为中断模式后此函数的第三个参数来设置中断触发的模式,总共分为以上5种。

       注意:系统中默认使用的8路输入IO口全是查询模式,可以通过以上函数设置为中断方式。  

       BOOL     GetIO(byte& level, byte idNum);

       参数说明:

              byte& level:    0:得到低电平 1:得到高电平

              byte idNum:    0-7 (分别代表要得到的IO口号:IN0 ~ IN7)

IO口模式使用介绍:

查询模式:系统默认8路输入IO全是查询模式,所以如果用户不需要中断模式,则可以直接通过GetIO函数来得到相应输入口的值为高电平还是低电平,不需要用到SetIoMode函数。

中断模式:系统默认8路输入IO全是查询模式,所以如果用户需要中断模式,则需要通过SetIoMode函数来设置相应IO口为中断模式,并且设置相应的中断触发方式。设置完成后,如果系统收到中断,则向应用发送事件,来通知中断触发,用户应用再做相应的处理。事件名称如下:

IO0事件名称:io number 0 Intr Event

IO1事件名称:io number 1 Intr Event

IO2事件名称:io number 2 Intr Event

IO3事件名称:io number 3 Intr Event

IO4事件名称:io number 4 Intr Event

IO5事件名称:io number 5 Intr Event

IO6事件名称:io number 6 Intr Event

IO7事件名称:io number 7 Intr Event

用户应用中需要建立对应的同名事件,来收到系统的中断事件。

       Note:函数的具体详细的用法,请看光盘中的示例源码,目录:光盘/测试例程/ ParallelIo /


 

状 态: 离线

公司简介
产品目录

公司名称: 广州三青创工自动化科技有限公司
联 系 人: 曾德荣
电  话: 020-29175374
传  真: 020-37206907
地  址: 天河区龙洞汽配城A座
邮  编: 510642
主  页:
 
该厂商相关技术文摘:
如何从开发WinXP应用程序快速转到WinCE平台
更多文摘...
立即发送询问信息在线联系该技术文摘厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved