中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

单片机论坛

抖音 德嘉 泓格论坛 FLIR红外热像论坛
工控论坛首页 单片机论坛 → 浏览主题: 自己亲手编写的单片机数码管时钟c程序
发表新帖 回复该主题
回帖:11个,阅读:2122 [上一页] [1] [2] [下一页]
* 帖子主题:

自己亲手编写的单片机数码管时钟c程序

分享到
718
h661005
文章数:139
年度积分:50
历史总积分:718
注册时间:2010/5/28
发站内信
发表于:2010/8/14 15:04:44
#0楼
交代一下前提,本人对单片机的兴趣由来已久,但是一直没什么突破。一直停留在定时和中断前的水平。这几天潜心修炼,看视频看电子书,终于搞出一个来让我兴奋的时钟程序。(我是低手,高手不要鄙视啊)
数码管的断选是p0,位选是p2,共八个。开机显示12-00-00然后计时。简单的没有其他功能的。
#include
#define uchar unsigned char
#define uint unsigned int
unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};//共阳极数码管0123456789-
uchar count,second,minute,hour=12;
void delay1ms(uint z)//郭天祥视频里德1ms延时程序
{
uint x,y;
{
 for(x=z;x>0;x--)
 {
  for(y=110;y>0;y--);
 }
}
}
void t0() interrupt 1 //定时器0
{
th0=(65536-50000)/256;
tl0=(65536-50000)%256;
count++;
if(count==20)
{
 count=0;
 second++;
 if(second==60)
 {
  second=0;
  minute++;
  if(minute==60)
  {
   minute=0;
   hour++;
   if(hour==24)
   {
    hour=0;
   }
  }
 }
}
}
void main()
{
tmod=0x01;
th0=(65536-50000)/256;
tl0=(65536-50000)%256;
et0=1;
tr0=1;
ea=1;
while(1)
{
p2=0xff;
p2=0x7f;
p0=table[second%10];
delay1ms(2);
p2=0xbf;
p0=table[second/10];
delay1ms(2);
p2=0xdf;
p0=table[10];
delay1ms(2);
p2=0xef;
p0=table[minute%10];
delay1ms(2);
p2=0xf7;
p0=table[minute/10];
delay1ms(2);
p2=0xfb;
p0=table[10];
delay1ms(2);
p2=0xfd;
p0=table[hour%10];
delay1ms(2);
p2=0xfe;
p0=table[hour/10];
delay1ms(2);
}
}
显示的结果就是从12点开始走表。虽然最最简单的程序,但是还是对我有不小的鼓舞,哈哈。
----------------------------------------------
此篇文章从博客转发
原文地址: Http://blog.gkong.com/more.asp?id=121286&Name=h661005
20507
qlin 版主
文章数:6715
年度积分:50
历史总积分:20507
注册时间:2006/2/20
发站内信
2018论坛优秀版主
2017论坛优秀版主
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
2013论坛优秀版主
2012论坛优秀版主
2011论坛贡献奖
2010年论坛优秀版主
发表于:2010/8/14 17:46:35
#1楼
自己动手试验,比看书强多了;
首先试验,多是从简单的开始;
一旦成功,自己会非常高兴!



欢迎您支持 “中华工控网” 论坛  http://bbs.gkong.com/    “电工技术”版块
————
本人技术久已荒置,不便参与技术讨论、更无法答疑,只能一旁看看,偶尔可能提示一下队形、以示存在感……
各位见谅,谢了!   20170501启
700
zhang327319
文章数:5
年度积分:50
历史总积分:700
注册时间:2010/8/15
发站内信
发表于:2010/8/15 9:02:42
#2楼
可以啊,我也最近在学,有机会交流下
17521
ahljj
文章数:3386
年度积分:233
历史总积分:17521
注册时间:2002/3/23
发站内信
发表于:2012/3/23 15:18:37
#3楼
动手试验
600
netic
文章数:9
年度积分:50
历史总积分:600
注册时间:2012/3/11
发站内信
发表于:2012/3/31 21:24:54
#4楼
看看啊表情
609
清风明月张
文章数:1
年度积分:50
历史总积分:609
注册时间:2012/4/3
发站内信
发表于:2012/4/3 22:34:14
#5楼
挺好的,继续努力
1043
LKEMIN
文章数:39
年度积分:50
历史总积分:1043
注册时间:2008/3/10
发站内信
发表于:2013/12/30 21:53:44
#6楼
自己动手试验,比看书强多了;
首先试验,多是从简单的开始;
一旦成功,自己会非常高兴!
648
1137888379
文章数:8
年度积分:50
历史总积分:648
注册时间:2014/3/6
发站内信
发表于:2014/7/28 8:09:05
#7楼
不错,好的,
此帖发自手机工控论坛
4991
sbkkan
文章数:302
年度积分:50
历史总积分:4991
注册时间:2011/8/5
发站内信
发表于:2014/9/2 13:28:37
#8楼
楼主的程序,肯定是复制下来的吧,这程序能编译通过?
854
maquanhu
文章数:12
年度积分:50
历史总积分:854
注册时间:2014/3/25
发站内信
发表于:2014/10/1 19:23:02
#9楼
“断选”应该是“段选”,
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

124.8008