https://www.chowmainsoft.com/arduino

int digitalState[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};

void setup() {
// put your setup code here, to run once:
Serial.begin(9600); for (int i = 2; i < 13; i++) {
//pinMode(i, INPUT);
pinMode(i, INPUT_PULLUP);
}
} void loop() {
// put your main code here, to run repeatedly:
for (int i = 2; i < 13; i++) {
int sensorVal = digitalRead(i);
if (digitalState[i - 1] != sensorVal) {
digitalState[i - 1] = sensorVal;
if (i < 10) {
Serial.println('0' + String(i) + String(sensorVal));
}
else
{
Serial.println(String(i) + String(sensorVal));
}
} }
}

  lua

<devicedata>
<copyright>Copyright 2015 Chowmain. All rights reserved.</copyright>
<creator>Chowmain</creator>
<name>Arduino Nano Contact Input</name>
<model>NanoContact Input</model>
<manufacturer>Arduino</manufacturer>
<driver>DriverWorks</driver>
<control>lua_gen</control>
<version>001</version>
<created>11/02/2015 12:00:00 PM</created>
<modified>11/02/2015 12:00:00 PM</modified>
<front>{Width=700, Height=336}\x158DVPX777-f.bmp</front>
<back>{Width=500, Height=250}\x158dvpx777-b.bmp</back>
<proxy>Driverworks_Arduino_Nano</proxy>
<states/>
<config>
<documentation>
</documentation>
<script>
<![CDATA[
-------------------------------------------------------------------
--Function Name : ReceivedFromSerial
--Parameters : idBinding, strData
--description : Function to give feedback to a light
------------------------------------------------------------------- function ReceivedFromSerial(idBinding, strData)
print("RECEIVED SERIAL DATA: " .. strData)
if(tonumber(string.sub(strData,3,3)) == 0) then --opened
C4:SendToProxy(tonumber(string.sub(strData,1,2)),"OPENED",{}, "NOTIFY")
elseif(tonumber(string.sub(strData,3,3)) == 1) then --close
C4:SendToProxy(tonumber(string.sub(strData,1,2)),"CLOSED",{}, "NOTIFY")
end
end
]]>
</script>
</config>
<connections>
<connection>
<id>1</id>
<facing>6</facing>
<connectionname>Serial RS-232</connectionname>
<type>1</type>
<consumer>True</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>RS_232</classname>
</class>
</classes>
</connection>
<connection>
<id>2</id>
<facing>6</facing>
<connectionname>Digital Input 2</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>3</id>
<facing>6</facing>
<connectionname>Digital Input 3</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>4</id>
<facing>6</facing>
<connectionname>Digital Input 4</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>5</id>
<facing>6</facing>
<connectionname>Digital Input 5</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>6</id>
<facing>6</facing>
<connectionname>Digital Input 6</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>7</id>
<facing>6</facing>
<connectionname>Digital Input 7</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>8</id>
<facing>6</facing>
<connectionname>Digital Input 8</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>9</id>
<facing>6</facing>
<connectionname>Digital Input 9</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>10</id>
<facing>6</facing>
<connectionname>Digital Input 10</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>11</id>
<facing>6</facing>
<connectionname>Digital Input 11</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
<connection>
<id>12</id>
<facing>6</facing>
<connectionname>Digital Input 12</connectionname>
<type>1</type>
<consumer>False</consumer>
<audiosource>False</audiosource>
<videosource>False</videosource>
<linelevel>False</linelevel>
<classes>
<class>
<classname>CONTACT_SENSOR</classname>
</class>
</classes>
</connection>
</connections>
<capabilities>
<serialsettings>9600 8 none 1 none</serialsettings>
</capabilities>
</devicedata>

  

