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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

共享我的51hei開發板數碼顯示程序-2

[復制鏈接]
跳轉到指定樓層
樓主
ID:27913 發表于 2011-2-18 12:14 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這個是動態顯示程序,能同時顯示幾個數字利用的動態掃描的原理,在51hei開發板上運行成功顯示,沒參考任何資料自己寫的請大家多多指教

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char

uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};

uchar code we[]={
0xfe,0xfd,0xfb,0xf7,0xef,0xdf};

sbit dula=P2^6;
sbit wela=P2^7;

uchar c,d,e;

void sixseg(uint seg);
void delay(uint z);
void light(uchar c);

void main()
{ 
//初始化
// num1 = 0;
// cnt=table1[shu];
//設置計數器
//選取計數方式1
 TMOD = 0x11;
//給計數器寫初值
 TH0 = (65536-10000)/256;
 TL0 = (65536-10000)%256;
////////////////////
//操作單片機
//開啟CPU中斷
 EA = 1;
///////////////////
//開啟定時器T0位中斷
 ET0 = 1;
//開啟計數器
 TR0 = 1;
//調用子函數
 while(1)
 {
  sixseg(43456);
 }
}
//子函數
void light(uchar c)
{
 P0=0xff;
 wela=1;
 wela=0;//數碼管消影。由于上次位選值被鎖存,被選數碼管就是上次的。
           //導致下次段選輸入會在上次位置顯示本次值。

 P0=table[c];
 dula=1;
// P0=table[c];
 dula=0;


 P0=we[d];
 wela=1;
// P0=we[d]; wela=1輸出跟隨輸入,wela=0保持輸出,在此賦值
//可能導致上次的輸入被跟隨而輸出即不滿足鎖存器的建立和保存時間
//也可能是輸入的IO口反轉速度不夠。
 wela=0;
}

//子函數
void sixseg(uint seg)//seg只能表示<65536的數
{
 int a;//注意當seg為long型時uint很慢,分兩組顯示
   //int型相對清晰,而a為long型時程序龜速行駛。
    //數碼管呈流水燈狀
 uchar y,z,l,m,n;
/* x=seg/100000;
 y=seg%100000/10000;
 z=seg%100000%10000/1000;
 l=seg%100000%10000%1000/100;
 m=seg%100000%10000%1000%100/10;
 n=seg%100000%10000%1000%100%10;
*/

 y = seg/10000;
 a = seg%10000;
 z = a/1000;
 a = a%1000;
 l = a/100;
 a = a%100;
 m = a/10;
 n = a%10;
 
 if(e==2)
  { 
   d=1;  
   light(y);         
  } 
 if(e==3)
  {   
   d=2;  
   light(z);        
  } 
 if(e==4)
  {    
   d=3;  
   light(l);       
  } 
 if(e==5)
  {   
   d=4;  
   light(m);       
  } 
 if(e==6)
  {   
   d=5;  
   light(n);
  }
}
//中斷函數
void time () interrupt 1
{
//自變量自加

 TH0 = (65536-1000)/256;
 TL0 = (65536-1000)%256;
 e++;
 
 if(e==7)
 {
  e=2;  
 // d++;      
 }
 
}

[此貼子已經被作者于2011-2-18 12:15:10編輯過]
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久精品国产久精国产 | 国产成人精品999在线观看 | 精品视频一区二区三区在线观看 | 久久骚| 91精品国产一区二区三区动漫 | 久久久久久久综合 | av免费在线播放 | 精品久久久久久久久久久 | 99re视频在线观看 | 国产精品久久久久999 | 天天综合网天天综合色 | 国产一区二区 | 夜夜爽99久久国产综合精品女不卡 | 99国产精品一区二区三区 | 亚洲区一区二 | 欧美日韩视频 | 成人小视频在线免费观看 | 国产精品久久精品 | 国产美女视频一区 | 国产日韩欧美一区 | 国产在线网站 | 成人一区二区在线 | 国产精品99久久久久久动医院 | 日韩精品 电影一区 亚洲 | 欧美成年人视频在线观看 | 国内精品久久影院 | 欧美精品久久久久久久久老牛影院 | 国产欧美精品一区二区三区 | 欧美激情一区二区三区 | 国产精品精品视频一区二区三区 | 亚洲国产精品一区二区第一页 | 久久狠狠 | 亚洲免费在线观看av | 美日韩精品 | 手机av免费在线 | 亚洲一区二区三区四区五区中文 | 久久99精品久久久97夜夜嗨 | 亚洲精品一区二区三区在线 | 国产精品污污视频 | 国产日韩欧美 | 精品成人一区二区 |