版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章、硬件说明CM-CP3 是 CIMATE 自主研发的采用网络通讯型的中央控制主机,采用低耗、高性能嵌入式微处理器,运行速度快、简单易用。CM-CP 纲络通讯型的中央控制主机提供了开放式结构,支持各种协议如:CAN、TCP/IP、PWM 及多种控制协议端口,含 IR 红外、I/O数字输入/输出,模拟输入、 COM 口 等。采用先进可靠的集成技术,提供高速准确的集中控制环境;开放式 +模块化的用户编程 界 面,可轻易的完成各种复杂的控制接口编程。1.1功能特点采用低耗、高性能嵌入式微处理器,运行速度快、简单易用。4 路独立可编程 RS-232 控制接口,其中一路可选择 485 控制接口。用户
2、可编程设置多种 控制协议和代码;8 路独立可编程 RS-232 控制接口,只支持发送,不支持接收;8 路独立可编程的红外发射接口,支持控制多台相同或不同的红外设备;8 路数字输入/输出 IO 接口;8 路模拟输入 IO 接口;USB2.0 编程通讯接口;红外载波全频段兼容、支持独立,验证红外学习支持本地及远程多种控制方式;采用低耗能 DV 5V-24 电源输入;1.2主机安装CM-CP3r 编程网络控制主机可以安装在标准19 英寸机柜上,主机标配附件含一对机柜安装支架,装配方式见下列图。第二章、系统主机说明2.1面板功能说明CM-CP3 前面板SERIESSERIES 口VANCED CONT
3、ROL PROCESSORS3oCM-CP3 后面板:6891011124571)状态指示灯-包括电源灯,状态灯、复位按键等。2)红外学习窗口一一 用于红外学习3) 8 路单向输出 232 接口 -只有发送4) ANALOG IN-模拟信号输入接口。提 供 8 路可由软件编程的模拟信号输入控制接 口,可接收0-5v (10m 顺载电流)的信号输 入。5) DIGITAL I/O I/O (输入输出)接口 一提供 8 路可由软彳编程的 I/O 输入输出控制接口,可提供 5V/10mA 负载输出或接收 05V(10m 能载电流)的信号输入6) PW 8 路 0-5V 脉冲上下电平信号输 出。(10
4、m 能载电流)7) IR OUT红外控制接口包含 8 路独立 可编程红外控制接口(38KHE 载波,以控制多种相同或不同设备,如 DVD VCRMD 等的播放、暂停、停止、进出仓等。8) COMI 口一一包含 4 路可编程双向串行通 讯接口( 3 芯凤凰接口类型),COM0-COM2 支持RS-232(G,TX,RX)通讯格式,COM 支持RS-232(G,TX,RX)/485(A,B)通讯格式。9) CAN-BU-口一一电源控制器,调光器等10)USE口一一用于程序下载.11)ETHERNE以太网接口用于连接 外部网络实现与无线(WiFi)触摸屏的 通讯或以太网远程控制。12)DC 5V-2
5、4V (2A) 系统电源。系统电源输入,DC 5V (2A)2.2接口参数红外学习窗口 -支持 38KHE 载波的红外码。8 路单向发送 RS-232 接口- 可发送 RS232 代码。没有接收功能。IO 接口CP3 共有 20 个 IO 接口,其中 8 个数字 IO, 8 个模拟 IO, 4 个 PWM 其中模拟 IO 和 PWML 可以彳数字 IO 使用。实现 20 路的数字 IO 接口。IO 接口可提供 5V/10mA 负载输出或接收 05V 的信号输入。(不能超过5V,否那么会烧坏主机)红外输出-8 路独立可编程红外控制接口。COMg 口 - 包含 4 路可编程双向串彳 T 通讯接口(
6、3 芯凤凰接口类型),COM0-COM 仅支持 RS-232(G,TX,RX)通讯格式,COM3 支持 RS-232(G,TX,RX)/485(A,B)通讯格式。CAN-BUS口一一支持通用 CAN-BUSH,也可以外接我司的扩展设备如:电源控制器,调光器等USB 接口-用于用户编写程序的下载,暂时只支持USB 下载方式。不支持网络下载。 ETHERNETS最大 8 个连接,支持 TCP/UD 将协议。第二章、软件说明1 iControl 1.0编程软件iControl 1.0是针对CIMTE第三代可编程中控主机CP3开发的编程软件, 中控编程采用G C+邮言编写。采用面向对象的编程方式。支持
7、自定义模块导 入。整个编程软件界面简洁易上手。1.1iControl 1.0安装本软件为绿色软件,无需安装,只需把iControl目录的文件拷贝到电脑硬 盘,然后双击iControl .exe即可运行iControl编辑软件。安装过程比拟简单, 这里不作重点描述,需注意的是:本软件是基于java平台,必须先安装JDKt能正常运行。1.2iControl 1.0软件介绍输出显示、窗口源代码编辑窗口标题栏上传菜单栏状态栏2 .结构说明2.1引用第三方自定义宏CP3采用的是面向对像的编程方式,我们可以把宏封装成对像,对像有属性和 方法。属性描述对象。属性通过变量、常量和结构实现。方法是对象执行的动作
8、。通过使用#include来引用第三方自定义宏的头部文件2.2seutp()在CP3中程序运行时将首先调用setup()函数。用于初始化对像属性、设 备对像等。每次如:#includeCP3上电或重启后,setup函数只运行一次。,启动。一YES,二动行事件处理器,停止、-O例如:TouchPad padl = TouchPad(1000,0); /定义触摸屏TouchPad pad2= TouchPad(1001,1);TouchPad pad3= TouchPad(1002,2);TouchPad pad4= TouchPad(1003,3);vpad vpad1=vpad(2000,0)
9、; /定义虚拟触摸屏byte mac 口 = 0 xDE, 0 xAD, 0 xBE, 0 xEF, 0 xFE, 0 xED ;/网卡 mac 地址IPAddress ip(192,168,1,177);/CP3 的 ip 地址void setup() Ethernet.begin(mac, ip);/ 初始化 CP3 的 ip 地址和 mac 地址DEFINE_COMBINE4(vpad1,pad1,pad2,pad3,pad4);绑定虚拟触屏2.3start()在 setup()函数中初始化后,然后执行 start() 主线函数。主线是 CP 冲央控制器连续执行的程序局部。start()
10、包含被称为主线的代码,只要控制器接电,主线就会被连续循环 执行。2.4事件处理器外部设备和主机处理器之间的所有交互都由主线代码处理。处理器运行主线代码、维护等待和脉冲队列,并检查总线上设备状态的变更。这些交互或状态变更就是事件(Event)。CP3 维护一个已定义的事件处理器表,当一个新事件进入到CP3 处理队列中时,CP3 将其与表中的事件进行比拟。如果表中有该事件,那么只有事件定义的代码被赋值和被执行,而绕过主线局部。如果事件处理器未被定义,那么运行主线,通过主线代码赋值事件。这种机制可以更高效地处理事件,因为不需要主线来处理单一的I/O 请求。如果没有等待中的事件,那么运行主线。主线成了
11、一个空闲时段进程。事件的处理步骤3 .面向对像的编程面向对象编程(Object Oriented Programming , OOP 面向对象程序设计)是一种计算 机编程架构。OOP 的一条根本原那么是计算机程序是由单个能够起到子程序作用的单元或对象 组合而成。OOP 到达了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。CP3 封装了一些常用的对像,如网口,串口,触屏, IO 等 API, CP3 支持自定义模块1 1 APIAPI说明1、CP3主机ip地址设置。(cp3采用的是编程设置主机IP地址方式)byte mac
12、口= 0 xDE, 0 xAD, 0 xBE, 0 xEF, 0 xFE, 0 xED; 设置mac地址IPAddress ip(192,168,1, 177); /设置ip地址IPAddress gateway(192,168,1, 1); /设置网关地址/IPAddress subnet(255, 255, 255, 0);设置子网掩码/void setup() /Ethernet.begin(mac, ip, gateway, subnet); 2、触屏对像。Xpanel CP3是一款人机交互的APP,使用TCP协议与CP3主机通讯,具有断 线通知功能。用户通过Xpanel CP3发送控
13、制命令给CP3主机,CP3主机执行后 把状态发回给Xpanel CP3,两者是相向通讯的。1 1、触屏对像初如化: :TouchPand对像名= TouchPand(TPID,socke)参数 :对像名:可任意符合C语言变量命名方式的变量名。如:ipad1.pad等TPID:触屏对像的ID,可在Xpanel CP3中设置。Socket: CP3主机的网卡最大支持8个socket,范围是(0-7)例子:/定义一个名叫pad1的触屏对像,它的TPID是1000,使用的socket是0TouchPad pad1 = TouchPad(1000,0);TouchPad pad2= TouchPad(1
14、001,1);TouchPad pad3= TouchPad(1002,2);TouchPad pad4= TouchPad(1003,3);2 2、触屏对像事件回调: :当点击触屏上的控件,如按下按钮或拖动进度条时,CP3主时机调用事件回,用户可以事件回调函数中编写想要的功能。把对像名参加到事件回调:touchpanel_start(TouchPand寸像名);监听事件回调:Void getlisten();按钮事件回调 函数( (不要修改函数名及参数名) )void keypadEvent(int id,int jion, KeyState state)按钮回调函数,当点击触屏上的按钮,会
15、自动调用该函数。按钮事件BUTTON_EVENT(TP,jion)参数:TP:触屏对像;Jion:触屏jion No.例子:BUTTON_EVENT(pad1,jion) PUSH /按下事件if(jion100&jion100&jion104) n=jion-100;RELEASE /弹起事件HOLD / 长按事件REPEATC /长按重复事件例子:void keypadLevelEvent(int id,int jion ,int key)pad1.send_Txt(10,String(key)+%); /pad1触屏jion=10的文字显示%值pad1.send_leve
16、l(1,key);/段置padl触屏jion=1的进度条值a1=key;时钟校正回调 函数( (不要修改函数名及参数名) )void settimeEvent(int year,int month,int date,int hour,int min,intsec,int dow)用触屏的时钟校正cp3中控主机的时间例子:void settimeEvent(int year,int month,int date,int hour,int min,intsec,int dow) rtc.setDOW(dow); /设置星期几rtc.setTime(hour,min, sec); /设置时,分,秒r
17、tc.setDate(date, month, year); /设置日,月,年/状态更新回调函数( (不要修改函数名及参数名) )void updataEvent(int tpid)当触屏待机后,唤醒触屏后,会自动调用该函数,并更新触屏的状态例子:void updataEvent(int tpid)pad1.updata_button(101,n=1); /按钮互锁/pad1.updata_button(102,n=2);pad1.updata_button(103,n=3);pad1.updata_button(104,token); /按钮自锁/pad1.send_Txt(10,Strin
18、g(a1)+%); /设置文字的值pad1.send_level(1,a1)设置进度条的值3触屏方法VoidVoid send_button(intsend_button(int jion,booleanjion,boolean f);f);设置触屏按钮的值参数:Jion:触屏按钮的jion No.f:当为真按钮显示按下,当为假按钮显示弹起例子:Pad1.send_button(101,n=1);/S n=1时按钮按下,否那么弹起Pad1.send_button(102,n=2);Pad1.send_button(103,n=3);Pad1.send_button(104,token);洛to
19、ken=true按钮显示按下,当token= false弹起 对像名.updata_button.updata_button (int(int jion,jion, booleanboolean f);f);此方法功能跟send_button(int jion, boolean f);方法一样,updata_button常用于updataEvent回调事件里,send_button常用于start主函数里.VoidVoid send_level(intsend_level(int jion,intjion,int Value);Value);设置解屏进度条,滑动条的值参数:Jion:触屏进度条
20、、滑动条的jion No.Value:范围0-100例子:Pad1. send_level(1,50)send_level(1,50)/设置jion No.为1的进度条的值为50%Pad1. send_level(1,98send_level(1,98;) )VoidVoid send_Txt(intsend_Txt(int jion,Stringjion,String string);string);设置触屏文本显示框的字符串参数:Jion:触屏文本显示框的jion No.string:要显示的字符串例子:Pad1. send_Txt (1, HolleWord);/jion No.为1的文
21、本框显示HolleWrodvoidvoid setHoldTime(unsignedsetHoldTime(unsigned intint time);time);设置触屏按钮触发HOLDHOLD事件的时间; ;参数:Time:单位毫秒。例子:Pad1. setHoldTime (1000);/设置长按事件的触发时间为/1秒voidvoid setRepeatTime(unsignedsetRepeatTime(unsigned intint time);time);设置触屏按钮触发REPEATCREPEATC事件的时间. .参数:Time:单位毫秒。例子:Pad1.setRepeatTimesetRepeatTime(1000);/设置REPEATC事件的触发时间为1秒3、虚拟触屏对像该模块只要是针对多触摸屏的情况。如实际中需要多个触屏屏设备,该模块可以很好的匹配。初始化虚拟触屏对像vpad对像名= vpad (ID,socke)参数 :对像名:可任意符合C语言变量命名方式的变量名。如:ipadl.pad等TPID:虚拟触屏对像的ID。范围1-3000;Socket:范围是(0-255)绑定触屏DEFINE_COMBINEx(.)X:X:的范围(1-8),(1-8),最多同时绑定8 8个触屏.:.:触屏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 七年级上册《金色花》课件
- 两条直线的位置关系对称问题课件
- 《服饰知识常识》课件
- 单位管理制度集合大全人员管理十篇
- 单位管理制度集粹选集人事管理十篇
- 《石膏的护理》课件
- 单位管理制度分享大合集员工管理篇
- 单位管理制度范文大合集职工管理篇十篇
- 单位管理制度范例汇编人员管理篇十篇
- 单位管理制度呈现汇编职员管理篇十篇
- GB 14102.1-2024防火卷帘第1部分:通用技术条件
- 2024年决战行测5000题言语理解与表达一套
- DZ∕T 0272-2015 矿产资源综合利用技术指标及其计算方法(正式版)
- 生物入侵与生物安全智慧树知到期末考试答案章节答案2024年浙江农林大学
- 《公路工程集料试验规程》JTG-3432-2024考核试题及答案文档
- 2023医院隔离技术标准-新旧版对比
- 围手术期高血糖的管理
- 常见的排序算法-冒泡排序 课件 2023-2024学年浙教版(2019)高中信息技术选修1
- 农贸市场安全生产
- 医院门急诊高峰时段合理分流患者的应急预案
- (高清版)TDT 1031.6-2011 土地复垦方案编制规程 第6部分:建设项目
评论
0/150
提交评论