女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于定時器的八位數字顯示器

CHANBAEK ? 來源:嵌入式開發教程 ? 作者:郭學提 ? 2023-07-12 11:51 ? 次閱讀

使用定時器中斷動態顯示8位數碼管。基于定時器的八位數字顯示器實驗電路如圖所示。

圖片

分析: 要動態顯示8位數碼管,其數據的刷新頻率應不低于50Hz(0.02S),也就是說每位數據的刷新時間應小于2.5ms(0.02S/8)。使用定時器T1以定時1ms,當定時器溢出中斷時,刷新數據位。其程序在結構上可分為三大部分:主函數等、定時器中斷服務函數、初始化函數。下面依次介紹各個部分。

1.主函數等

主函數前面這部分程序主要包括基本的IO口定義、全局變量定義、頭文件包含、函數聲明等。主函數首先調用初始化函數,對各個資源進行初始化操作,然后等待中斷發生。

#define user_test//測試用
typedef unsigned char   uint8;
typedef unsigned short int  uint16;
uint8 LED_Code_buf[8];
uint8 Disply_temp;
sfr LED_Date=0xa0;//user P2
void main(void)
{
    Int_Initialize();
    Other_Initialize();
    while(1)
    {    
    }
}

2.定時器T1中斷服務函數

定時器T1中斷服務函數主要是刷新顯示數據位,根據條件每次刷新一位數碼管。

//8位數碼管動態顯示
void Timer1 (void) interrupt 3 using 1  
{
    //1ms 刷新1次
    TH1=(65536-1000)/256;
    TL1=(65536-1000)%256;
    switch(Disply_temp++)
    {
        case 0:
              LED_Date=LED_Code_buf[0];//顯示高位
              break;
        case 1:
              LED_Date=LED_Code_buf[1];
              break;
         case 2:
              LED_Date=LED_Code_buf[2];
              break;
         case 3:
              LED_Date=LED_Code_buf[3];
              break;
         case 4:
              LED_Date=LED_Code_buf[4];
              break;
         case 5:LED_Date=LED_Code_buf[5];
              break;
         case 6:
              LED_Date=LED_Code_buf[6];
              break;
         case 7:
              LED_Date=LED_Code_buf[7];//顯示低位
              break;
         default:
              Disply_temp=0;
              break;
    }
}

3.初始化函數

初始化函數包括中斷初始化函數和其它資源的初始化函數。中斷初始化函數配置了中斷的觸發方式,是否允許中斷等操作。其它資源初始化函數主要配置開機顯示的字符。

void Int_Initialize(void)
{  
    TMOD|=0x10;//T1計數模式,方式1 
    //1ms 刷新1次 12MHz晶振
    TH1=(65536-1000)/256;
    TL1=(65536-1000)%256;
    EA=1;
    ET1=1;
    TR1=1;
}
//其它初始化函數
void Other_Initialize(void)
{
    //顯示87654321
    LED_Code_buf[0]=0x08;//最高位處理
    LED_Code_buf[1]=0x17;
    LED_Code_buf[2]=0x26;
    LED_Code_buf[3]=0x35;
    LED_Code_buf[4]=0x44;
    LED_Code_buf[5]=0x53;
    LED_Code_buf[6]=0x62;
    LED_Code_buf[7]=0x71;
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 顯示器
    +關注

    關注

    21

    文章

    5058

    瀏覽量

    141335
  • 數碼管
    +關注

    關注

    32

    文章

    1889

    瀏覽量

    92201
  • 中斷
    +關注

    關注

    5

    文章

    904

    瀏覽量

    42503
  • 定時器
    +關注

    關注

    23

    文章

    3287

    瀏覽量

    117151
  • IO口
    +關注

    關注

    3

    文章

    170

    瀏覽量

    24731
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    八位數碼管循環滾動

    `八位數碼管,循環顯示字符串,高手繞道`
    發表于 01-19 16:32

    八位數碼管顯示的計算(可加減乘除)

    矩陣鍵盤4*4 ,八位數碼管顯示 搞了幾天 雖然工程簡單,但很開心啊{:12:}
    發表于 05-02 22:42

    求一個八位數碼管顯示的秒表

    求一個八位數碼管顯示的秒表,謝謝大神們!
    發表于 10-17 22:37

    DDR的同組第八位數據線能這樣走嗎?

    DDR的同組第八位數據線能這樣走嗎?不是同一層
    發表于 04-15 07:35

    八位數碼管動態顯示學號

    八位數碼管動態顯示學號,這個程序實現的效果是將程序下載到STC板子上后,可以看到8個數碼管從左到右分別顯示0到7的八個數字,隔一段時間后顯示
    發表于 07-14 06:00

    八位數碼管的相關資料推薦

    我們在了解八位數碼管的時候,提到了定時器的概念,因為后面很多情況都會涉及到,所以就來認真學習一下啦基本介紹MCS51系列的單片機通常有2個16可編程定時/計數
    發表于 12-01 08:16

    八位數碼管動態掃描八位數碼管+流水燈的相關資料分享

    八位數碼管+流水燈八位數碼管滾動顯示可變亮度的數碼管顯示八位數碼管動態掃描其實驗現象為:從左到右8個數碼管分別
    發表于 12-03 06:55

    如何去實現八位數碼管的靜態與動態顯示代碼呢

    八位數碼管的原理是什么?如何去實現八位數碼管的靜態與動態顯示代碼呢?
    發表于 02-23 07:35

    如何去實現八位數碼管的動態掃描呢

    八位數碼管的原理是什么?如何去實現八位數碼管的動態掃描呢?
    發表于 02-23 07:50

    如何利用單片機去實現C51計數和八位數碼管顯示設計呢

    如何利用單片機去實現C51計數和八位數碼管顯示設計呢?
    發表于 02-23 07:22

    CH583八位數據收發沒問題的,超過八位就丟了怎么解決?

    八位數據收發沒問題的,超過八位就丟了
    發表于 09-20 07:14

    八位數字密碼鎖資料

    八位數字密碼鎖資料,很好設計資料,快來學習吧。
    發表于 05-09 17:10 ?0次下載

    DS1302八位數碼管C語言可調時鐘日歷

    電子發燒友網站提供《DS1302八位數碼管C語言可調時鐘日歷.doc》資料免費下載
    發表于 05-27 08:00 ?35次下載

    使用AT89C51制作八位數字頻率計的程序及注釋免費下載

    本文檔的主要內容詳細介紹的是使用AT89C51制作八位數字頻率計的程序及注釋免費下載。
    發表于 03-25 11:36 ?18次下載

    單片機之基礎編程 八位數碼管(三)

    八位數碼管+流水燈八位數碼管滾動顯示可變亮度的數碼管顯示八位數碼管動態掃描其實驗現象為:從左到右8個數碼管分別
    發表于 11-23 17:51 ?24次下載
    單片機之基礎編程 <b class='flag-5'>八位數</b>碼管(三)