4

回答

数据一直跳,调了挺久的,一直没弄好

441ea9c8cb2d73a6 2020-07-28 阅读:54

5

回答

单片机定时器0中断 控制LED亮灭 有几个问题想不清楚!求解答​​1.模块一不是给定时器设定了初值了嘛?模块三的重新设定是在中断之后将溢出的数值重新设定????2.去除模块三的定时器赋初值为什么下载程序后不能达到LED亮灭??3.主函数中的while(1)是让程序停在那里一直扫描???#include"reg52.h"                        //此文件中定义了单片机的一些特殊功能寄存器typedefunsigned int u16;          //对数据类型进行声明定义typedef unsignedchar u8;sbitled=P2^0;         //定义P20口是led/@@*******************************************************************************模块一* 函 数 名         : Timer0Init* 函数功能        :定时器0初始化* 输    入         : 无* 输    出         : 无*******************************************************************************/voidTimer0Init()  //外部中断0的函数{TMOD|=0X01;  //选择为定时器0模式,工作方式1,仅用TR0打开启动。TH0=0XFC;        //给定时器赋初值,定时1msTL0=0X18;     ET0=1;//打开定时器0中断允许EA=1; //打开总中断        TR0=1;//打开定时器        //定时器0的运行开关               }/@@*******************************************************************************模块二:主函数* 函 数 名       : main* 函数功能                : 主函数* 输    入       : 无* 输    出            : 无*******************************************************************************/void main(){        Timer0Init(); //定时器0初始化while(1);        //  等待中断发生????     }  /@@*******************************************************************************模块三:中断服务函数* 函 数 名         : void Timer0()interrupt 1* 函数功能                   : 定时器0中断函数* 输    入         : 无* 输    出         : 无*******************************************************************************/void Timer0()interrupt 1{staticu16 i;TH0=0XFC;        //给定时器赋初值,定时1msTL0=0X18;i++;if(i==1000){i=0;led=~led;        }        }​

7d98f69965181add 2020-07-28 阅读:71

4

回答

红外热成像可以做图像识别吗

yhj416606438 2020-07-28 阅读:70

6

回答
PID到底应该怎样理解 单片机综合应用

PID到底应该怎样理解

小小秋风1 2020-07-27 阅读:94

7

回答

对于12hz的晶振,如果要求一秒间隔,那么计时器工作方式1中,脉冲次数65536次,溢出了也达不到一秒,这时候该怎么办呀

2174cd4ede269298 2020-07-27 阅读:69

2

回答

用定时器做的,但是LED灯只是第一次闪烁后常亮30分钟后熄灭,第二次按按键后就是一直亮了,不知道为什么,请一些高手解答下。测试代码如下  最重要的就是第一次定时可以 第二次就不行了   STC15W100的芯片#include  "reg52.h"#include  "intrins.h"#define uchar unsigned char#define uint unsigned inttypedef unsigned int u1;typedef unsigned char u2;      //unsigned char d;unsigned char n=0;uchar min=1; sec=59; //uchar flag;//sbit led2=P3^0;  //sbit led1=P3^1;  //sbit cd=P3^2;    //sbit uv=P3^3;    //sbit k1=P3^4;   bit flash;//bit  key;sfr IE2=0xAF;sfr AUXR=0x8E;sfr T2H=0xD6;sfr T2L=0xD7;void shijian(); ///@@**************************************************************************/void delay_1s()    {int ab;                for(a=1000;a>0;a--)          for(b=150;b>0;b--);}/@@**************************************************************************/                void keypros()      {if(k1==0)                {                delay_1s();                        if(k1==0)                        {                        flash=~flash;                          key=1;                        }                }                while(!k1);}/@@**************************************************************************/void ledflash(){                if(flash==1&&key==1)                {                        for(d=0;d<10;d++)                        {                  led1=0;                        delay_1s();                        led1=1;                        delay_1s();                                }                          key=0;                                led1=0;                    uv=1;                                        }    if(flash==0)                {                                led1=1;                    uv=0;                }}/@@**************************************************************************/void Int1Init()                  //{  IT0=1;        EX0=1;        EA=1;}/@@**************************************************************************/void Timer2Init()                  //{        IE2|=0x04;        T2H=(65536-50000)/256;                   T2L=(65536-50000)%256;        EA=1;   //        AUXR|=0x10; //        }/@@**************************************************************************/void main()        {         led1=1;  uv=0;        led2=1;        flash=0;          Timer2Init();        while(1)        {                         keypros();                  ledflash();                Int1Init();                        }                }/@@**************************************************************************/void Int0()    interrupt 0     //{                if(cd==0)        {        uv=0;                      //        led2=~led2;                //        }        else        {        led2=1;        }}/@@**************************************************************************/void Timer2() interrupt 12{  T2H=(65536-50000)/256;                   T2L=(65536-50000)%256;        flag++;        if(min==0&&sec==0){  uv=0;}if(flag>=20)        {        flag=0;                sec--;                if(sec<=0)                {                sec=59;                        min--;                        if(min<=0)                        {                          min=0;                                sec=0;                                AUXR|=0x00;                                                        }                }        }        }

