找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)數(shù)碼管消影的問題解決

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
一直以來就被單片機(jī)數(shù)碼管消影問題困擾,網(wǎng)上查了資料都說是加個(gè)P0=00(共陰數(shù)碼管),加了后沒啥變化,還是會有重影,今天突發(fā)奇想,P0=0x00后加了dula=1;dula=0;這兩句,問題解決了,我想應(yīng)該是dula=1;dula=0;這兩句加了后地址鎖存器才會執(zhí)行,單單加句P0=0x00是沒用的。         (附數(shù)碼管部分代,經(jīng)常寫的人應(yīng)該看得懂,另附兩種效果圖)

消影之前的效果:


消影后:


單片機(jī)源程序如下:

  1. uchar code table1[]={0x3f,0x06,0x5b,0x4f,
  2.                                0x66,0x6d,0x7d,0x07,
  3.                                0x7f,0x6f,0x77,0x7c,
  4.                                0x39,0x5e,0x79,0x71,0x00};
  5. uchar code table2[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
  6. void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f)//顯示6位數(shù)碼管{
  7.          P0=table2[0];         
  8.          wela=1;
  9.          wela=0;
  10.          P0=table1[a];         
  11.          dula=1;
  12.          dula=0;         
  13.          delay(1);   
  14.          P0=0x00;dula=1;dula=0;//消影

  15.          P0=table2[1];         
  16.          wela=1;
  17.          wela=0;
  18.          P0=table1[b];         
  19.          dula=1;
  20.          dula=0;         
  21.          delay(1);         
  22.          P0=0x00;dula=1;dula=0;//消影

  23.          P0=table2[2];         
  24.          wela=1;
  25.          wela=0;
  26.          P0=table1[c];         
  27.          dula=1;
  28.          dula=0;        
  29.          delay(1);         
  30.          P0=0x00;dula=1;dula=0;//消影

  31.          P0=table2[3];         
  32.          wela=1;
  33.          wela=0;
  34.          P0=table1[d];         
  35.          dula=1;
  36.          dula=0;         
  37.          delay(1);         
  38.          P0=0x00;dula=1;dula=0;//消影

  39.          P0=table2[4];         
  40.          wela=1;
  41.          wela=0;
  42.          P0=table1[e];         
  43.          dula=1;
  44.          dula=0;     
  45.          delay(1);         
  46.          P0=0x00;dula=1;dula=0;//消影

  47.          P0=table2[5];         
  48.          wela=1;
  49.          wela=0;
  50.          P0=table1[f];         
  51.          dula=1;
  52.          dula=0;         
  53.          delay(1);         
  54.          P0=0x00;dula=1;dula=0;//消影
  55. }
復(fù)制代碼

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵(lì)!

查看全部評分

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

使用道具 舉報(bào)

沙發(fā)
ID:386381 發(fā)表于 2018-10-2 09:36 來自手機(jī) | 只看該作者
對的,對的,樓主這個(gè)方法非常好
回復(fù)

使用道具 舉報(bào)

板凳
ID:282519 發(fā)表于 2018-10-2 13:36 來自手機(jī) | 只看該作者
文鳳軒 發(fā)表于 2018-10-2 09:36
對的,對的,樓主這個(gè)方法非常好

一起學(xué)習(xí),分享經(jīng)驗(yàn)
回復(fù)

使用道具 舉報(bào)

地板
ID:900585 發(fā)表于 2021-4-4 15:16 | 只看該作者
會導(dǎo)致最后一位一直是8.
回復(fù)

使用道具 舉報(bào)

5#
ID:895440 發(fā)表于 2021-4-4 16:50 | 只看該作者
我用的定時(shí)器定時(shí),然后顯示新的數(shù)據(jù)前,清空之前的
回復(fù)

使用道具 舉報(bào)

6#
ID:142320 發(fā)表于 2021-4-5 10:30 | 只看該作者
這是你對硬件不理解造成的,你的數(shù)據(jù)發(fā)竤后得加段碼控制才可以,要么直接控制位選,一直說一直說

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

7#
ID:74784 發(fā)表于 2021-4-5 15:46 | 只看該作者
gujp312365 發(fā)表于 2021-4-5 10:30
這是你對硬件不理解造成的,你的數(shù)據(jù)發(fā)竤后得加段碼控制才可以,要么直接控制位選,一直說一直說

說的就是啊。
在初始化里先關(guān)閉全部的顯示。

在顯示代碼里
先送數(shù)據(jù)到要顯示的那一位,
顯示完畢后關(guān)閉它,
然后再去做下一位的顯示,
這樣就不會有怪問題出現(xiàn)啦。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

8#
ID:777834 發(fā)表于 2021-4-5 17:45 來自手機(jī) | 只看該作者
慧星的開發(fā)板?
回復(fù)

使用道具 舉報(bào)

9#
ID:1079727 發(fā)表于 2023-8-9 01:23 | 只看該作者
說的太好了,解決了問題
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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