Control4系统对接arduino的更多相关文章

  1. 基于IdentityServer的系统对接微信公众号

    业务需求 公司有两个业务系统,A和B,AB用户之间属于多对一的关系,数据库里面也就是两张表,A表有个外键指向B.现在需要实现以下几个功能. A用户扫描B的二维码,填写相关的注册信息,注册完成之后自动属 ...

  2. 系统对接API调用

    在与公司外部系统对接时,API接口一般采用REST风格,对外暴露HTTP服务.只需要将入参封装好,并发起HTTP请求即可.具体请求流程如下图所示: 数据格式 API调用参数分为系统参数和业务参数,请求 ...

  3. 在win7 64位操作系统下 arduino驱动安装问题的解决

    主要参考以下两个博客: 操作教程:http://blog.csdn.net/u013926582/article/details/24442583 文件下载:http://www.arduino.cn ...

  4. Mock Server之与被测系统对接(python+flask)

    第一步:获取入参与返回结果 先通过postman.jmeter.自己写脚本之类的方式请求我们的mock server,试着获取入参与对应的返回值,这里我用的是robotframework + Requ ...

  5. 与第三方系统对接,生成Cloud出入库单据

    案例: Cloud的采购订单同步到第三方系统,第三方系统入库后同步生成Cloud采购入库单. 解决方案:调用采购订单的下推API,先生成保存状态的采购入库单(采购入库单中的仓库是必填项,可以在采购订单 ...

  6. asp.net 不用控件,自动登录(用于和其他系统对接的时候,自动登录系统,用户体验好)

    if (System.Web.Security.Membership.ValidateUser("admin", "123456")) { //这句话很重要,他 ...

  7. Akka(25): Stream:对接外部系统-Integration

    在现实应用中akka-stream往往需要集成其它的外部系统形成完整的应用.这些外部系统可能是akka系列系统或者其它类型的系统.所以,akka-stream必须提供一些函数和方法来实现与各种不同类型 ...

  8. 【Arduino】2017年电子设计大赛B题 滚球控制系统|板球系统

    今年电赛我们队伍选择的是B题,滚球控制系统.最后我们得到了省特和国一,也算是了结了我大一时的心愿吧.下面对这次比赛进行一下总结,以后回忆起来的时候也有个念想. 滚球控制系统是一个多变量.非线性控制对象 ...

  9. 活字格对接RF手持机与ERP系统,帮助RFID快速盘点方案落地

    这个玩意有点意思,要不要搞来玩玩? ----------- 射频技术(RF)是Radio Frequency的缩写,较常见的应用有无线射频识别(Radio Frequency Identificati ...

随机推荐

  1. idea使用svn出现问题解决办法

    idea一直在refreshing vcs history:解决办法:      有些模块中的版本信息是错的,如拷贝过来的代码,其远程仓库是不存在的,      因此要删除这些模块中的.svn文件夹 ...

  2. ASP.NET MVC 使用Jquery异步操作JS代码

    $(function () { var ajaxFormSubmit = function () { var $form = $(this); var options = { url: $form.a ...

  3. vue-awesome-swiper 水平滚动异常

    使用教程:https://github.com/cynthiawupore/vue-awesome-swiper 实例: <template> <div class="in ...

  4. Nginx 部署多个 web 项目(虚拟主机)

    1,创建 www 目录 2,在 www 目录下创建 test1 和 test2 目录,表示两个项目 3,test1 下创建 test1.html 4,test2 下创建 test2.html 5,配置 ...

  5. 关于bug的一些思考

    上午看了两道算法,自己编译器上面敲了一遍,然后又去网站上敲了一遍: 编译器上面无论哦如何都调不出来,网站上面也是: 吃个午饭,睡个觉,醒来重新手撸了一遍,然后就过了 : 面对这种事情,真的是自己应该多 ...

  6. springboot部分常用注解

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

  7. (网页)swiper.js轮播图插件

    Swiper4.x使用方法 1.首先加载插件,需要用到的文件有swiper.min.js和swiper.min.css文件.可下载Swiper文件或使用CDN. <!DOCTYPE html&g ...

  8. (后端)Spring手动回滚事务

    百度上查资料获得的 throw new RuntimeException(); 或者  TransactionAspectSupport.currentTransactionStatus().setR ...

  9. (网页)习惯了CS回车操作人员,操作BS网页表单也是回车666

    1.第一步把表单,里面需要回车的input,或者是其他的表单按钮给一个clsss,例如下面的$('.cls'); 2.第二步,  把下面的代码复制过去,填写完最后一个自动提交:$("#sav ...

  10. 使用 float 存储小数?

    很多程序员就会使用 float 类型来存储小数.sql 的 float 类型和其他大多数编程语言的 float 类型一样, 根据IEEE 754 标准使用二进制格式编码实数数据. 但是很多程序员并不清 ...