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

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

八位數碼管動態顯示程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年04月28日   【字體:

這個是51hei開發板專區里轉來的一個程序,注釋很詳細,運行也沒有問題,原文地址:http://www.zg4o1577.cn/bbs/dpj-4140-1.html

/*動態數顯的設計思路,首先是我們要先知道怎樣才能使哪個位亮,顯示的段是什么數值,接下來就是中斷時間
的問題了,設計步驟如下,如果要讓八個數碼管靜態顯示1到8,我們可以修改中斷時間,如把50000改成100或更低*/

#include<reg52.h>  
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit duan=P2^6;    
sbit wei=P2^7;

uchar  a,numw,numd;
uchar code tabled[]={
0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f}; /*第二步驟,創建段顯數值的對碼表0~9數值.如果要顯示1~8數值,最好多加前后兩位數0跟9,
      因為后面++移位時就能按我們常規順序亮下去,至于如何顯示對應數值請先看數碼顯示電路圖*/ 
uchar code tablew[]={
0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f}; //第二步驟,創建位顯,就是顯示的位置,這個碼表相對簡單,用二進制表示11111110~01111111,是0的為八位數顯管的位置
void main()
{
 a=0;            //定義個時間函數
 numw=0;     //附位顯初值為0位
 numd=0;     //附段顯初值為0位
 
 TMOD=0X01;    //第四步驟,附中斷暫存器初值
 TH0=(65535-50000)/256; //附中斷請求時間初值,高8位
 TL0=(65536-50000)%256; //附中斷請求時間初值,低8位
 EA=1;     //開啟總中斷
 ET0=1;     //開啟定時中斷
 TR0=1;     //啟動定時中斷
 while(1)
 {
  if(a==10)   //第三步驟,執行速度,如果等20差不多是1秒,則往下執行,相當于單位數值亮的時間
  {
   a=0;   //重新附值初值0
   numd++;   //段顯值++
   if(numd==9)  //如果段值在對碼表第9位則轉下執行 
    numd=1;  /*重新附值段顯值對應對碼表第1位,因為++所以0位并不在數碼管中顯示.
       如果要顯示,也會因為++而在第二輪中顯示出*/
   duan=1;   //開啟段顯端
   P0=tabled[numd];//附段顯P0值對應段顯值對碼表
   duan=0;   //鎖存
   wei=1;   //開啟位顯端
   P0=tablew[numw];//附位顯P0值對應位顯值對碼表
   wei=0;   //鎖存
   numw++;   //相當于位顯移位
   if(numw==8)  //如果位顯值到對應位顯對碼表第八位則轉下執行
    numw=0;  //重新附值位顯值對應對碼表第0位起
/*

下面是簡單的單個數碼管顯示例證 第一驟, 修改后在第三步驟內
#include"reg52.h"
#include"intrins.h"

sbit duan=P2^6; //段顯端口
sbit wei=P2^7; //位顯端口

void main()
{
 //P0=0xff; 數碼管不顯示任何信號,默認情況下通電本身就不顯示,可以不寫
 duan=1;  //開啟段顯端口
 P0=0x06; //附值段顯數值為1,可以查閱數碼管電路圖相對應顯示的對碼表
 duan=0;  //鎖存,保持上一步段顯狀態,硬件說明請查閱74HC573功能
 wei=1;  //開啟位顯端口
 P0=0xfe; //附值位顯位置,01111111,左邊第一位,為0的顯示
 wei=0;  //鎖存,保持上一步位顯狀態,硬件說明請查閱74HC573功能
}
*/
 
  }
 }
}

void timer0() interrupt 1 /*第四步驟,中斷時間函數這個相當于移位數顯的速度,速度夠快,人眼就會有余輝效應,
       感覺8位數顯一直在亮著,相當于正在播放的電影膠卷*/

{
 TH0=(65536-50000)/256;
 TL0=(65536-50000)%256;
 a++;
}

/*

以上有什么地方還需要改進的還請老師明示

*/
 

關閉窗口

相關文章

主站蜘蛛池模板: 久久不射电影网 | 国产美女视频一区 | 亚洲激情av | 国产精品免费av | 国产一区不卡 | 国产精品亚洲片在线播放 | 岛国二区 | 国产精品美女久久久av超清 | 7777在线视频免费播放 | 在线视频一区二区三区 | 成人精品| 高清欧美性猛交xxxx黑人猛交 | av一级久久| 亚洲欧洲精品一区 | 天堂av中文在线 | 精品无码久久久久久国产 | 日韩av在线一区二区三区 | 色吊丝2288sds中文字幕 | 亚洲精品乱码久久久久久按摩 | 国产精品区一区二区三 | 中文无吗| 91传媒在线观看 | 99久久电影 | 国产精品久久久久久久久久久久久 | 日本午夜一区二区三区 | 天天操天天天 | 亚洲一区二区视频 | 99久久精品免费看国产四区 | 亚洲精品一区二区冲田杏梨 | 国产一区二区影院 | 精品久久香蕉国产线看观看亚洲 | 99久久久久久 | www.色婷婷| 午夜小电影 | 亚洲国产成人av好男人在线观看 | 在线中文字幕av | 欧美一级三级在线观看 | 91久久久久| 亚洲精品在线视频 | 九九av| 国产日韩欧美一区二区在线播放 |