LabVIEWwilliam hill官网
直播中

vvg

14年用户 7898经验值
擅长:嵌入式技术,控制/MCU
私信 关注
[资料]

Labview开启Arduino密码锁程序设计


  实验任务是:labview发送4位数的密码给Arduino控制器,如果这个密码与Arduino控制器设定的密码一致,则指示灯常亮。密码不对,则蜂鸣器发出刺耳的报警声,同时指示灯闪烁。
Labview框图程序如图:
Arduino程序:
  //变量声明
  byte thousand;
  byte hundred;
  byte ten;
  byte one;
  int speak = 3; //蜂鸣器模块接于数字口3
  int led = 9; //指示灯模块接于数字口9
  boolean speak_state = false;
  boolean flag = false;
  //初始化
  void setup()
  {
  Serial.begin(9600); //串口波特率设置
  pinMode(speak, OUTPUT); //设置为输出模式
  digitalWrite(speak,HIGH); //初始化让喇叭不响
  pinMode(led, OUTPUT);
  digitalWrite(led,HIGH);//初始化让灯不亮
  }
  //由参数t形成不同的频率
  void Alarm(int t)
  {
  int i,j;
  for(int i=0;i<200;i++)
  {
  speak_state=!speak_state;
  digitalWrite(speak,speak_state);
  for(j=0;j   delayMicroseconds(10);
  }
  }
  //主程序
  void loop()
  {
  //如果查询上位机通过串口已经发来有四个字节的密码
  if(Serial.available()==4)
  {
  flag= true;
  thousand=Serial.read(); //读取千位
  hundred=Serial.read();//读取百位
  ten=Serial.read();//读取十位
  one=Serial.read();//读取个位
  }
  if(flag == true)
  {
  int sum;//总数
  sum=thousand*1000+hundred*100+ten*10+one;
  //如果密码正确
  if (sum ==5768)
  {
  digitalWrite(led,LOW); //让灯亮
  digitalWrite(speak,HIGH); //让喇叭不响
  }
  //如果密码不正确
  else
  {
  //让灯闪烁,让喇叭报警
  digitalWrite(led,LOW);
  Alarm(90);
  Alarm(140);
  digitalWrite(led,HIGH);
  Alarm(90);
  Alarm(140);
  }
  }


Arduino和labview密码锁程序.rar (41.41 KB)
(下载次数: 154, 2011-11-18 22:23 上传)



回帖(17)

liu_and_chen

2012-6-4 22:28:48
顶一个~~~
举报

850206

2012-11-5 20:54:01
enenedddd
举报

shiyang2012

2012-11-9 14:57:27
是调用电脑的蜂鸣器么?单位的电脑没有声音,想调用机器本身的蜂鸣器,不知道成不成?
举报

指路灯

2012-12-19 11:45:15
举报

更多回帖

发帖
×
20
完善资料,
赚取积分