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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

數碼管不亮 求大神指教

[復制鏈接]
跳轉到指定樓層
樓主
ID:77317 發表于 2015-4-20 10:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
# include <reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
u8 code d[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
u8 code dp[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
u8 code w[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
u8 dat,flag,datavalue=0;
sbit beep=P3^7;
sbit LED=P3^6;

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

函數名稱:    deplay(u16 t)
函數功能:    產生時間延時
入口參數:   t
出口參數:   無
備注:
*******************************************************/

void delay(u16 t)
{
u8 i;
while(t--)
{
for (i=0;i<19;i++);
}
}

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

函數名稱:  beepon()
函數功能:    讓蜂鳴器短暫發聲用來作為發送和接收數據指示
入口參數:   無
出口參數:   無
備注:

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

void beepon()
{
beep=0;
delay(500);
beep=1;
}

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

函數名稱:                 LEDflash()
函數功能;                 讓發光二極管閃耀
入口參數:                 無
出口參數:                 無
備注:

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

void LEDflash()
{
LED=0;
delay(300);
LED=1;
}

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

函數名稱:                   UART_inin()
函數功能;                    串行通信初始化函數,做好發送和接收的準備
入口參數:                        無
出口參數:                        無
備注:

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

void UART_init()
{
TMOD=0x20;
TH1=0xFD;
TL1=0xFD;
TR1=1;
SM0=0;
SM1=1;
REN=1;
EA=1;
ES=1;
}

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

函數名稱:            display(u16 k)          
函數功能;                顯示向pc發出的數據和pc發來的數據
入口參數:                k
出口參數:                無       
備注:
                                  
*****************************************************/

void display(u16 k)
{
P0=d[k/1000];
P2=w[3];
delay(30);

P0=d[k/100%10];
P2=w[2];
delay(30);

P0=d[k/10%10];
P2=w[1];
delay(30);

P0=d[k%10];
P2=w[0];
delay(30);

P1=0x00;
}

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

函數名稱:            send()          
函數功能;                向pc發送數據
入口參數:                無
出口參數:                無       
備注:
                                  
*****************************************************/

void send()
{
ES=0;                             //暫時關閉串行中斷,否則會又會進入中斷服務程序,把a=SBUF;flag=1;
flag=0;
SBUF=datavalue;
while(!TI);                         //如果TI=1,就把它等待
TI=0;                                 //一旦TI=0,就把它清零
ES=1;                                 //閉合串行中斷開關
}

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

函數名稱:            main()          
函數功能;                初始化串口,連續判斷遙控器哪個鍵按下并做相應的處理
入口參數:                無
出口參數:                無       
備注:
                                  
*****************************************************/

main()
{
P1=0xff;
UART_init();                                  //置輸入狀態
while(1)                                         //串口工作前的準備工作
{
dat=(P1&0x0f);                                //把遙控器按鍵狀態通過P1口送給變量dat
if(dat==0x08)              //遙控器A鍵按下
{
delay(120);
dat=0;
beepon();
LEDflash();
datavalue++;
dat=0;
send();
}
if(dat==0x02)                                //C鍵按下,清零
{
delay(120);
dat=0;
beepon();
LEDflash();
datavalue=0;
send();
}

if(dat==0x01)                                //按下D鍵就發送
{
delay(120);
beepon();
LEDflash();
datavalue--;
send();
}
display(datavalue);                        //將讀到的數顯示
}
}

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

函數名稱:            serial(void) interrupt 4          
函數功能;                通過串行中斷服務函數接收從PC發來的數據
入口參數:                無
出口參數:                無       
備注:                    串行中斷的中斷號是4
                                  
*****************************************************/

void serial(void) interrupt 4
{
RI=0;
datavalue=SBUF;                //將串口接收到的數據保存到datavalue變量中
display(datavalue);        //顯示接收的數據
flag=1;                                //置收到數據的標志
beepon();                        //蜂鳴器響一聲
LEDflash();                        //發光二極管閃一下
}

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

使用道具 舉報

沙發
ID:69862 發表于 2015-4-20 23:42 | 只看該作者
像你這種情況,沒有原理圖,不好下定論,我也給你一點小小的建議,在寫一個程序,或者做一個小功能的時候,最好要有一定的思路,比如上面的程序,里面包括“顯示”“蜂鳴器”“串口”“按鍵”如果是我,我會這樣做:
1、先把串口程序調通,你可能會問,為什么要先寫串口呢?我會這樣告訴你,單片機中,只有串口才是最好的人機界面,有了串口,就可以查看很多變量的值和一些計算過后的數據。再也告別在軟件上面仿真了。
2、數碼管顯示:首先讓數碼管亮起來,當亮起來那一瞬間,你會發現,數碼管是如此的簡單,亮了又該如何?現在就可以顯示固定的數據了,比如在數碼管上面顯示1234十進制數,顯示就成功一半了,最后把你想顯示的數據,用一個變量的形式,通過形參傳遞給顯示函數。顯示就寫完了。
3、然后就是按鍵和蜂鳴器,這兩個比較簡單,就不我說了,這個是我平時寫程序的大致流程,希望對你有幫助。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:948 發表于 2015-4-23 09:20 | 只看該作者
采用領信號法測一下

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:948 發表于 2015-4-23 09:20 | 只看該作者
查線路

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:948 發表于 2015-4-23 09:21 | 只看該作者
查元件
回復

使用道具 舉報

6#
ID:948 發表于 2015-4-23 09:21 | 只看該作者
多想想
回復

使用道具 舉報

7#
ID:72643 發表于 2015-4-23 10:50 | 只看該作者
版主說的很對!頂一下
回復

使用道具 舉報

8#
ID:71743 發表于 2015-4-24 10:04 | 只看該作者
看看硬件的線路,如果是595的話,檢查下時序,對不?

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

9#
ID:77958 發表于 2015-4-24 20:29 | 只看該作者
如果程序無誤,就看看電路,電阻值是否正確

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

10#
ID:78137 發表于 2015-4-26 17:18 | 只看該作者
如果程序無誤總加壓實時間,就看看電路,電阻值是否正確

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

11#
ID:78145 發表于 2015-4-26 18:47 | 只看該作者
看看原理圖有沒有用三極管作驅動。

評分

參與人數 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

12#
ID:153199 發表于 2016-12-31 12:28 | 只看該作者
硬件軟件結合看
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色呦呦网站 | www.99re5.com | 日日夜夜精品视频 | 亚洲精品欧美 | 美女视频一区二区三区 | 国产精品91视频 | 一区二区三区高清 | 中文字幕av高清 | 超碰97人人人人人蜜桃 | 日日夜夜精品免费视频 | 国产欧美精品 | 天天插天天操 | 国产成人精品一区二 | 成人中文字幕在线 | 羞羞涩涩在线观看 | 日本亚洲精品成人欧美一区 | 色天天综合 | 好姑娘高清在线观看电影 | www.青娱乐 | 欧美日韩国产一区二区三区 | 亚洲一区自拍 | av在线免费观看网站 | 欲色av| 国产精品免费观看 | 日本国产精品视频 | 国产精品欧美一区二区三区不卡 | 欧美a在线| 99热在这里只有精品 | 日本精品一区二区 | 日韩在线视频免费观看 | 欧美成人黄色小说 | 亚洲黄色一区二区三区 | 日韩有码一区 | 亚洲午夜精品一区二区三区他趣 | 国产偷录视频叫床高潮对白 | 欧美精品久久久久 | 91精品成人久久 | 麻豆精品国产免费 | 国产乱码精品1区2区3区 | 国产人久久人人人人爽 | 日韩欧美精品在线 |