历史上的今天
返回首页

历史上的今天

今天是:2024年10月10日(星期四)

正在发生

2018年10月10日 | 单片机C语言程序设计:10s的秒表

2018-10-10 来源:21ic

#include


#define uchar unsigned char


#define uint unsigned int


sbit K1=P3^7;


uchar


i,Second_Counts,Key_Flag_Idx;


bit Key_State;


uchar

 

DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};


//延时


void DelayMS(uint ms)


{


uchar t;


while(ms--) for(t=0;t<120;t );


}


//处理按键事件


void Key_Event_Handle()


{


if(Key_State==0)


{


Key_Flag_Idx=(Key_Flag_Idx 1)%3;


switch(Key_Flag_Idx)


{


case 1:EA=1;ET0=1;TR0=1;break;


case 2:EA=0;ET0=0;TR0=0;break;


case 0:P0=0x3f;P2=0x3f;i=0;Second_Counts=0;


}


}


}


//主程序


void main()


{

 

P0=0x3f; //显示 00


P2=0x3f;


i=0;


Second_Counts=0;


Key_Flag_Idx=0; //按键次数(取值 0,1,2,3)


Key_State=1; //按键状态

 


TMOD=0x01; //定时器 0 方式 1

 


TH0=(65536-50000)/256; //定时器 0:15ms


TL0=(65536-50000)%6;


while(1)


{


if(Key_State!=K1)


{


DelayMS(10);


Key_State=K1;


Key_Event_Handle();


}


}


}

 


/T0 中断函数


void DSY_Refresh() interrupt 1


{


TH0=(65536-50000)/256; //恢复定时器 0 初值


TL0=(65536-50000)%6;


if( i==2)

 

{


i=0;


Second_Counts ; //50ms*2=0.1s 转换状态


P0=DSY_CODE[Second_Counts/10];


P2=DSY_CODE[Second_Counts];


if(Second_Counts==100) Second_Counts=0; //满 100(10s)后显示 00


}


}

 

单片机C语言程序设计:10s的秒表


推荐阅读

史海拾趣

Grayhill公司的发展小趣事
使用万用表等工具测量电路的输出电压和电流,确保它们符合设计要求。
EM Devices Corporation公司的发展小趣事

EM Devices Corporation的创始人在电子工程领域有着深厚的背景,他们看到了当时市场上对高性能电子元件的迫切需求。于是,他们决定创办EM Devices Corporation,专注于研发和生产高质量的电子元件。起初,公司面临了资金、技术和市场等多方面的挑战。然而,凭借创始人对技术的执着追求和对市场的敏锐洞察,公司成功研发出了一款具有竞争力的产品,并逐渐在市场上获得了认可。

FDI [Future Designs , Inc.]公司的发展小趣事

随着环保意识的提高,电子产品的绿色环保问题日益受到关注。FDI公司积极响应这一趋势,投入大量资源研发绿色电子产品。公司采用环保材料和生产工艺,推出了一系列符合国际环保标准的电子产品。这些产品不仅具有优良的性能和品质,而且对环境友好,深受消费者的喜爱。

DALLAS公司的发展小趣事

随着全球电子市场的不断扩大和变化,Dallas公司积极实施全球化战略布局。公司在全球范围内设立研发中心和生产基地,以便更好地服务全球客户。同时,Dallas公司还加强与国际知名企业的合作与交流,共同推动半导体技术的创新和应用。这种全球化战略布局不仅增强了Dallas公司的国际竞争力,也为公司的长期发展提供了广阔的空间。

星海公司的发展小趣事

面对数字化时代的挑战和机遇,星海公司开始积极推进数字化转型。公司引入先进的生产管理系统和数字化营销手段,提高生产效率和市场响应速度。同时,星海公司还积极探索新的商业模式和合作方式,以适应不断变化的市场需求。展望未来,星海公司将继续秉承“质量为本、创新为魂”的发展理念,致力于成为全球领先的乐器制造商和音乐教育服务提供商。

Ho Chien Electronics Group Inc公司的发展小趣事

除了钢琴制造,星海公司还积极拓展多元化业务。公司下设多个分厂和子公司,涉及西管乐器、民族乐器、打击乐器、电声乐器和乐器配件等多个领域。此外,星海公司还积极打造音乐教育板块,成立钢琴培训学校,为音乐爱好者提供优质的教育资源。通过多元化发展,星海公司逐渐形成了完整的产业链和强大的品牌影响力。

问答坊 | AI 解惑

无形的屏幕

哇,我的电脑屏幕隐形了,成透明的了,这...这...怎么可能?淡定淡定,这不是灵异事件,奥秘来自于墙纸...厌倦了常规的墙纸当屏幕背景,那就看一下这一组怪异墙纸,它们会让你的屏幕变无形。但是事实是,屏幕还在,只不过是视觉欺骗了我们的感觉。 ...…

查看全部问答>

有人知道用920T的盒做个ARM9的板子,大约要多少钱吗?

有人知道用920T的盒做个ARM9的板子,大约要多少钱吗?芯片在哪买?…

查看全部问答>

能否根据windows驱动程序(release bin)编写linux驱动

有没有可能通过反编译等方式生成一个linux驱动 有没有捷径可以走…

查看全部问答>

请教一个简单的C51程序,

#include main() {         TMOD=0X10;         TH1=0XFE;         TL1=0X0C;         TR1=1;         ET1=1;       ...…

查看全部问答>

wince下调用软键盘的问题

在wince下调用软键盘,代码如下 void CRecorderDlg::OnBnClickedButton6() {         // TODO: Add your control notification handler code here         SipShowIM(SIPF_ON);  //Shows&nb ...…

查看全部问答>

在wince 下怎么能读取 一个像素 alpha 通道的值

我想把一个带 透明通道的bitmap作为前景贴到一个不带透明通道的背景bitmap上,试了几种方法 都不理想,包括 TransparentBlt(...),alphablend(...),还使用过maskdc 的方法,都不理想。 前两种方法把我的小的前景,拉伸到跟背景一样大;而且Transpa ...…

查看全部问答>

发个清华蓬远地取模软件

前几天取汉字模从网上下个软件,不太好,就因为取然的格式带H地,我要C语言数组地,以前用过清华蓬远的取模软件,我认为是最好地,今天翻出特发上来,大家共享,我也MARK,省得以后再找不到,呵呵…

查看全部问答>

一个晶振引发的问题

本来是51好板,就是CPU座松了,让同事搞一下变紧,拿回来突然不好用,仿真器上也不好用,本来屏幕可显开机画面,但怎么也搞不定,由于急有找了另一台机器总算把程序实验完,第二天对着这个坏板研究起来,首先是换51的40脚DIP座,小心得很,因为板上 ...…

查看全部问答>

菜农友情为STM32设计一种通用加密方法之原理

今天连续看了两篇关于加密方面的帖子,感觉自己应该友情奉献一回了~~~ 设想一种加密办法,大家看看可行吗? 关于STM32F器件电子签名以及加密问题-请指点 今日方知STM32的UID为96位即12个字节,以前知道STM32内嵌CRC32. 网上在线CRC演算工 ...…

查看全部问答>

急求一个实际应用中的反向比例运算放大电路

简要说明一下放大电路的原理和作用…

查看全部问答>