ef9bfd512f14ac62 2020-07-27 阅读:49

5

回答

如何使用单独按键  长按开机  长按关机长按开机是用外部中断唤醒如何在按键按下进入外部中断得时候 到2秒才执行唤醒求大佬给一些代码看看,这个卡了一天时间了,

4077a70e0304899b 2020-07-27 阅读:70

5

回答

单片机今天刚到,打开烧录的时候一直显示正在检测单片机,没有一次显示操作成功,但是单片机一直显示的是商家的测试程序,不管烧录啥程序都是一直正在检测中,啥方法都用了,还是烧录不进去程序。希望大家帮帮忙

4cf432446f80236f 2020-07-26 阅读:105

3

回答
驻波比为什么越大越好 单片机综合应用

为什么越大越好,我们怎么把驻波比调试的大一些

yhj416606438 2020-07-26 阅读:66

8

回答

单片机的,资料,教程,价格,哪个是主要原因

一笔之名也 2020-07-25 阅读:111

6

回答

想做个继电器的控制器 单片机收到高电平触发信号后计时60秒 高电平超过60秒 断开继电器 并保持10秒 (10秒内即使触发信号变为低电平继电器也不吸合)如果触发信号在60秒内由高电平变为低电平 继电器保持吸合状态不变 望大神给指点 谢谢

f93d5b9a14c240d7 2020-07-25 阅读:94

3

回答

最近在学习制作电动撑衣杆这个项目,作为单片机新手,找不到关于伸缩杆的硬件与资料,师兄给的意见是类似于消防车云梯那种伸缩结构。

4b705f602a165150 2020-07-25 阅读:98

2

回答

