原来如此 发表于 2013-12-26 15:12:48

pcDuino使用串口电力载波模块Spyder进行电力载波通讯

上次我们通过pcDuino的usb口实现了pcduino和spyder的AT指令交互。今天我们将通过pcDuino的串口(GPIO 0 ,GPIO 1)来完成基于pcDuino的电力载波通讯。
需要用到的硬件
(1)pcDuino V2 *1 pcDuino lite wifi *1 www.pcduino.com
(2)Spyder *2http://linksprite.com/wiki/index.php5?title=Spyder
(3)5-12V 电源 *2
(4)5V2A 电源 *2
(5)杜邦线诺干
一. 连线配置
http://cnlearn.linksprite.com/wp-content/uploads/2013/12/IMG_20131223_085906.jpg1.spyder的2号脚连接pcduino的GPIO 1,3号脚连接pcduino的GPIO 0,10号脚连接pcduino的GND。http://cnlearn.linksprite.com/wp-content/uploads/2013/12/spyder01.jpg2.连接2个spyder的电力线接口。并给spyder上电(5~12v皆可)。3.给pcduino上电。
二.测试代码
/*************….**************/中的代码可以完成pcduino和spyder的AT指令交互,当然这次我们是通过pcduino的串口实现的,而不是pcduino的usb口。有兴趣的话可以取消注释看看效果。当然别忘了把原本注释外的代码给加上注释哦。Pcduino Lite Wifi代码:#include <core.h>/*********************static unsigned char i = 0;
void setup(){
Serial.begin(9600);
}void loop(){
if(i == 0){
Serial.print(“+++”);
printf(“+++ have send!\n”);
}
else if (i == 1){
Serial.print(“ATSN”);
Serial.print(‘\n’);
printf(“ATSN have send!\n”);
}
else if (i == 2){
Serial.println(“ATEX”);
printf(“ATEX have send!\n”);
}
while(Serial.available() > 0){
printf(“%c”,Serial.read());
}
i++;
delay(3000);
}
************************/
void setup(){
Serial.begin(9600);
}void loop(){
Serial.println(“Lite Wifi:520linksprite!”);
delay(1000);
while(Serial.available() > 0){
char c = Serial.read();
printf(“%c”,c);
}
}Pcduino V2代码:#include <core.h>/*********************static unsigned char i = 0;
void setup(){
Serial.begin(9600);
}void loop(){
if(i == 0){
Serial.print(“+++”);
printf(“+++ have send!\n”);
}
else if (i == 1){
Serial.print(“ATSN”);
Serial.print(‘\n’);
printf(“ATSN have send!\n”);
}
else if (i == 2){
Serial.println(“ATEX”);
printf(“ATEX have send!\n”);
}
while(Serial.available() > 0){
printf(“%c”,Serial.read());
}
i++;
delay(3000);
}
************************/
void setup(){
Serial.begin(9600);
}void loop(){
Serial.println(“Pcduino V2:520linksprite!”);
delay(1000);
while(Serial.available() > 0){
char c = Serial.read();
printf(“%c”,c);
}
}
三. 编译程序
如何在pcduino上获取arduino风格的API并且编译代码,网上很多帖子有讲比如:http://www.geek-workshop.com/thread-8191-1-1.html。这里就不多讲了。

四. 结果显示
Pcduino Lite Wifi 上显示:http://cnlearn.linksprite.com/wp-content/uploads/2013/12/IMG_20131223_084939.jpg

pcduinoV2上显示:http://cnlearn.linksprite.com/wp-content/uploads/2013/12/IMG_20131223_084958.jpg

代码中Pcduino Lite Wifi通过串口给spyder发送了“Lite Wifi:520linksprite”,结果显示在了pcduino V2上。相同的pcduinoV2通过串口给其连接的spyder发送了“PcduinoV2:520linksprite”,结果显示在了Lite Wifi上。这说明数据确实通过了spyder的电力线接口进行了传输。

页: [1]
查看完整版本: pcDuino使用串口电力载波模块Spyder进行电力载波通讯