极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 29970|回复: 10

arduino 上位机测试实验 修改1

[复制链接]
发表于 2013-1-24 02:42:41 | 显示全部楼层 |阅读模式
本帖最后由 445814907 于 2013-1-24 02:57 编辑

一直想用上位机控制arduino。计划用方案1用C++编,但是发现网上的视频大部分直接就教编串口调试助手这个软件,完全跟不上视频的步骤啊,方案2用labview软件,但是labview里面的串口例子也是串口调试助手这个例子啊,我总不能直接就用吧,G语言编的,看的我头大啊,这么改都不知道。最后的最后,我觉得与其把时间浪费在纯上位机的编程上,不如就是能达到我的要求,能和arduino通讯就好。
第一个图片是前面的设计,第二个图片是代码窗口,别看就这几句代码,好用就行啊,哈哈,我插上arduino,显示的是COM3,所以在
第一栏的代码框里Comm3.PortOpen = True,打开COM3口,
第二栏  
Private Sub Command2_Click()
Comm3.Output = "a"
End Sub
使com3 发送数据a

第三栏
Private Sub Command3_Click()
Comm3.PortOpen = fase
End Sub
使com3 关闭

Private Sub Command4_Click()
Comm3.Output = "b"
End Sub
使com3 发送数据b

编完之后F5运行就可以了,这时要注意不能打开arduino的COM工具,
图片2是代码窗口的截图。

下面的是arduino的代码,我要实现的功能是点击上位机led按钮,arduino的led灯亮,点击led1按钮arduino的led1亮。思路就是串口发送"a", arduino 读到a,进行led 部分的工作。同理于“b”

int led=2;     //把LED连在Arduino数字端口2
int led1 = 3; //把LED连在Arduino数字端口3
//初始化
void setup() 
{
  Serial.begin(9600);  //启动串行通讯,波特率为9600b/s
  pinMode(led,OUTPUT);  
  pinMode(led1,OUTPUT);
  digitalWrite(led,HIGH);
  digitalWrite(led1,HIGH);
}
//主程序
void loop() 
{

    char val;//定义变量val,用于暂存上位机发送来的字符
  if(Serial.available()>0)//如果上位机发送来了字符
  {
    val=Serial.read(); //读取上位机发来的字符,并保存到val  
    Serial.println(val); //显示接受到的字符
    if(val=='a')//如果上位机发送字符'a',
    {
      digitalWrite(led,LOW); //点亮LED灯         
    }
    if(val=='b')//如果上位机发送字符'b',
    {
       digitalWrite(led1,LOW);//点亮LED1          
    }    
  }
  delay(100);//延时100ms
}

测试好用,第一次添加个附件,看看好不好用,哈哈。还有啊,大家要是想试试,看看把自己的arduino的改成COM3.试试好不好用啊,然后告诉我。我觉得应该能还用。水平太差,让大家见笑了啊  。还有我的暴力改装arduino。在万用版的下面了,不想把钱花在那些扩展板上,自己动手丰衣足食啊,还有不会传视频啊,怎么传?大家教教我啊。。还的攒钱娶媳妇呢。哈哈







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2013-1-24 12:27:17 | 显示全部楼层
太初级,不实用
回复 支持 反对

使用道具 举报

发表于 2013-1-24 22:33:04 | 显示全部楼层
哇哦,真人秀哦{:soso_e144:}
回复 支持 反对

使用道具 举报

发表于 2013-3-17 17:45:58 | 显示全部楼层
挺好的简单宜宜懂
回复 支持 反对

使用道具 举报

发表于 2013-10-6 23:10:09 | 显示全部楼层
还是没看懂用什么写的
回复 支持 反对

使用道具 举报

发表于 2013-10-6 23:12:56 | 显示全部楼层
求详细资料
回复 支持 反对

使用道具 举报

发表于 2013-10-30 17:14:56 | 显示全部楼层
最后到底用的什么呢?没有说清楚呀
回复 支持 反对

使用道具 举报

发表于 2014-8-16 10:34:05 | 显示全部楼层
我想是用Delphi做的上位机
回复 支持 反对

使用道具 举报

发表于 2015-8-28 14:20:08 | 显示全部楼层
上位机是VB做的,我实验过了,能用,2个LED正极分别串两个1k电阻后接5v电源,负极分别接数字2,3口,
vb变量写得不够直观。
回复 支持 反对

使用道具 举报

发表于 2015-8-28 23:17:12 来自手机 | 显示全部楼层
pan628 发表于 2015-8-28 14:20
上位机是VB做的,我实验过了,能用,2个LED正极分别串两个1k电阻后接5v电源,负极分别接数字2,3口,
vb变 ...

mscomm做了什么设置,能把源码放上来吗?
回复 支持 反对

使用道具 举报

发表于 2015-8-29 14:04:04 | 显示全部楼层
已经搞懂了,commport设置为3即可,谢谢。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-16 04:24 , Processed in 0.042883 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表