4个按键  K1 K2 K3 K4 其中 K1是开启和暂停键(本来想长按开显示短按启动定时器 新手还没这么去编程),K2 K3 K4 按键每个按键下可以选择工作时长:按一下能切 5分钟 10分钟 15分钟  K2对应一个IO口驱动三极管 K3K4都是一样的(工作时长略微不同而已)。 现在遇到的问题点是, 1.K2选好时间档位,我按下K1开关/暂停 键,正常运行倒计时,时间没到00能正常启动/暂停,到00了选其他时间档位就不能正常启动了倒计时。。。2.K2控制的输出IO口置高,然后其他2个输出口为0但是实际编出来的效果是暂停了 K2控制的IO口还是输出高。。。不同按键单独控制一个IO口 暂停时关闭,启动是打开,思路是有,但是C语音编程就是没效果。。。一直查资料2天了没进展,附上 按键和定时器的编码单片机源程序如下:void Key_Event_Handle()  {                if((K1==0)&&(munite_counts!=0))                                                     {                                                        DelayMS(10);                                                        if(K1==0)                                                        {                                                                while(!K1);                                                                ET0=~ET0;                                                                TR0=~TR0;                                                        /@@*        if((flag==1)&&(TR0==1))                                                                {                                                                        flag=0;                                                                        SONIC=1;                                                                        HEAT=0;                                                                        UV=0;                                                                }                                                                if((flag1==1)&&(TR0==1))                                                                {                                                                        flag1=0;                                                                        SONIC=0;                                                                        HEAT=1;                                                                        UV=0;                                                                }                                                                        if((flag2==1)&&(TR0==1))                                                                {                                                                        flag2=0;                                                                        SONIC=0;                                                                        HEAT=0;                                                                        UV=1;                                                                }        */                                                                }                                                        }                                if(K2==0)                 {                        DelayMS(10);                                 if(K2==0)                                {                                 flag=1;                                        flag1=0;                                        flag2=0;                                                K2num++;                                                           while(!K2);                                                  K3num=0;                                                K4num=0;                                //                ET0=0;                                        //        TR0=0;                                                 if(K2num==1)                                                {                                                        munite_counts=3;                                                        Second_Counts=0;                                                }                                                if(K2num==2)                         //                                                {                                                        munite_counts=10;                                                }                                                if(K2num==3)                 //                                                {                                                        munite_counts=15;                                                }                                                if(K2num==4)                 //                                                {                                                        munite_counts=20;                                                }                                                if(K2num==5)                         //                                                {                                                        K2num=0;                                                        munite_counts=2;                                                }                                        }                                Key_Flag_Idx=0;                                        i=0;                        }                                        if(K3==0)                {                        DelayMS(10);                                  if(K3==0)                                {                                        flag=0;                                        flag1=1;                                        flag2=0;                                                K3num++;                                                         while(!K3);                                                 K2num=0;                                                K4num=0;                                                //ET0=0;                                                //TR0=0;                                                 if(K3num==1)                                                  {                                                        munite_counts=2;                                                        Second_Counts=0;                                                }                                                if(K3num==2)                         //                                                {                                                        munite_counts=10;                                                }                                                if(K3num==3)                 //                                                {                                                        munite_counts=20;                                                }                                                if(K3num==4)                         //                                                {                                                        munite_counts=30;                                                }                                                if(K3num==5)                         //                                                {                                                        K3num=0;                                                        munite_counts=3;                                                }                                }                                Key_Flag_Idx=0;                                i=0;                        }                                                if(K4==0)                         {                        DelayMS(10);                                 if(K4==0)                                {                                        flag=0;                                        flag1=0;                                        flag2=1;                                while(!K4);                                                 K2num=0;                                                K3num=0;                                //ET0=0;                                //TR0=0;                                 munite_counts=1;                                        Second_Counts=0;                                }                                Key_Flag_Idx=0;                                i=0;                        }}void DSY_Refresh() interrupt 1{        TH0=(65536-5000)/256;         TL0=(65536-5000)%256;        i++;        if(i==2)          {                i=0;                Second_Counts++;                                        if(Second_Counts==60)                 {                        Second_Counts=0;                        munite_counts--;                        if(munite_counts==0)                        {                                TR0=0;                        }                }        }}

0de0afb2cda703c1 2020-07-24 阅读:121

4

回答

除了STC的51还有哪些

一笔之名也 2020-07-24 阅读:132

3

回答

是路由器原来系统不好还是有其他原因,还有哪些路由器可以安装openwrt

yhj416606438 2020-07-24 阅读:286

5

回答

如题,电路的设计方面有什么具体的要求

f034452e22d219a4 2020-07-23 阅读:53

7

回答

串口接线,什么时候直连,什么时候要交叉,有没有什么规则

一笔之名也 2020-07-23 阅读:121

3

回答

求问???单片机程序状态寄存器PSW是什么,有什么用,具体第六位F0是如何使用的?具体一些,拜托​

13cb3bd1825d6cfb 2020-07-22 阅读:60

6

回答

单片机的稳压电源怎么设计?求助各位大佬

b379e8923aedd9f3 2020-07-22 阅读:294

4

回答

433Mhz的超再生无线接收模块使用STC15单片机解码,但是接收距离很短只有30cm内才能收到信号。有尝试接天线,效果一样,怎么回事?有什么优化的办法。

夕阳接你 2020-07-21 阅读:99
  • 帮助人数
  • 0
  • 获得赞数
  • 0
  • 一周积分
  • 0

每日任务

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

问题达人换一批

本月问答IC币兑换

排名
用户名
问答积分
可兑换IC币
1
938
20000
2
822
20000
3
710
15000
4
670
15000
5
526
10000
6
496
10000
7
372
8000
8
322
8000
9
322
8000
10
232
6000
11
168
4000
12
126
4000
13
120
4000
14
110
4000
15
88
2000
16
76
2000
17
72
2000
18
70
2000
19
66
2000
20
66
2000
21
62
2000
22
52
2000
23
46
1000
24
44
1000
25
40
1000
26
36
1000
27
36
1000
28
34
1000
29
26
0
< 123 >