//注意,这里以控制台灯举例,实际上不一定是用来控制台灯的,

//增加多路请对比1路的程序和两路的程序,按照同样的方法修改程序。

//使用此程序前,模块要设置好关键词。

#include

#define kai 0; //定义字符串kai代表低电平0

#define guan 1;//定义字符串guan代表高电平1

unsigned char a;//a用来存放串口接收到的数据(即模块的返回值)

sbit JDQ=P2^7; //继电器接P2.7,P2.7脚出来接一个10K电阻再接到S8550三极管的基极

//集电极接地,发射极接继电器的线圈到5V电源上,

//线圈两脚之间接一个IN4007二极管,注意二极管的负极要接5V电压处

//正极接三极管的发射极。

sbit JDQ2=P2^6; //第二路继电器接P2.6,P2.6脚出来接一个10K电阻再接到S8550三极管的基极

//集电极接地,发射极接继电器的线圈到5V电源上,

//线圈两脚之间接一个IN4007二极管,注意二极管的负极要接5V电压处

//正极接三极管的发射极。 下同... 请参照控制1路的源码根目录下的原理图。

sbit JDQ3=P2^5;

sbit JDQ4=P2^4;

sbit JDQ5=P2^3;

sbit JDQ6=P2^2;

sbit JDQ7=P2^1;

sbit JDQ8=P2^0;

sbit JDQ9=P1^7;

sbit JDQ10=P1^6;

main()

{

TMOD=0x20;//定时器1使用初值自动重装方式,方式2

TH1=0xfd;

TL1=0xfd;//9600波特率初值

TR1=1;//允许定时器计数

SM0=0;//方式1设置

SM1=1;

REN=1; //允许串口接收

EA=1; //开总中断

ES=1; //开串口中断

while(1)

{

//======================================================//

if(a==1)//如果a=1,P1.7=0,继电器吸合,台灯打开

{

JDQ=kai; //P1.7=0,

}

else if(a==2)//如果a=2,P1.7=1,继电器松开,台灯关闭

{

JDQ=guan;//P1.7=1,

}

//=====================================================//

else if(a==3)

{

JDQ2=kai;//如果a=3,第二路开

}

else if(a==4)

{

JDQ2=guan;//如果a=4,第二路关

}

//====================================================//

else if(a==5)

{

JDQ3=kai;//如果a=3,第三路开

}

else if(a==6)

{

JDQ3=guan;//如果a=4,第三路关

}

//====================================================//

else if(a==7)

{

JDQ4=kai;//如果a=3,第四路开

}

else if(a==8)

{

JDQ4=guan;//如果a=4,第四路关

}

//====================================================//

else if(a==9)

{

JDQ5=kai;//如果a=3,第五路开

}

else if(a==10)

{

JDQ5=guan;//如果a=4,第五路关

}

//====================================================//

else if(a==11)

{

JDQ6=kai;//如果a=3,第六路开

}

else if(a==12)

{

JDQ6=guan;//如果a=4,第六路关

}

//====================================================//

else if(a==13)

{

JDQ7=kai;//如果a=3,第七路开

}

else if(a==14)

{

JDQ7=guan;//如果a=4,第七路关

}

//====================================================//

else if(a==15)

{

JDQ8=kai;//如果a=3,第八路开

}

else if(a==16)

{

JDQ8=guan;//如果a=4,第八路关

}

//====================================================//

else if(a==17)

{

JDQ9=kai;//如果a=3,第九路开

}

else if(a==18)

{

JDQ9=guan;//如果a=4,第九路关

}

//====================================================//

else if(a==19)

{

JDQ10=kai;//如果a=3,第十路开

}

else if(a==20)

{

JDQ10=guan;//如果a=4,第十路关

}

else ;

//也可以用switch语句写,各人喜好吧...

}

}

void serial() interrupt 4 //中断法

