c51单片机秒表计时程序
用汇编语言编写一个51单片机程序,实现电子秒表功能
;=== ;功能:本程序实现P0口的对数码管动态显示秒表的分、秒、1\/100秒;; 计时程序由中断服务程序实现,采用定时计数器T0工作方式1;; P2口实现对数码管的片选功能 ;=== ;===初始化===
51单片机按键分别控制数码管显示精度为秒,十分秒,百分秒的秒表程序
\/\/用51单片机设计3位led数码显示管作秒表 include "STC12C54.H"define uchar unsigned char define uint unsigned int define dataport P1\/\/P1直接驱动数码管的8个阳极 sbit wei1=P3^3;\/\/再有三个管脚接3个三极管驱动数码管的阴极 sbit wei2=P3^4;sbit wei3=P3^5;sbit key1=P2^0;\/\/根据...
利用51单片机动态显示0-60秒表
key = 1;} } if(key == 1) TR0 = 1;\/\/开始计时 else if(key == 2) TR0 = 0;\/\/停止 else s = 0;} } void time0() interrupt 1 \/\/内部中断 { TH0 = (65536 - 10000) \/ 256;TL0 = (65536 - 10000) % 256;s++;if(s == 10000) s = 0;} ...
用51单片机制作倒计时秒表需要什么元件,麻烦列个清单。新手刚刚开始学...
至少需要:1、单片机--1 2、30p电容--2 3、12M晶振--1 4、10u电容--1 5、8.2K电阻--1 6、按钮开关--1 7、数码管组--1(4个数码管)8、8电阻排--1 9、辅料(导线、焊锡等)
51单片机 秒表设计
\/\/ 51单片机 秒表,显示时间为0000—9999秒,启动、停止,(停止后再次启动复位)include<reg52.h> define uint unsigned int define uchar unsigned char uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchar bai,shi;uint...
用51单片机制作倒计时秒表需要什么元件,麻烦列个清单。新手刚刚开始学...
电脑一台,89cs51单片机一片,12MHZ晶振一支,电阻,电容,三极管,七段数码管及驱动芯片,面包板,5V直流电源,导线,电烙铁,带松香焊锡丝,单片机烧录器及驱动软件,单片机程序编写软件。
利用51单片机,6个数码管设计一秒表。要求:刚开始时间为12点(120000...
include<reg52.h> include<intrins.h> define uchar unsigned char define uint unsigned int define show P2 code table[16]= { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 };code tuble[9]= { 0x00,0x7f,0xbf,0xdf,0xef,0xf7,0x...
51单片机设计一个秒表,用两个数码管(任意相邻的两个)显示。
ORG 0000H JMP BEGIN ORG000BH LJMPT0INT ORG001BH LJMPT1INT LEDDEQU30H LEDCEQU 36H SECCEQU 37H TCNTEQU 3AH ORG 0030H ;--- TABLE: ; 共阴极数码管显示代码表 DB 0FCH;"0"00H DB 60H;"1"01H DB 0DAH;"2"02H DB 0F2H;"3"03H DB 66H;"4"04H DB 0B6H;"5"...
用51单片机做秒表,按键按下停止计时,再按一次接着计时
include <reg51.h> include <intrins.h> unsigned char data dis_digit;unsigned char key_s, key_v;unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0, \/\/ 0, 1, 2, 3 0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};\/\/ 4, 5, 6, 7, 8, 9, off unsigned char dis_buf[...
如何用51单片机用单数码管做9s的简易秒表?
假设P0接数码管,程序如下:include<reg52.h> define uchar unsigned char define uint unsigned int uchar a=0;uchar b=9;\/\/共阴数码管七段码 uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77};void delay(uchar aa)\/\/延时子程序 { uchar bb,cc;fo...
卓资县卡托回答: ; P0段选 ,P2.0个位位选,P2.1十位位选 .共阳数码管 16M晶振. STRT EQU P2.5 STP EQU P2.6 CLRR EQU P2.7 ORG 00H AJMP MAIN ORG 0BH AJMP T0INT ORG 30H MAIN: MOV R0,#20 MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0...
佘映17588435505问: C51单片机计时器50ms程序编写 - ?
卓资县卡托回答: 12MHz晶振,经典51核是12分频,因此时钟周期为1μs. 50ms = 50000μs,因此定时器累加至溢出需要50000个周期. 因此65536 - 50000 = 15536 = 0x3CB0 因此TH0 = 0x3C,TL0 = 0xB0. 0x4C00这个初值对应的不是12MHz晶振,*而是11.0592MHz晶振.你抄错了.
佘映17588435505问: 用51单片机做秒表,按键按下停止计时,再按一次接着计时 - ?
卓资县卡托回答: 让定时器停止计时,只要TRx = 0这句就行,要让它继续,再TRx = 1; 例如,我的按键是P0.0,按一下停止,按一下继续,用定时器0,可以这样写:if(P0_0 == 0) {TR0 = ~TR0;while(P0_0 == 0); } 我只是提供个例子,实际运用中按键要记得加滤波
佘映17588435505问: 老师让做一个C51单片机的99 - 00秒的左一左二倒计时的 计时器,要求自动往下走程序,请教下,该如何设计程序呢??
卓资县卡托回答: 51的话 使用数码管显示时间吧 那就段选开两位 二重循环 大循环打开十位位选,然后设置十位数字,关闭位选; 小循环打开个位位选,给个位数字,然后关闭个位位选;然后延时一秒钟; 延时要是精准的话用时钟频率写,要求不高的话用个循环 拖延一点时间; 除了修改数码管之外,整个程序就是小循环执行10次到0时,十位减一; 具体段选、位选 对应哪个I/O口 看你自己的单片机带文档查一下
佘映17588435505问: 单片机的秒表设计的程序 - ?
卓资县卡托回答: 这个程序本身思路都已经非常清晰了呀,主要就是再把流程优化下即可了.定时器T0只负责产生秒信号,用两个计数单元来计数需要显示的内容,在低位秒信号满100后清零同时把高位单元加一,还有就是对按键的处理和显示的处理问题上,比如两个键同时按下如何处理,显示是用锁位来实现,还是不停的动态扫描实现等等
佘映17588435505问: 用c语言编写程序,用于c51单片机四位共阴数码管显示,显示分秒的计时器. - ?
卓资县卡托回答: 用proteus做的时钟 可以显示年月日时分秒 可调整时间 有图*/#includereg52.h>#defineuchar unsigned char#define uint unsigned int#define timh 0xee#define timl 0x00 sbit K1=P1^0; sbit K2=P1^1; sbit K3=P1^2; sbit K4=P1^3; sbit K5=P1^4; sbit K...
佘映17588435505问: 求c51单片机电子钟程序(c语言) - ?
卓资县卡托回答: 以下是四位数码管可调时带秒闪烁的c51单片机电子钟程序(c语言)./**** 本程序中,晶振为12MHz, ****//**** 时间控制采用定时中断控制方式. ****//**** 模式和时间调整采用查询方式. ****/#include<reg52.h> sbit P20=P2^0; //分个位控制端 ...
佘映17588435505问: C51 单片机汇编程序制作时钟?
卓资县卡托回答: 包含小时,可直接注释掉小时显示部分. ORG 0000H SJMP MAIN ORG 000BH AJMP TIMER0 ORG 0030H MAIN: MOV DPTR,#TABLE MOV P0,#0ffh MOV R0,#0 MOV R1,#0 MOV R2,#200 MOV R3,#50 MOV R4,#0 MOV R5,#0 MOV R6,#0 ...
佘映17588435505问: c51单片机时钟电路程序 - ?
卓资县卡托回答: void Delay_100us() //100us延时 { unsigned char i; for(i=0;i<100;i++) _nop_(); } void Delay_10ms() //10ms延时 { unsigned char i; for(i=0;i<100;i++) Delay_100us(); if(endkey==1) // yanshi=0; } void Delay_1s() //1s延时 { unsigned char i; for(i=0;i<100;i++) Delay_10ms(); }
佘映17588435505问: c51单片机计算一个循环所需时间 - ?
卓资县卡托回答: 是的,C语言虽写着简单,但不便于计算运行时间. 如果知道单片机的晶振频率,可以利用定时器,定时1ms或10ms中断一次(频繁中断对运行有影响,但定时时间长,则显示结果粗糙),每次中断计数器变量加1,循环终了用数码管显示出计数器变量的值即可知一个循环所花费的时间 如果不知道晶振频率或定时器被占用,可以设定流水灯循环100次或500次后,蜂鸣器响或某一指示灯亮,然后用秒表计时即可 还可以用软件仿真的方法来获得运行时间