51单片机秒表计时10秒
@阙贾967:51单片机做一个10秒倒计时的程序 -
杜嘉18596462982…… C语言 #include<reg51.h> #define uint unsigned int #define uchar unsigned char sbit p27=P2^7;//数码管位选端定义 uchar c,i; //数码管译码表 unsigned char code NumDecode[] = { 0XC0,//;0 0XF9,//;1 0XA4,//;2 0XB0,//;3 0X99,//;4 0X92,//;5 0X...
@阙贾967:急~51单片机10毫秒秒表制作~在线等! -
杜嘉18596462982…… #include unsigned char code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71,0x00 }; unsigned char second; unsigned char keycnt; unsigned int cnt; void main(void) { unsigned char i,j; TMOD=0...
@阙贾967:51单片机:写一个10s的秒表程序,用一个按键分别控制秒表启动、停止、清零.(要求:使用定时器1定时,定时20中断一次)问题就在开关上,谁能给我说怎么处理 最好有代码 10 -
杜嘉18596462982…… 设立一个标志变量,初始化时,变量=0.定时器中断函数写成若标志变量为1则time++启动过程:扫描按键,若扫到,去抖延时,若扫到,标志变量取反.停止过程:同上.清零:扫描按键,若扫到,去抖延时,若扫到,且标志变量为0(停止状态),再循环扫描按键几个来回,具体时间可以用for来控制,目的就是实现一个长按清零.直接求代码很无聊,要自己写出来,做出来,才能体会到成功的酸爽.难点在长按与短按的区分,加油.
@阙贾967:如何用51单片机4HZ中断定时十秒 -
杜嘉18596462982…… 4HZ=4次/秒4*10=40次.250毫秒中断40次就是10秒.
@阙贾967:51单片机做10秒倒计时题 精确到0.01秒 -
杜嘉18596462982…… 很简单的,就是配置定时器,精度可配置定时器的溢出时间
@阙贾967:设MCS - 51单片机主频为12MHZ,编写一个延时10秒的程序 -
杜嘉18596462982…… void timer0() interrupt 1 { uchar count; TH0 = (65536-50000)/256; TL0 = (65536-50000)%6; count++; if(count == 20) { count = 0; sec++; if(sec == 100) { sec = 0; } } }
@阙贾967:用51单片机做秒表,按键按下停止计时,再按一次接着计时 -
杜嘉18596462982…… 让定时器停止计时,只要TRx = 0这句就行,要让它继续,再TRx = 1; 例如,我的按键是P0.0,按一下停止,按一下继续,用定时器0,可以这样写: if(P0_0 == 0) { TR0 = ~TR0; while(P0_0 == 0); } 我只是提供个例子,实际运用中按键要记得加滤波
@阙贾967:51单片机,用汇编语言编写程序,10秒内对外部脉冲进行计数,并数出外部脉冲频率.求高手编写程序. -
杜嘉18596462982…… ORG 0000H LJMP MAIN ORG 000BH LJMP T0ISR ORG 0030H MAIN: MOV TMOD,#51H MOV TH0,#HIGH(65536-50000) MOV TL0,#LOW(65536-50000) MOV TH1,#0 MOV TL1,#0 SETB TR0 SETB TR1 SETB ET0 SETB EA CLR A MOV R2,#0...
@阙贾967:用51单片机做定时器,时间显示在数码管上,要求有秒钟十秒钟分钟十分钟,四个数码管,程序一开始就直接 -
杜嘉18596462982…… ............这不是最简单的吗?用单片机的定时器设置成50ms中断一次,然后20次就是1秒,秒到了60,然后把秒变成0,分钟加1,数码管你看看是用什么控制138加595,还是数码管芯片直接驱动
@阙贾967:单片机秒表功能设计 -
杜嘉18596462982…… 采用51的单片机即可实现.用定时器计时,每秒进位,输出到LED数码管上显示即可.利用一个外部中断,按键决定何时显示秒和分(也可在LED上同时显示分和秒).
杜嘉18596462982…… C语言 #include<reg51.h> #define uint unsigned int #define uchar unsigned char sbit p27=P2^7;//数码管位选端定义 uchar c,i; //数码管译码表 unsigned char code NumDecode[] = { 0XC0,//;0 0XF9,//;1 0XA4,//;2 0XB0,//;3 0X99,//;4 0X92,//;5 0X...
@阙贾967:急~51单片机10毫秒秒表制作~在线等! -
杜嘉18596462982…… #include unsigned char code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71,0x00 }; unsigned char second; unsigned char keycnt; unsigned int cnt; void main(void) { unsigned char i,j; TMOD=0...
@阙贾967:51单片机:写一个10s的秒表程序,用一个按键分别控制秒表启动、停止、清零.(要求:使用定时器1定时,定时20中断一次)问题就在开关上,谁能给我说怎么处理 最好有代码 10 -
杜嘉18596462982…… 设立一个标志变量,初始化时,变量=0.定时器中断函数写成若标志变量为1则time++启动过程:扫描按键,若扫到,去抖延时,若扫到,标志变量取反.停止过程:同上.清零:扫描按键,若扫到,去抖延时,若扫到,且标志变量为0(停止状态),再循环扫描按键几个来回,具体时间可以用for来控制,目的就是实现一个长按清零.直接求代码很无聊,要自己写出来,做出来,才能体会到成功的酸爽.难点在长按与短按的区分,加油.
@阙贾967:如何用51单片机4HZ中断定时十秒 -
杜嘉18596462982…… 4HZ=4次/秒4*10=40次.250毫秒中断40次就是10秒.
@阙贾967:51单片机做10秒倒计时题 精确到0.01秒 -
杜嘉18596462982…… 很简单的,就是配置定时器,精度可配置定时器的溢出时间
@阙贾967:设MCS - 51单片机主频为12MHZ,编写一个延时10秒的程序 -
杜嘉18596462982…… void timer0() interrupt 1 { uchar count; TH0 = (65536-50000)/256; TL0 = (65536-50000)%6; count++; if(count == 20) { count = 0; sec++; if(sec == 100) { sec = 0; } } }
@阙贾967:用51单片机做秒表,按键按下停止计时,再按一次接着计时 -
杜嘉18596462982…… 让定时器停止计时,只要TRx = 0这句就行,要让它继续,再TRx = 1; 例如,我的按键是P0.0,按一下停止,按一下继续,用定时器0,可以这样写: if(P0_0 == 0) { TR0 = ~TR0; while(P0_0 == 0); } 我只是提供个例子,实际运用中按键要记得加滤波
@阙贾967:51单片机,用汇编语言编写程序,10秒内对外部脉冲进行计数,并数出外部脉冲频率.求高手编写程序. -
杜嘉18596462982…… ORG 0000H LJMP MAIN ORG 000BH LJMP T0ISR ORG 0030H MAIN: MOV TMOD,#51H MOV TH0,#HIGH(65536-50000) MOV TL0,#LOW(65536-50000) MOV TH1,#0 MOV TL1,#0 SETB TR0 SETB TR1 SETB ET0 SETB EA CLR A MOV R2,#0...
@阙贾967:用51单片机做定时器,时间显示在数码管上,要求有秒钟十秒钟分钟十分钟,四个数码管,程序一开始就直接 -
杜嘉18596462982…… ............这不是最简单的吗?用单片机的定时器设置成50ms中断一次,然后20次就是1秒,秒到了60,然后把秒变成0,分钟加1,数码管你看看是用什么控制138加595,还是数码管芯片直接驱动
@阙贾967:单片机秒表功能设计 -
杜嘉18596462982…… 采用51的单片机即可实现.用定时器计时,每秒进位,输出到LED数码管上显示即可.利用一个外部中断,按键决定何时显示秒和分(也可在LED上同时显示分和秒).