找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

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

[求助]關(guān)于dtled 控制數(shù)碼管的問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:4788 發(fā)表于 2010-9-25 23:11 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

大家好,我剛開(kāi)始學(xué)習(xí)單片機(jī),看的是郭天祥的視頻教程。里面講到數(shù)碼管的課程比較能夠理解。但是本

 

 

人買(mǎi)了套學(xué)習(xí)板型號(hào)是YM-100的,里面的數(shù)碼管用到的是DTLED來(lái)控制的。一直琢磨但還是看的稀里糊涂的。 

以下這個(gè)是光盤(pán)里面附帶的程序,請(qǐng)大蝦們幫忙分析一下。并幫忙寫(xiě)個(gè)從0到100遞增的程序。謝謝

 

 


#include"reg51.h"
#include"intrins.h"
#define  uchar unsigned char  
#define  uint  unsigned int
#define  nop  _nop_()           /* 定義空操作指令 */
sbit en =P1^7;      /*DTLED-6顯示芯片使能端*/ 
sbit dout=P1^6;      /*DTLED-6顯示芯片數(shù)據(jù)讀入端*/
sbit clk=P1^3;      /*DTLED-6顯示芯片/時(shí)鐘芯片DS1302時(shí)鐘輸入端*/
uchar dispbuf[9];     /*顯示值存放陣列*/
void delay (uint value)     /*延時(shí)副程式*/
{
      while (value!=0) value--;    /*10US延時(shí)*/
}

/*********************************************************************/

//串行發(fā)送DTLED-6顯示
//dispbuf0-dispbuf1-dispbuf2-dispbuf3-dispbuf4-dispbuf5-dispbuf6-dispbuf7-dispbuf8
// 小數(shù)點(diǎn) - 數(shù)碼管1- 數(shù)碼管2- 數(shù)碼管3- 數(shù)碼管4- 數(shù)碼管5- 數(shù)碼管6-ID識(shí)別碼-BZ識(shí)別碼
//00000xxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx
//小數(shù)點(diǎn)=1~6,其它為不顯示             
//數(shù)碼管1-6=0~15,
//ID識(shí)別碼=0~15   
//BZ識(shí)別碼=BZ.3為蜂鳴輸出控制位,0=關(guān)閉,1=打開(kāi)
//     BZ0~2為蜂鳴頻率輸出設(shè)定為,000=不分頻,  最高頻率輸出=4800Hz;
//             001=一次分頻,頻率輸出=4800/ 2 =2400Hz;
//             010=二次分頻,頻率輸出=4800/ 4 =1200Hz;
//          011=三次分頻,頻率輸出=4800/ 8 =600Hz;
//             100=四次分頻,頻率輸出=4800/ 16=300Hz;
//             101=五次分頻,頻率輸出=4800/ 32=150Hz;
//             110=六次分頻,頻率輸出=4800/ 64=75Hz;    
//             111=七次分頻,頻率輸出=4800/128=38Hz;      
//======================================================================
void tsled(void)     /*串行發(fā)送DTLED-6顯示副程式*/ 
{   
 char ts0,i,j;
 clk=0;
 en=0;
 delay(10);
 for(j=0;j<9;j++)
   { ts0=dispbuf[j];
  for(i=0;i<4;i++)   /*發(fā)小數(shù)點(diǎn)碼8,4,2,1*/
  {
    clk=1;
   ts0=ts0<<1; 
   if(AC==1) dout=1;
   else      dout=0;
   clk=0;
   nop;
   delay(3);
  }
    }  
 en=1;
}       /*返回主程式*/

void main(void)
{
 uchar i,j,dat=0;
  dispbuf[7]=0x01;    /*ID號(hào)碼*/
 dispbuf[8]=0x00;    /*蜂鳴器關(guān)閉*/
 while(1)
  {
   for(i=1;i<=6;i++)
    {
      dispbuf[0]=i;   /*小數(shù)點(diǎn)位顯示*/
      tsled();
      delay(50000);
   }
  dispbuf[0]=0x00;           /*關(guān)閉小數(shù)點(diǎn)位顯示*/
   for(i=0;i<3;i++)           /*數(shù)據(jù)顯示*/
     for(j=1;j<=6;j++)
      {
        dispbuf[j]=dat++;
        tsled();
        delay(50000);
       }
   }
 }

 


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

使用道具 舉報(bào)

沙發(fā)
ID:4788 發(fā)表于 2010-9-25 23:22 | 只看該作者
不知道怎么貼圖,只好上傳兩個(gè)原理圖和芯片圖

回復(fù)

使用道具 舉報(bào)

板凳
ID:15441 發(fā)表于 2010-10-2 09:53 | 只看該作者

你好 我也是初學(xué)的 想和你交個(gè)朋友

我的qq745591666

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表