51单片机秒表计时,四位数码管显示。上电前显示00.00,一共2个按键,一个启动停止,另一个清零功能,60秒后自动归零,程序可自行修改。
原理图
程序
#include
#define uchar unsigned char
#define uint unsigned int
void delay(uint c);
#define dula p22
#define wela p23
void keycan();
void init();
void display();
uchar table[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71};uint num,dis,n;
uint ms=0;
uint sec=0;
void main()
{
init();tr0=0;while(1){display(); keycan();}}
void init()
{
tmod=0x01;
th0=(65536-10000)/256;tl0=(65536-10000)%256;ea=1;et0=1;tr0=1;ex0=1;it0=1;}
void time0() interrupt 1
{
th0=(65536-10000)/256;tl0=(65536-10000)%256;ms++;if(ms==100){ ms=0; sec++; if(sec==60) { sec=0; tr0=0; }}}
void keycan()
{
if(p10==0) { delay(5); if(p10==0) { while(!p10); tr0=~tr0; } } if(p11==0) { delay(5); if(p11==0) { while(!p11); sec=0; ms=0; } }}void display()
{
wela=1; p0=0xfe; wela=0; p0=0; dula=1; p0=table[sec/10]; dula=0; delay(5); wela=1; p0=0xfd; wela=0; p0=0; dula=1; p0=table[sec%10]|0x80; dula=0; delay(5); wela=1; p0=0xfb; wela=0; p0=0; dula=1; p0=table[ms/10]; dula=0; delay(5); wela=1; p0=0xf7; wela=0; p0=0; dula=1; p0=table[ms%10]; dula=0; delay(5);}
void delay(uint c)
{
uint a,b;for(a=c;a >0;a--)for(b=115;b >0;b--);}
全差分可编高速放大器LMH6881的主要特性和典型应用电路分析
苹果官方上架翻新iPhone6S/6S Plus 最低3000元起并提供保修服务
索尼PSVita游戏掌机将停止生产和出货,将永远离我们而去了
LG计划明年发布LG G7,将首次带来屏下指纹解锁
粒子加速器的加速原理是啥呢?
基于51单片机秒表计时
磁敏二极管构成的磁场检测电路
摩根大通报告:台积电最快2024年2纳米可量产
矩形平面阵列天线旁瓣电平优化的遗传算法
AEC-Q200车用额定功率电阻
11月18日就到期了,美国商务部对华为临时许可或延长
IDC与您携手奏响数字化优先的和谐乐章
宝马8系究竟是6系的继承者还是傀儡?
什么是嵌入式命令行交互工具
联想手机销量大跌31% 杨元庆:下半年表现料改善
AS5950集成式X射线探测器芯片进一步降低CT扫描仪的成本
比特币突破3.7万美元再创新高
什么是骨传导耳机?骨传导耳机有必要买吗
技术趋势和坚固耐用的MicroTCA
VCO的架构设计