在天问block环境下LU-ASR01与51单片机的基础运用
正确步骤将模块和电脑连接后,仍然显示未连接(如4.1中图片中的编译下载后面显示未连接),可以尝试关闭软件后尝试,如果仍然不行换一条type-c线再试;以上方式都不行,可能要怀疑ASR01硬件损坏,跟商家联系!!!
目录
一、LU-ASR01模块
如图1:
a、LU-ASR01有八个I/O口,为IO1-IO8,其中IO1-IO6可以作为PWM信号输出口和普通I/O口使用,IO7、IO8只能作为普通I/O口使用,不能输出PWM信号;DHT口可接入DHT11、DS18B20模块等;
b、LU-ASR01有一个TX口,硬件上该模块串口通信只能发送,不能用于接收,但是事实上LU-ASR01仍然可以用串口接收(软串口形式,本系列会有介绍,请移步本栏目!);
c、最后是一个接5V的电源和一个接地端;可以通过5V接口为该模块供电,而不一定需要通过如图3来供电;
如图2:
a、这里是一个喇叭接口;
如图3:
a、这里是type-c接口,用于烧录和供电;
二、天问block软件下载安装
天问block软件下载网址:天问Block天问Block 单片机开发利器,支持STC全系列8位单片机,32位ARM和RISC-V内核。http://www.haohaodada.com/new/twen51/index.php
2.1 复制地址到浏览器(如图所示),点击下载。
2.2 注意,下载该软件时需要联网,同时关闭电脑杀毒软件等;
2.3 需要安装驱动。使用LU-ASR01模块需要下载CH340/CH341驱动;
三、 在天问block新建第一个项目
3.1 点击设备选择 TWEN-ASR,如下图所示:
3.2 新建项目,并编上语句;这里编码目的是使用51单片机来输出高低电平控制灯光亮灭,并不是用LU-ASR01的I/O口来控制灯光亮灭。而单片机想要与LU-ASR01通信使用的是串口通信,即上面第一点说的TX口,ASR01的TX口接51单片机的RX口(P3^0)。注:我的单片机是STC89C52RC,不同单片机RX口不一样;
四、天问block生成与编译
4.1 点击生成模型,出现账号登录界面,如果有账号登录即可生成模型;没有账号需要注册用户,注册用户是免费的,只需要一个手机号即可;生成模型时间大概需要等待1-3分钟。
4.2 编译下载前,注意模块是否与电脑连接,如图所示。可以通过电脑设备管理器中的端口查看端口号;(如果正确接上模块,会自主识别)。编译下载需要等待一分钟左右,下载完成后ASR01会播报“欢迎使用智能电灯,用多多唤醒我”(就是我们设置ASR01的欢迎词)。
五、51单片机代码
注:以下代码在STC89C52单片机使用
#include "reg52.h"
typedef unsigned char uchar;
sbit LED1 = P2^0;
//串口通信初始化
void uart_init(uchar baud)
{
TMOD|=0X20; //设置计数器工作方式2
SCON=0X50; //设置为工作方式1
PCON=0X80; //波特率加倍
TH1=baud; //计数器初始值设置
TL1=baud;
ES=1; //打开接收中断
EA=1; //打开总中断
TR1=1; //打开计数器
}
//主函数
void main()
{
uart_init(0xfa); //波特率为9600
while(1)
{
;
}
}
//串口通信中断函数
void uart() interrupt 4
{
uchar rec_data;
RI = 0; //清除接收中断标志位
rec_data=SBUF; //存储接收到的数据
if(rec_data == '1') //开灯
{
LED1 = 0;
}
else if(rec_data == '0') //关灯
{
LED1 = 1;
}
}
六、问题总结
6.1 下载天问block之前最好将杀毒软件关闭。
6.2 正确步骤将模块和电脑连接后,仍然显示未连接(如4.1中图片中的编译下载后面显示未连接),可以尝试关闭软件后尝试,如果仍然不行换一条type-c线再试;以上方式都不行,可能要怀疑ASR01硬件损坏,跟商家联系!!!
6.3 不使用ASR01直接控制I/O口来使灯亮灭,主要是因为测试ASR01与单片机的通信,后续都是使用ASR01与单片机通信来控制功能。
更多推荐
所有评论(0)