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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4340|回復: 0
打印 上一主題 下一主題
收起左側

sTC15w201單片機芯片時鐘程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:282065 發表于 2018-10-19 07:05 來自手機 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式


/***********四位共陰數碼管驅動程序************/
#include <STC15F2K60S2.H>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int

sbit H1        = P3^2;//設置第1位數碼管陽極連接的I/O口
sbit H2        = P3^7;//設置第2位數碼管陽極連接的I/O口
sbit H3        = P1^0;//設置第3位數碼管陽極連接的I/O口
sbit H4        = P1^2;//設置第4位數碼管陽極連接的I/O口
sbit key1=P3^1;
sbit key2=P3^0;        
sbit a        = P3^3;
sbit b        = P1^1;
sbit c        = P1^4;
sbit d        = P5^4;
sbit e        = P5^5;
sbit f        = P3^6;
sbit g        = P1^3;
sbit h        = P1^5;
unsigned char int_time ; //中斷次數計數變量
unsigned char second;    //秒計數變量
unsigned char minute;    //分鐘計數變量
unsigned char hour;     //小時計數變量

/*********************************************************************************************/
unsigned char code disdata[]={
0x01,0x02,0x04,0x08,0x10,
0x12,0x14,0x16,0x18,0x20,

};//0-9,A-F,-



void Delay10us()                //@11.0592MHz
{
        unsigned char i;

        _nop_();
        i = 25;
        while (--i);
}


void Delay10ms()                //@11.0592MHz
{
        unsigned char i, j;

        i = 108;
        j = 145;
        do
        {
                while (--j);
        } while (--i);
}



/*********************************************************************************************/
void displayHH1 (unsigned char q){ //第1位數碼管顯示程序
        switch(q)
{        case 0x01:{
                   a=b=c=d=e=f=0;g=h=1;} ; break; //0
    case 0x02:{
                        b=c=0;a =d=e=f=g=h=1;};        break; //1
        case 0x04:{
                       a=b=g=d=e=0;c=f=h=1;};        break; //2
        case 0x08:{
                       a=b=c=d=g=0;e=f=h=1;};        break; //3
        case 0x10:{
                       b=c=f=g=0;a=d=e=h=1;};        break; //4

        case 0x12:{
                       a=c=d=f=g=0;b=e=h=1;};        break; //5
        case 0x14:{
                       a=c=d=e=f=g=0;b=h=1;};        break;//6
        case 0x16:{
                       a=b=c=0;d=e=f=g=h=1;};        break;//7
        case 0x18:{
                       a=b=c=d=e=f=g=0;h=1;};        break; //8
    case 0x20:{
                       a=b=c=d=f=g=0;e=h=1;};        break; //9
}
}
void xian( uint num,uint num1)
{            
      displayHH1 (disdata[num/10]); H1=1;Delay10us()        ;H1=0;
      displayHH1 (disdata[num%10]);  H2=1;Delay10us()        ;H2=0;
          displayHH1 (disdata[num1/10]); H3=1;Delay10us()        ;H3=0;
          displayHH1 (disdata[num1%10]); H4=1;Delay10us()        ;H4=0;
}

void main()
{        
        P5M1=0x00;
                P5M0=0xff;
        P3M1=0x00;
                P3M0=0xff;
                P1M0=0xff;
                P1M1=0x00;
                 TMOD=0x00;             //使用定時器T0               
                        EA=1;                  //開中斷總允許
                        ET0=1;                 //允許T0中斷
                        TH0=(65536-50000)/256;  //定時器高八位賦初值
                        TL0=(65536-50000)%256;  //定時器低八位賦初值
                        TR0=1;
                        int_time=0;    //中斷計數變量初始化
                        second=0;      //秒計數變量初始化
                        minute=0;     //分鐘計數變量初始化
                        hour=12;                       //小時計數變量初始化
        while(1){  
                              
                           xian( hour,minute);
                if(key1==0)
                   {         
               
                        if(key1==0)
                        if(++minute==60)minute=0;   
                         while(!key1);        
                    }
                        
                if(key2==0)
                   {   
                        
                        if(key2==0);
                        
                        if(++hour==13)hour=1;
                         while(!key2) ;
                    }
                         }                 
}
void interserve(void ) interrupt 1 using 1  //using Time0
  {
       int_time++;
                 if(int_time==20)
                   {
              int_time=0;    //中斷計數變量清0
                        second++;        //秒計數變量加1
                        }                                                                        
                          if(second==60)
                                 {
                                          second=0;    //如果秒計滿60,將秒計數變量清0
                                          minute++;    //分鐘計數變量加1
                                 }
                                         if(minute==60)
                                           {
                                                   minute=0;    //如果分鐘計滿60,將分鐘計數變量清0
                                                   hour++;      //小時計數變量加1
                                                }
                                                  if(hour==13)
                                                    {
                                                           hour=1;    //如果小時計滿24,將小時計數變量清0
                                                         }

                                 
                                                      
               
  }  
        

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 激情免费视频 | 黄a网 | 久久国产区 | 91精品久久久久久久久久入口 | 日韩成人免费在线视频 | 免费国产视频 | 电影91久久久 | 蜜桃综合在线 | 色在线免费视频 | 国产欧美日韩一区二区三区在线观看 | 婷婷不卡 | 午夜视频在线观看一区二区 | 亚洲日本三级 | 午夜成人免费视频 | 免费激情 | 日韩成人在线免费视频 | 韩国av影院 | 久久久999国产精品 中文字幕在线精品 | 污污的网站在线观看 | 中国免费黄色片 | 一区中文字幕 | 毛片一级片 | 欧美日韩精品免费 | 欧美99 | 日韩精品一区二区三区免费观看 | 精品亚洲一区二区三区 | 欧美成人精品 | 99爱在线免费观看 | 91精品久久久久久久 | 久久久久久精 | 伊人网在线看 | 亚洲视频免费在线观看 | 特级丰满少妇一级aaaa爱毛片 | 九九九久久国产免费 | 国产乱码精品1区2区3区 | 色网站在线 | 黄色免费观看网站 | 人人种亚洲 | 免费在线观看一区二区 | 欧美日韩视频在线 | 欧美a级成人淫片免费看 |