4

回答

51单片机做了一个指纹+rfid门禁识别系统rfid是p21-25口模拟的spi,刚开始波特率2400指纹是p30.31口uart,波特率9600刚开始两个合并起来不能用,我就把rfid的波特率也改到9600,就可以用了连接两个设备一定要同一波特率吗?

009544c36528c94b 2020-07-07 阅读:26

1

回答

各位大佬好,我是新人最近学51单片机有一个问题一直困惑着我,就是关于串口中断函数何时进入的问题,如下面代码void Usart() interrupt 4{        u8 receiveData;        receiveData=SBUF;        RI = 0;        SBUF=receiveData;        while(!TI);         TI=0; }复制代码上面的串口中断函数应该是在RI或TI置一的时候进入,上面的中断函数初次进入是RI=1,但是运行到SBUF=receiveData的时候,此时TI应该置0,等待TI置1,那假如在这个程序中,TI在中断程序中变成1,那中断程序是直接运行到末尾还是重新从头运行,毕竟TI=1触发了中断,应该重头再次运行。

1209a6b76f22a509 2020-07-07 阅读:12

5

回答

c语言算时间 for延时,怎么算时间?for(i=;;) 

8d511fecc304a4ec 2020-07-06 阅读:24

0

回答

本人小白,有人可以提供一点有关资料吗,比如用哪个AD芯片什么的,用传统的8051(at89c52)可以实现音乐频谱仿真吗,这方面的资料非常少,希望得到一点帮助,非常感谢!

7d25640828a6de3a 2020-07-03 阅读:6

5

回答

为什么mpu6050航向角会偏移,在四轴上怎么解决偏移问题

yhj416606438 2020-06-28 阅读:119

17

回答

学单片机之前需要学些什么作为基础?

9f14860ef29ee27d 2020-06-27 阅读:98

4

回答

在电脑上拆到2条rdram内存条,这个和sdram内存条有什么区别,可以兼容吗

yhj416606438 2020-06-25 阅读:154

3

回答

毕业设计题目是基于单片机的体温脉搏测量系统,请教大神怎样加入傅里叶算法来测量体温脉搏,并且得到结果后又该用什么方法后者算法来分析得到的结果

049dc9ac9e55fb55 2020-06-18 阅读:108

3

回答

at89c51的io输出pwm,级数256级,用定时器实现那么它的最高频率能到多少

yhj416606438 2020-06-17 阅读:133

1

回答

新唐N76E003单片机的引脚中断功能只能给某8路使用吗?因为正常的外部中断只有INT0和INT1,我需要更多外部中断脚

dikavimenkey 2020-06-13 阅读:159

5

回答

如果实现自动变焦功能,配置的时候是配置哪一条指令的

yhj416606438 2020-06-10 阅读:85

6

回答

偶然看到arduino有好几种图形化编程工具,如Mixly、Ardublock、linkboy等,问一下51单片机有没有这样的工具啊!

dfb3c03389330c9d 2020-06-09 阅读:68

7

回答

用这个单片机应该使用共阳还是共阴数码管,为什么

yhj416606438 2020-06-09 阅读:79

1

回答

51单片机P3口的wr非口有什么作用,接c0832 芯片时,芯片中的wr非口有什么作用,这个不太懂,有没有关于p3口功能的文档???

1e282ea282cf8eb5 2020-06-08 阅读:108

5

回答

51这个地方什么意思?芯片的地址0x7fff

665a0dc2363f985d 2020-06-07 阅读:69

5

回答

小萌新想问问  89c52单片机32个io口可以全部连接上数字量传感器吗,每个传感器就一条输入信号线,单片机扫描一下每个io口的电平就实现目的了。大佬们进来看看​

43121c506522e61e 2020-06-06 阅读:60

1

回答

单片机串口通信的问题我就想问串口通信方式1 到底和计数器T1有什么关系?波特率的计算重为什么要用到T1波特率在程序里面到底是怎么体现的。看了半天PPT都看不懂

1df5dcc85266a875 2020-06-06 阅读:46

4

回答

请教各位大神,最近在玩st7920控制的LCD12864这个屏,有一些疑问,希望大神们带带小白:用打点法显示自己想要的汉字,具体是怎么实现的啊?比如说,我现在可以任意位置打一个点了,然后我怎么实现我想要的汉字呢?

ea02ddd1a75ed8c3 2020-06-03 阅读:67

6

回答

