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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6539|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

剛寫的一個很簡單的程序……

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:3324 發(fā)表于 2010-6-10 22:37 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include< reg52.h>
#include< intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar code disp[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7f,0x39,0x3f,0x79,0x71};
//數(shù)碼管顯示十六進(jìn)制,從0到f
uchar code select[]={7,6,5,4,3,2,1,0};
//位選數(shù)組,自左至右
uchar tt0,tt1;
uint temp1=0xfe;
uint temp=432;
void alllight();
void delay(uint z);

void init()   //初始化函數(shù)
{
 TMOD=0x11;  //定時器0工作在方式一
 TH0=(65536-50000)/256;  //裝入初值
 TL0=(65536-50000)%256;
 TH1=(65536-50000)/256;  //裝入初值
 TL1=(65536-50000)%256;
 EA=1;   //開總中斷
 ET0=1;   //開定時器0中斷
 ET1=1;
 TR0=1;
 TR1=1;   //計時開始
}

void Timer0() interrupt 1  //定時器0中斷子程序
{
 TH0=(65536-50000)/256;  //再次裝入初值
 TL0=(65536-50000)%256;
 tt0++;
}

void Timer1() interrupt 3  //定時器1中斷子程序
{
 TH0=(65536-50000)/256;  //再次裝入初值
 TL0=(65536-50000)%256;
 tt1++;
}


void display(uint temp)   //顯示子程序
{
 uint bai,shi,ge;
 bai=temp/100;
 shi=temp%100/10;
 ge=temp%100%10;
 
 if(bai!=0)    //此處的判斷是為了消除重影,不然當(dāng)沒有到100時,百位上總會有一個0在隱隱約約的顯示
  { 
  P0=disp[bai];  //顯示百位
  P2=select[2];
  delay(1);    //延時0.1s左右
  }
   
  P0=disp[shi];  //顯示十位
  P2=select[1];
  delay(1);
  
  P0=disp[ge];  //顯示個位
  P2=select[0];
  delay(1);
}


void delay(uint z)   //延時子函數(shù),z為傳遞的參數(shù),用來決定延時時間的長短,若z為1,延時時間大概為0.001s
{
 uint x,y;
 for(x=z;x>0;x--)
  for(y=10;y>0;y--); 
}

void main()
{
 init();
 
 while(1)
 {
  if(tt1!=2)   //數(shù)碼管顯示程序段
  {
   P0=disp[7];  //顯示高三位的765
   P2=select[5];
   delay(1); 

   P0=disp[6]; 
   P2=select[4];
   delay(1);

   P0=disp[5]; 
   P2=select[3];
   delay(1);

   display(temp);
  }
  else if(tt1==2)
  {
   
   tt1=0;
   if(temp==398)
   {
    TR1=0;
   }
   else
   {
    temp--;
   }
  }

  
  if(tt0==10)   //流水燈程序段
  {
   tt0=0;
   
   {
    if(temp==398)
     alllight();
   }
   temp1=_crol_(temp1,1);
   P1=temp1;
  }

 }
}

void alllight()   //數(shù)碼管停止后的動作
{
 while(tt0<=60)
 {
  temp1=0xff;  
  if(tt0%10==0)
  {
   P1=~temp1; 
  }
  
  P0=disp[7];  //顯示高三位的765
  P2=select[5];
  delay(1); 

  P0=disp[6]; 
  P2=select[4];
  delay(1);

  P0=disp[5]; 
  P2=select[3];
  delay(1);

  display(temp);
 }
 
 while(1)
 {
  P1=0xff;
  P0=0x76;  //顯示字母H
  P2=3;
  delay(1);

  P0=0x79;  //顯示字母E
  P2=4;
  delay(1);

  P0=0x38;  //顯示字母L
  P2=5;
  delay(1);

  P0=0x38;  //顯示字母L
  P2=6;
  delay(1);

  P0=0x3f;  //顯示字母O
  P2=7;
  delay(1);
    
 }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:23004 發(fā)表于 2010-6-10 22:46 | 只看該作者
又現(xiàn)一單片機(jī)愛好者。。。。
回復(fù)

使用道具 舉報

板凳
ID:22246 發(fā)表于 2010-6-10 22:52 | 只看該作者
又有數(shù)碼管又有流水燈,看來是高手
回復(fù)

使用道具 舉報

地板
ID:24515 發(fā)表于 2010-6-17 15:48 | 只看該作者
謝謝分享!
回復(fù)

使用道具 舉報

5#
ID:24326 發(fā)表于 2010-6-24 02:10 | 只看該作者
樓主 你不厚道 這個程序 我一看就知道是某個教程里面的 流水燈和數(shù)碼管以及延時功能的一個例子
回復(fù)

使用道具 舉報

6#
ID:17098 發(fā)表于 2010-7-17 21:00 | 只看該作者

高手,可我是初學(xué),不懂

回復(fù)

使用道具 舉報

7#
ID:25111 發(fā)表于 2010-7-19 10:11 | 只看該作者
確實不厚道,這個程序前幾天我剛看到,是郭老師寫的吧
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久99 | 国产精品色 | 亚洲欧洲成人av每日更新 | 亚洲网在线| 精品视频一区二区 | 国产精品亚洲精品 | 日韩欧美在线视频 | 射久久 | 欧美日韩国产一区二区三区 | 亚洲成人激情在线观看 | 午夜精品久久久久久久99黑人 | 精品国产乱码久久久久久牛牛 | 成人国产在线视频 | 日韩中文字幕 | 亚洲成人免费在线 | 欧美天堂在线观看 | 久久y | 精品视频一区二区在线观看 | 日韩欧美理论片 | av男人的天堂在线 | 婷婷久久久久 | 日本aa毛片a级毛片免费观看 | 亚洲欧美日韩激情 | 久久国产一区二区三区 | 亚洲一区二区网站 | 中文字幕免费视频 | 天天天操操操 | 亚洲精品在线免费观看视频 | 久久精品视频免费看 | 精品久久久久久久久久久久久久 | 日韩一区二区三区在线 | 精品一区二区久久久久久久网站 | 亚洲精品视频免费 | 韩日有码 | 在线精品亚洲欧美日韩国产 | 欧美黄色绿像 | 偷拍自拍网址 | 午夜免费视频 | 国产一区二区在线免费 | 97伊人| 91精品久久久久久综合五月天 |