自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 51单片机通过串口开关LED

本实验运用单片机串口发送接收功能,使得PC端可以通过发送数据控制单片机的LED。//数组内容重新遍历。//9600波特率的初值。SCON=0x50;电脑端发送 "close",LED灭。电脑端发送 “open”,LED亮。

2024-07-02 16:20:31 772

原创 52单片机如何自己配置串口

首先配置SCON串行控制寄存器 ,根据数据手册,一般选用工作方式1或3,这里我们选用工作方式1,则SM0和SM1分别为0和1。正确的是SMOD为0不加倍,为1加倍,这里可以选择不加倍,那么PCON低四位高四位全为0,可以不用配置。剩下的无关位全给0,则SCON为0100 0000,转化为16进制,为0x40。253转换为16进制0xFD,则TH1=0xFD ,TL1=0xFD,用与或配置,TMOD &=0x0F //现将高四位清零,低四位不变。则TMOD 为0010 0000,16进制为0x20,

2024-07-02 11:47:33 514

原创 52单片机超声波控制舵机中容易犯的错误

容易犯的错误 :软件里,超声波模块需要首先给 trig一个10us的高电平,其次,定时器0和定时器1容易写混。//设置定时器模式,低四位置一,高四位清零。//当40次表示1s,重新让cnt从0开始,计算下一次的1s。if(cnt == 40){//循环40次,经过了1s。//设置定时器0工作模式1,初始值设定0开始数数,不着急启动定时器。//5. 距离 = 速度 (340m/s)* 时间/2。//2. 给初值,定一个0.5ms出来 ,则pwm一小片为0.5。//每经过1s,翻转led的状态。

2024-07-01 15:45:58 819

原创 52单片机超声波测距时无法刷新检测的问题

完成代码后,烧录程序,发现超声波模块并没有完成预期中的效果,而是只能检测一次,比方说刚开始的时候距离比较大,就一直执行else{//转换成cm/us。//设置定时器0工作模式1,初始值设定0开始数数,不着急启动定时器。//设置定时器0工作模式1,初始值设定0开始数数,先不启动定时器。//1. Trig ,给Trig端口至少10us的高电平。//2. echo由低电平跳转到高电平,表示开始发送波。//5. 距离 = 速度 (340m/s)* 时间/2。//5. 距离 = 速度 (340m/s)* 时间/2。

2024-07-01 09:58:30 879

原创 52单片机定时器中断延时和ISP软件延时的区别

本实验在主函数将led2用软件延时延迟1000ms,在中断里用定时器定时50ms,循环20次,测试软件延迟和定时器延时的区别。//当20次表示1s,重新让cnt从0开始,计算下一次的1s。区别在于定时器延时消耗定时器资源,软件延时消耗CPU资源。从结果来看软件延时和定时器延时没有太大差异。//每经过1s,翻转led的状态。if(cnt == 20){//爆表20次,经过了1s。//1. 配置定时器0工作模式位16位计时。//允许中断一号口开启中断。//2. 给初值,定一个50ms出来。

2024-06-30 16:27:55 499

原创 51单片机 定时器中断方式控制LED

此实验还可进行推广,比如可以在主函数里根据软件延时函数使另外LED闪烁,在中断里使第一个LED根据内部定时器延时50ms闪烁。//当100次表示1s,重新让cnt从0开始,计算下一次的1s。10000us/1.085us=9216 65536-9216为56320,转换为16进制。//每经过1s,翻转led的状态。if(cnt == 100){//爆表100次,经过了1s。//1. 配置定时器0工作模式位16位计时,为2的六次方65536。//2. 给初值,定一个10ms出来。

2024-06-30 15:58:43 647

原创 433M无线射频模块控制继电器通断问题

3:接上外设的VCC和GNG。查询资料后发现,是由于USB串口供电不足导致的,在烧录前需要将外设拔掉,再进行烧录,烧录完后在接入外设即可。本实验还可进行扩展,在继电器NO和COM端接入设备,如喇叭等,可实现类似电动车报警器功能。本项目由433M无线射频模块控制继电器通断问题,只定义发送模块A,B两个按键。1:拔掉无线接收模块的VCC和GNG。途中烧录中遇到无法检测单片机问题,A,B对应接收模块D0,D1。

2024-06-29 16:42:09 364

原创 51单片机震动传感器导通继电器中继电器绿灯异常问题

本项目由振动传感器震动发送低电平给继电器,使继电器绿灯亮,实际过程为一旦检测到震动,继电器导通绿灯亮,延迟两秒后断开,但实验中出现继电器导通后绿灯持续点亮并不熄灭的问题。一开始没有头绪,慢慢觉得是震动传感器灵敏度问题,将震动传感器触发方式改为由按键手动触发,按下按键为导通继电器。按下按键一后导通继电器,2秒后断开,发现可以正常运行,那就是震动传感器的灵敏度问题,sbit switcher=P1^1;最终实现震动传感器导通继电器。震动传感器导通继电器。

2024-06-28 17:48:34 618

原创 KEIL5 51单片机一个按键控制灯的亮灭出现的问题

用以下代码,会出现按键按下后不会灭,只在按键按下时灭,按键松开后复亮的现象。猜测是按键检测的问题,因为按键分为按下和松开,导致程序无法检测到是否按下。整个程序会不断检测按键1的状态。完美解决问题,优化后的代码中。

2024-06-28 15:46:35 433 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除