久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網(wǎng) >> MCU設計實例 >> 瀏覽文章

數(shù)碼管計時器程序

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2013年11月16日   【字體:

這是一個51hei網(wǎng)友測試通過的計時器程序、電路很簡單就不畫了數(shù)碼管的段選是P0口位選是P1口

#include <reg52.h>
typedef unsigned char uint8;
typedef unsigned int uint16;
typedef unsigned long uint32;
code uint8 number[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83, 0xa7,0xa1,0x86,0x8e};       //數(shù)字0到F
uint16 counter = 0;                                                              //定義計數(shù)器初始化
uint8 a[6];                                                                            //六個數(shù)碼管
sbit ENLED = P1^4;
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
void timer1_led()
{
 TMOD |= 0x10;                                                                    //寄存器狀態(tài)M0位置1,或運算
 TMOD &= 0xDF;
 TH1 = 0xFC;                                                                       //12*(65535-x)/11059200 =1s
 TL1 = 0x67;
 TR1 = 1;                                                                           //定時器置1打開,計數(shù)器開始計時
}
void int_init()
{
 ET1 = 1;                                                                             // 打開定時器1溢出中斷使能置1
 EA = 1;                                                                               //總閥門打開
}
 refresh_led()
{
 static uint8 j = 0;                                                                //靜態(tài)變量刷新
  switch(j)
  {
   case 0:ADDR0 = 0;ADDR1 = 0;ADDR2 = 0;j++;P0 = number[a[0]];break;
   case 1:ADDR0 = 1;ADDR1 = 0;ADDR2 = 0;j++;P0 = number[a[1]];break;
   case 2:ADDR0 = 0;ADDR1 = 1;ADDR2 = 0;j++;P0 = number[a[2]];break;
   case 3:ADDR0 = 1;ADDR1 = 1;ADDR2 = 0;j++;P0 = number[a[3]];break;
   case 4:ADDR0 = 0;ADDR1 = 0;ADDR2 = 1;j++;P0 = number[a[4]];break;
   case 5:ADDR0 = 1;ADDR1 = 0;ADDR2 = 1;j = 0;P0 = number[a[5]];break;
   default :break;
  }
}
main()
{
 ENLED = 0;ADDR3 = 1;                                                                 //138譯碼器使能
 timer1_led();                                                                                 //定時初始化
 int_init();
 while(1);
}
void interrupt_timer1() interrupt 3                                                //中斷函數(shù)
{
 static uint32 sec=0;                                                                     //定義變量
 TH1 = 0xFC;
 TL1 = 0x67;
 counter++;
if(1000==counter)                                                                     
{
 sec++;
 counter=0;
 a[0] = sec%10;                                                                         //個位數(shù)取余
 a[1] = sec/10%10;                                                                    //十位取余
 a[2] = sec/100%10;                                                                  //百位取余
 a[3] = sec/1000%10;                                                                //...............
 a[4] = sec/10000%10;
 a[5] = sec/100000%10;
}
 refresh_led();
}
             

關閉窗口

相關文章

主站蜘蛛池模板: 四虎影院在线观看av | 99re国产精品 | 一区二区三区欧美大片 | 欧美专区日韩专区 | 久久亚洲一区二区三区四区 | 亚洲一区二区三区在线视频 | 欧美久久精品 | 国产高清在线精品 | 免费在线观看91 | 国产日韩精品一区 | 欧美极品少妇xxxxⅹ免费视频 | 一区二区三区视频在线观看 | 亚洲午夜av | a欧美| 日韩在线小视频 | 成人高清在线视频 | 九色av | 亚洲一区二区电影在线观看 | 国产高清视频在线 | 青青草综合 | www.888www看片| 国产一在线 | 欧美在线视频一区二区 | 精品一区二区不卡 | 日韩视频精品在线 | 成人毛片视频免费 | 日本福利片 | 亚洲三级国产 | 国产日韩一区 | 99精品视频在线观看免费播放 | 国产999精品久久久 日本视频一区二区三区 | 欧美一区二区三区在线观看 | 中文字幕一区二区视频 | 成年免费大片黄在线观看一级 | 欧美成人久久 | 午夜成人免费视频 | 婷婷亚洲综合 | 亚洲福利在线观看 | 久久久久成人精品亚洲国产 | 国产va| 黄页网址在线观看 |