用按键作显示模式选择键,实现上述实验中3个显示画面的切换,即上电显示“1”,按1次键显示“1234”,再2次键显示2位秒计数器,按3次键又显示“1”……。这个怎么做呀?#define THCO   0xee#define TLCO   0x0还有这个定义该怎么判断什么时候需要又如何来写呢??

ea1c05ee9e6ee035 2020-06-03 阅读:60

2

回答

//红外反射开关,接收头HS0038B,发射管用pnp三极管驱动//第一次上电,灯亮1秒后熄灭,//手挡一次开,再挡一次关,如此循环//实验板测试手挡一次开,再挡一次关 开关正常;//但是有一个问题,如果手一直挡在前面,LED会不停的亮--灭        -- 亮--灭//请大神们看下,这样才能做到手挡在前面不移开,保持一种状态//控制部分写在大循环里和写在中断里面一样锁不住#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint  unsigned intsbit ir=P2^4;         //红外发射sbit ir_in=P3^2; //红外接收sbit led=P1^7;         //低电平LED亮bit flagflag2=1;uint contcont1s;uchar clock;//bit f1f2;void delay(uint z)           //ms{        uint xy;        for(x=z; x>0; x--)                for(y=114; y>0; y--);}void fa_38k()          //38k 载波                         //接收头前面有滤光片{                                          ir=0;                          _nop_();_nop_();_nop_();_nop_();        _nop_();_nop_();_nop_();_nop_();                 ir=1;        _nop_();_nop_();_nop_();_nop_();        _nop_();_nop_();_nop_();_nop_();        _nop_();_nop_();_nop_();_nop_();        _nop_();_nop_();_nop_();_nop_();//        _nop_();//_nop_();_nop_();_nop_();}void main(){        uint i=0;        ir_in=1;        TMOD |= 0X01;                          //T0定时器,模式1 16位计数        TH0 = (65536-10000)/256;  //10ms初值 @12MHz晶振        TL0 = (65536-10000)%256;        EA=1;        ET0=1;        TR0=1;        led=0;        delay(1000);        led=1;        while(1)        {                          if(flag)                        {                                fa_38k();  //发38K                        }                        else ir=1;           //停止发射                                //                                if(ir_in==1)         //没有反射信号//                                {//                                        s=0;                 //延时变量清零//                                        clock=0;          //自锁标志清零//                                //        f2=0;//                                        flag2=1;          //恢复发射//                                }//                                else if(clock==0) //有反射信号//                                {        //                                //                                        s++;                  //消抖//                                        if(s>2000)          //这里值取大些,增强抗干扰//                                        {        //                                                //                                                s=0;//                                                flag2=0;  //停止发射////                                                clock=1;//                                                led=!led;                  ////                                        //        while(!ir_in);//                                                //                                        //        f2=1;//                                                delay(1000);          //延时1秒,等手移开后//                                                //                                        }//                                }                                                        }}void timer0() interrupt 1{        TH0 = (65536-10000)/256;  //重装10ms初值        TL0 = (65536-10000)%256;        if(flag2==1)        {                cont++;                if(cont==10)                  {                                cont=0;                        flag=!flag;         //发100ms 38K,停100ms                }        }                flag2=0;  //停止发射        if(ir_in==1)         //没有反射信号        {                s=0;                 //延时变量清零                clock=0;          //自锁标志清零                flag2=1;          //恢复发射        }        else if(clock==0 && ir_in==0) //有反射信号        {                                s++;                  //消抖  这里值取大些,增强抗干扰                if(s>8 && ir_in==0)          //                {                                                        s=0;                        flag2=0;  //停止发射                        clock=1;                        led=!led;                        while(!ir_in);        //加不加这句,手挡在前面不移开,LED都会不停 亮--灭                                                flag2=0;  //停止发射                                        }        }}

610e6133652d6eef 2020-06-03 阅读:53
  • 帮助人数
  • 0
  • 获得赞数
  • 0
  • 一周积分
  • 0

每日任务

提问一次
100IC币
回答一次
30IC币

问题达人换一批

本月问答IC币兑换

排名
用户名
问答积分
可兑换IC币
1
710
15000
2
522
10000
3
384
8000
4
384
8000
5
368
8000
6
278
6000
7
178
4000
8
168
4000
9
140
4000
10
126
4000
11
120
4000
12
74
2000
13
68
2000
15
46
1000
16
44
1000
17
40
1000
18
32
1000
19
26
0
21
22
0
22
22
0
26
20
0
27
20
0
28
18
0
30
10
0
< 123 >