串口控RGB三色灯
/*********************************
代码功能:串口控RGB三色灯
使用函数:
Serial.flush(); //清空缓存区
Serial.available(); //读取当前串口缓冲池的数据量
Serial.print(字符串); //通过TX传出去
Serial.write(字符串); //写入串口中
Serial.println(字符串); //通过TX传出去,并在尾端加换行
strtok(字符串,'分隔符'); //字符串分解
strtol(字符串地址,NULL(默认),设置进制); //字符转整形
constrain(源数据,区间下界,区间上界); //区间函数
analogWrite(引脚号.电平); //IO输出函数
创作时间:2016*01*05
作者邮箱:jikexianfeng@outlook.com
********************************/
]; //声明一个字符空间
int red,green,blue; //定义一个变量
; //红
; //绿
; //蓝
void setup(){
Serial.begin(); //初始化串口波特率
Serial.flush(); //清空串口缓存
pinMode(Redpin,OUTPUT);
pinMode(Greenpin,OUTPUT);
pinMode(Bluepin,OUTPUT);
}
void loop()
{
){ //读取当前串口缓冲池的数据量
;
delay();
int numChar = Serial.available(); //获取当前缓存池的数量
){ //只要最后的15个字符
numChar = ;
}
while(numChar--){
buffer[index++] = Serial.read(); //提取缓存中的数据
}
splitString(buffer); //传入功能函数
}
}
void splitString(char * data){
Serial.print("Data entered:");
Serial.println(data);
char* parameter;
parameter = strtok(data,","); //分解字符串
while(parameter != NULL){ //当
setLED(parameter);
parameter = strtok(NULL,",");
}
;x<;x++){
buffer[x]='\0';
}
Serial.flush();
}
void setLED(char *data){
]==] == 'R')){ //是否是 r
,NULL,); //字符转整形
Ans = constrain(Ans,,); //去区间值
analogWrite(Redpin,Ans); //输出
Serial.print("Red is set to :");
Serial.println(Ans);
}
] == ] == 'G')){
,NULL,);
Ans = constrain(Ans,,);
analogWrite(Greenpin,Ans);
Serial.print("Green is set to :");
Serial.println(Ans);
}
] == ] == 'B')){
,NULL,);
Ans = constrain(Ans,,);
analogWrite(Bluepin,Ans);
Serial.print("Blue is set to :");
Serial.println(Ans);
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
参考书籍:http://vdisk.weibo.com/s/B_U0yKSwLLqNM?category_id=0&parents_ref=B_U0yKSx62tsp
参考网站:http://wiring.org.co/reference/
参考网页:http://www.cnblogs.com/jikexianfeng/p/6243654.html
参考网页:http://www.cnblogs.com/rayray/p/3198091.html
串口控RGB三色灯的更多相关文章
- 进阶之路(中级篇) - 015 串口控RGB三色灯
本文由博主原创,如有不对之处请指明,转载请说明出处. /********************************* 代码功能:串口控RGB三色灯 使用函数: Serial.flush(); / ...
- Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件!
源:Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件! 2014年02月06日发布控件的重要更新版本: Victor 串口控件 1.5.0.2 版本 (包 ...
- cport串口控件的应用
cport是一个很强大的串口控件.支持delphi/bcb.最新版本是v4.10.官网下载地址是:http://sourceforge.net/projects/comport/files/compo ...
- 串口控制RGB灯程序
实验目的: 通过上位机给串口发送数据(字符); STM32收到数据进入中断程序原封不动返回上位机,并且根据收到的信息产出相应的进行操作.(1- led_on 2 – ledoff...); 源码 ...
- delphi SPCOMM串口控件
在Delphi7.0中安装Spcomm串口通信控件的方法为:选择Delphi7.0的“Component”菜单,点击“Install Component...”菜单项,然后在弹出的Into exist ...
- BCB 串口控件的使用 TComm
昨天工作用到了串口通信,MMP的,昨天懵逼了一下午,今天终于整通了,身为菜鸟,大师们是不懂这些心痛的. 进入主题:使用BCB提供的控件TComm编程方便且简单,TComm位于System分类里面. ...
- C# 实现串口发送数据(不用串口控件版)
参考:https://blog.csdn.net/mannix_lei/article/details/79979432 https://www.cnblogs.com/ElijahZeng/p/76 ...
- winform串口控件serialPort1的使用
serialPort1 控件使用的关键点主要有三: 1.配置串口号2.配置数据接收事件3.打开串口 关键代码如下: private void Form1_Load(object sender, Eve ...
- VS2013+MFC串口控件的简单上位机
因为做东西,正好用到这里.所以就上传了文件分享一下. 利用VS带的MFC库,用起来还是比较方便的.空间的程序构架都是自动生成的,具体的程序自己加进去就行. 里面有整个的工程 还带有一个生成的EXE文件 ...
随机推荐
- Oracle分区表!
Oracle 数据库分区表的创建和操作 摘要:在大量业务数据处理的项目中,可以考虑使用分区表来提高应用系统的性能并方便数据管理,本文详细介绍了分区表的使用. 在大型的企业应用或企业级的数据库应用中,要 ...
- 网络编程(一):用C#下载网络文件的2种方法
使用C#下载一个Internet上的文件主要是依靠HttpWebRequest/HttpWebResonse和WebClient.具体处理起来还有同步和异步两种方式,所以我们其实有四种组合. 1.使用 ...
- verilog断言(SVA:systemverlog assertion)语法 ---- 转载
转载自:http://blog.sina.com.cn/s/blog_4c270c730101f6mw.html 作者:白栎旸 断言assertion被放在verilog设计中,方便在仿真时查 ...
- python download
今天下载 python3 , 从官网下 速度 平均 十几K,网上 搜了下.提供的下载地址 几乎都是 官网的. 于是 下了个 百度同步盘,做 公开分享. 提供给 大家下载,速度 有 300 多K,提高了 ...
- C# Socket简单例子(服务器与客户端通信)
这个例子只是简单实现了如何使用 Socket 类实现面向连接的通信. 注意:此例子的目的只是为了说明用套接字写程序的大概思路,而不是实际项目中的使用程序.在这个例子中,实际上还有很多问题没有解决,如消 ...
- 最新原创:Power8伴随云计算横空出世
Power8伴随云计算横空出世 自从IBM将并不赚钱的x86服务器业务转手给联想之后,从此IBM便开始了硬件转型的新里程碑.伴随此事继续发酵的还有Power System Linux落户北京,从此IB ...
- C# LINQ详解(转)
C# LINQ详解(一) 原文标题:How does it work in C#?-Part 3 (C# LINQ in detail),作者:Mohammand A Rahman. 目录 LIN ...
- ReactJS学习笔记(二)
1.Ajax: componentDidMount 方法设置 Ajax 请求,等到请求成功,再用 this.setState 方法重新渲染 UI. /*demo1*/ var Demo1Box=Rea ...
- HttpClientUtils
import java.io.IOException;import java.io.UnsupportedEncodingException;import java.util.List; import ...
- How do I remove javascript validation from my eclipse project?
Right click your project Select Properties -> JavaScript -> Include Select Source tab (It look ...