物联网系统设计——与单片机通讯
2014-01-07 16:47
351 查看
在我们完成了前面的几部分之后,我们也需要把这最后一部分解决,这里更多的是硬件,Arduino的存在可以让硬件更简单。
那么让我们先来看看我们写的代码。
(转载保留
Phodal's Blog
Phodal's zenthink
)
这个代码看上去似乎会有点复杂,但是让我们看点基础的,也就是由Arduino来控制一个LED的亮和灭。
这个也就是来自于官方的示例程序,而我们要做的东西也和这个差不多,只是这个是自动的,上面那个是由串口通信来实现的。
简单地来说,我们誻就是用这个来实现通信的,用之前的RaspberryPI 发送1和0给Arduino。那么我们在Arduino上就只是接受和执行,这个由loop里面的if来执行
这个就是串口初始化,速率为9600。
用于读取的就是这么一行
而下面的部分则是刚我们接收到的数据转换为1,由于接到的为char类型,那么我们需要转为转为Int进行判断。
项目首页:http://iot.phodal.com
代码地址:http://github.com/gmszone/iot
Arduino
Arduino 是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的arduino板)和软件(arduino IDE)。它适用于艺术家、设计师、爱好者和对于“互动”有兴趣的朋友们。void setup() { Serial.begin(9600); pinMode(13,OUTPUT); } int serialData; void loop() { String inString = ""; while (Serial.available()> 0) { int inChar = Serial.read(); if (isDigit(inChar)) { inString += (char)inChar; } serialData=inString.toInt(); Serial.print(serialData); } if(serialData==1){ digitalWrite(13,HIGH); }else{ digitalWrite(13,LOW); } }
那么让我们先来看看我们写的代码。
(转载保留
Phodal's Blog
Phodal's zenthink
)
这个代码看上去似乎会有点复杂,但是让我们看点基础的,也就是由Arduino来控制一个LED的亮和灭。
int led = 13; void setup() { pinMode(led, OUTPUT); } void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
这个也就是来自于官方的示例程序,而我们要做的东西也和这个差不多,只是这个是自动的,上面那个是由串口通信来实现的。
串口通信
串行接口是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。简单地来说,我们誻就是用这个来实现通信的,用之前的RaspberryPI 发送1和0给Arduino。那么我们在Arduino上就只是接受和执行,这个由loop里面的if来执行
初始化串口
如果你真心不喜欢51上的复杂的串口,那么我想Arduino又是解放双手的东西了。Serial.begin(9600);
这个就是串口初始化,速率为9600。
串口读取
while (Serial.available()<0) { int inChar = Serial.read(); if (isDigit(inChar)) { inString += (char)inChar; } serialData=inString.toInt();
用于读取的就是这么一行
int inChar=Serial.read()
而下面的部分则是刚我们接收到的数据转换为1,由于接到的为char类型,那么我们需要转为转为Int进行判断。
为什么不直接用'1'
只是为了写给需要的同学用的,也可以直接在上面用if(serialData=='1'),上面写可以让后期扩展的时候方便一点。讨论空间
QQ群:348100589项目首页:http://iot.phodal.com
代码地址:http://github.com/gmszone/iot
相关文章推荐
- 物联网系统设计——与单片机通讯
- 一个最小的物联网系统设计方案及源码——与服务器通讯
- 单片机设计、嵌入式系统、物联网三位一体
- 基于MSC1211单片机的RFID接收系统设计
- C51与单片机系统多级菜单的模块化设计
- [更新设计]跨平台物联网通讯框架ServerSuperIO 2.0 ,功能、BUG、细节说明,以及升级思考过程!
- 汽车驾驶模拟器单片机系统设计
- 硬件系统设计:该用FPGA来做呢还是用单片机?
- 单片机外挂SDRAM与NANDFLASH的系统规划,并设计一个山寨内核
- STM32学习之路(十)单片机最小系统原理图设计
- 一个最小物联网系统设计方案及源码——Android客户端
- 信息安全系统设计基础 实验五:通讯协议设计 20135327郭皓 20135329 李海空
- 信息安全系统设计基础实验五:通讯协议设计
- 430系列单片机复位电路系统设计分析
- 设计单片机硬件系统应遵循的原则
- 一步步搭建物联网系统(教你设计物联网系统)
- 本科毕设-基于C8051单片机的身份识别系统设计
- STC15F104E的STC单片机自动下载系统设计
- 吴川斌博客--一个专注于物联网,智能硬件,可穿戴设备,智能家居,嵌入式系统,pcb设计,IT前沿科技的创客博客
- 单片机硬件系统设计原则