{

if(RI==1)//如果是接收中断,进行下面工作

……………………

…………限于本文篇幅 余下代码请从51黑下载附件…………

单片机语音识别源码与资料(ASR M08-B模块arduino与51驱动)相关推荐

  1. 基于stm32单片机的空气质量检测仿真(仿真+源码+全套资料)

    资料编号:072 可以通过STM32的ADC检测当前的空气质量,LCD1602显示,并且可以自动控制风扇排气,也可以设置为手动排气.包含全套资料,下面是视频演示: 72-基于stm32单片机的空气质量 ...

  2. 基于51单片机的智能门禁控制系统(仿真+源码+全套资料)

    资料编号:119  功能讲解: 采用51单片机作为CPU控制,继电器驱动门锁的打开与关闭,采用按键模拟指纹开锁,以及内部开锁相关信号,当指纹正确门锁可以正常打开,指示灯亮绿灯,如果指纹错误,门锁无法打 ...

  3. 基于51单片机的PWM控制马达电机调速正反转(仿真+源码+全套资料)

    资料编号:117 仿真图proteus 7.8 程序编译器:keil 5 编程语言:C语言 采用51单片机,用PWM控制电机脉冲频率应控制在25HZ-35HZ之间 定时1ms,1个周期30ms,脉冲频 ...

  4. 基于stm32单片机有害气体监测检测Proteus仿真(仿真+源码+全套资料)

    资料编号:097 检测当前的有害气体浓度,LCD1602显示,并且可以自动打开关闭风扇,也可以通过手动按键打开关闭风扇通风,全套资料齐全,具体功能请看下面演示视频 97-基于stm32单片机有害气体监 ...

  5. 基于51单片机的全自动智能洗衣机控制系统Proteus仿真(仿真+源码+全套资料)

     资料编号:108 设计功能: 1.对水温实时显示 2.显示滚筒转速 3.显示运行倒计时 4.能通过按钮分别设置洗涤时间和脱水时间 5.运行过程为:加热--洗涤--脱水 具体功能请看下方演示视频 10 ...

  6. 基于51单片机的数字温度计ds18b20温度测量报警仿真(仿真+源码+全套资料)

     资料编号:074 可以设置最低值和最高值,超过上限值LED1亮,超过下限值,LED2亮,LCD1602显示 全套资料齐全:具体请看下方演示视频 74-基于51单片机的数字温度计ds18b20温度测量 ...

  7. 基于STM32单片机闭环步进电机驱动调速仿真(仿真+源码+全套资料)

    资料编号:081 (1) 基本功能:本任务通过输出脉冲控制步进电机的停止.运动.方向.使用 两个按键分别控制步进电机的正转和反转,再次按下这两个按键,步进电机停止, 同时 LCD 显示电机状态信息. ...

  8. 基于51单片机的人体红外探测防盗报警(仿真+源码+全套资料)

     资料编号:128 功能说明: 1.按下紧急报警按键,紧急报警灯闪烁,蜂鸣器报警 2.按下布防按键,布防指示灯开始闪烁,闪烁大约30秒,保持亮的状态,进入布防模式 3.按下取消报警/布防按键,取消布防 ...

  9. 基于51单片机的蓝牙控制双色LED点阵显示屏(实物图+原理图+源码+全套资料)

    资料编号:086 采用stm32单片机,可以通过蓝牙app控制点阵显示不同效果, 具体功能请看演示视频,全套资料齐全: 86-基于51单片机的蓝牙控制双色LED点阵显示屏(实物图+原理图+源码+全套资 ...

最新文章

  1. Uncaught SyntaxError: Unexpected token
  2. MultiBaC包消除不同组学数据之间的批次效应
  3. 【Android 内存优化】Android 原生 API 图片压缩原理 ( 图片质量压缩方法 | 查找 Java 源码中的 native 方法对应的 C++ 源码 )
  4. 2019\National _C_C++_B\1.求2019<X<Y ,使2019*2019,X*X,Y*Y组成等差数列且X+Y最小.
  5. 如何把图片转为html,如何将原始十六进制图像转换为html图像
  6. Codeforces Gym - 100917 部分题解
  7. android学习笔记---asm.jar的使用方法--手机真机屏幕同步抓取软件
  8. 【原创】ASP.NET C# 对SQL/ACCESS 数据库的备份和还原函数
  9. 【转】一个SQL查询出每门课程的成绩都大于80的学生姓名
  10. 基于IdentityServer4的单点登录——IdentityServer
  11. java企业员工管理系统_java企业员工考勤管理系统
  12. 有一个测试微信删除软件叫wool,如果出现这三种情况,便可以删除这些微信好友,此操作适用所有人...
  13. 四足鼎立,北京互联网产业地图
  14. maximo附件WebSphere环境下配置
  15. iphone铃声制作
  16. 车险杀手锏——高速大数据在车险定价中的应用
  17. Httpd服务重定向配置
  18. 美元指数是什么,为什么会对伦敦金有影响
  19. shopee引流方式有哪些,商家如何为自己店铺做引流?
  20. 一起来聊聊 IP 地址、局域网、广域网、IPV4 和 IPV6

热门文章

  1. 微信小程序 encryptedData 的解密(JAVA)
  2. 用条件变量实现事件等待器的正确与错误做法
  3. 免费素材大荟萃:免费图标和UI设计
  4. 当前主流读取Excel技术对比
  5. 一般函数指针和类的成员函数指针
  6. HDU2026 首字母变大写【入门】
  7. Prim算法的C语言程序
  8. Eratosthenes筛选法(C++版)
  9. Python 标准库和第三方库的安装位置、Python 第三方库安装的各种问题及解决
  10. 中英文对照 —— 生活中常见词汇