- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何在WinCE下开发智能家居应用
WinCE的开发板成本低廉,又可以很好的处理各种复杂的应用,再加上很多人能运用自己熟悉的语言进行快速开发,所以一直是广大系统集成开发商的首选。
使用WinCE作为智能家居的开发平台,可以快速方便的开发各类智能家居应用。并且可以很方便的将整个操作系统嵌入到墙面,让用户很方便的操作。
我们在这里举个Wince下控制4路电源开关和显示房间温度和湿度的例子。使用天邦登峰的Phidgets1014继电器(4路)和1125温度、湿度传感器不需要配置任何端口,把各部件插入WinCE控制板的USB口插槽内就可以使用了。所需要用到的硬件如下:
WinCE 控制板(学习板)(在各电子城都很容易买到) 天邦登峰1014 - PhidgetInterfaceKit 0/0/4 (接口板-4口)/ViewDetails206.aspx
产品编号: 1014
4 个继电 (Relay) 输出开关交直流电
等级为: 250VAC、10 Amps (100VDC、 5 Amps) 可以接200多个电灯泡和电器
直接连接到计算机的 USB 传输端口(无需配置端口,即插即用)
含USB连接线.
天邦登峰1125 温度湿度传感器:/ViewDetails137.aspx
所需要的软件:
天邦登峰Phidgets驱动
/dengfengsoft_phidgets_drivers.html
1..Net Framework 3.5 (Windows 7 自带,Windows XP 请下载)
2. Visual Studio 2005 Express (下载)
本文范例源码(C#)
/docs/Dengfengsoft_WinCESmartHome.zip
操作步骤:
在WinCE系统内安装天邦登峰Phidgets控制板驱动(在源码文件夹内 –点击install.CAB安装);可以把文件通过U盘插入wince板安装,也可以通过(Windows Mobile 设备中心,从你的Windows 系统把文件上传到wince板子内安装)
本文的程序范例代码以C#为例,您可以在/dengfengsoft_phidgets_programming_resources.html
找到更多编程语言的范例。在各编程语言的 InterfaceKit-full 文件夹里可以找到。
用Visual Studio 2008 新建一个项目工程命名为:SmartHome
在项目下新建一个文件夹“dll”用于存放WinCE下驱动的动态库
把“动态库”的文件夹内的文件全部拷贝到这个文件夹下,并在工程内添加对“Phidget21CE.NET.dll”文件的引用。
界面布局范例如上图所示。
关键代码如下:
连接Phidgets控制设备。(WinCE下的连接方式和在Windows平台下的连接方式略有区别,请仔细看代码。)
在窗体加载的时候根据各个控制板的序列号定义控制板(Phidgets板子上都有一个白色的标签,S/N:后面的那串数字就是控制板的序列号)
private void frmMain_Load(object sender, EventArgs e)
{
try
{
//初始化1014
ifkit_1014_1 = new InterfaceKit();
ifkit_1014_1.Attach += new AttachEventHandler(ifkit_1014_1_Attach);
ifkit_1014_1.open(SysInfo.SN_1014_1);// SysInfo.SN_1014_1是从配置文件获取的控制板序列号
//初始化1125
ifkit_1125 = new InterfaceKit();
ifkit_1125.Attach += new AttachEventHandler(ifkit_1125_Attach);
ifkit_1125.Detach += new DetachEventHandler(ifkit_1125_Detach);
ifkit_1125.SensorChange += new SensorChangeEventHandler(ifkit_1125_SensorChange);
ifkit_1125.InputChange += new InputChangeEventHandler(ifkit_1125_InputChange);
ifkit_1125.open(SysIn
文档评论(0)