女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)碼管神奇的小數(shù)點(diǎn)顯示程序詳解

2oON_changxuemc ? 2017-12-12 09:46 ? 次閱讀

數(shù)碼管的小數(shù)點(diǎn)單獨(dú)有一位來控制,這就是物理世界和數(shù)字世界的神奇之處,數(shù)碼管用來顯示數(shù)字和字母的led段有7個,再加上小數(shù)點(diǎn)共8個,正好對應(yīng)一個字節(jié)的位數(shù),這樣使用單片機(jī)的一個口正好可以全部操作,比如顯示2.,只需將數(shù)字2對應(yīng)的二進(jìn)制數(shù)第1位改為1即可,在實(shí)際中,我們將要帶點(diǎn)顯示的數(shù)字和0x80相或就可以,其原理如下:

共陰極(1亮0滅): DP G F E D C B A

0 1 0 1 1 0 1 1 = 0x5B

1 0 0 0 0 0 0 0 = 0x80

兩組二進(jìn)制數(shù)進(jìn)行或運(yùn)算后結(jié)果為:

1 1 0 1 1 0 1 1 = 0xDB

可以發(fā)現(xiàn),進(jìn)行或運(yùn)算后,原來顯示數(shù)字2的部分(綠色碼)不變,但原來控制點(diǎn)顯示的部分(紅色)為1,正好達(dá)到了不影響數(shù)字又能點(diǎn)亮點(diǎn)的效果。下面的代碼,實(shí)現(xiàn)了顯示0-999縮小10倍的顯示效果。

#include

sbit LATCH1=P2^2;//段鎖存

sbit LATCH2=P2^3;//位鎖存

unsigned char code DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};// 顯示段碼值0~9

unsigned char code WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分別對應(yīng)相應(yīng)的數(shù)碼管點(diǎn)亮,即位碼

unsigned char TempData[8]; //存儲顯示值的全局變量

void Delay(unsigned int t); //函數(shù)聲明

void Display(unsigned char FirstBit,unsigned char Num);

main()

{

unsigned int num;

unsigned int j;

while(1)

{

j++;

if(j==200) //檢測當(dāng)前數(shù)值顯示了一小段時間后,需要顯示的數(shù)值加1,實(shí)現(xiàn)數(shù)據(jù)顯示的變化

{

j=0;

num++;

if(num==1000)//用于顯示0~999

num=0;

}

TempData[0]=DuanMa[num/100];//分解顯示信息 123/100=1

TempData[1]=DuanMa[(num%100)/10]|0x80; //23/10=2. 倒數(shù)第2位加點(diǎn),實(shí)現(xiàn)數(shù)字縮小10倍

TempData[2]=DuanMa[(num%100)%10]; //23%10=3

Display(2,3);

}

}

void Delay(unsigned int t)

{

while(--t);

}

/*------------------------------------------------

顯示函數(shù),用于動態(tài)掃描數(shù)碼管

輸入?yún)?shù) FirstBit 表示需要顯示的第一位,如賦值2表示從第三個數(shù)碼管開始顯示

如輸入0表示從第一個顯示。

Num表示需要顯示的位數(shù),如需要顯示99兩位數(shù)值則該值輸入2

------------------------------------------------*/

void Display(unsigned char FirstBit,unsigned char Num)

{

unsigned char i;

for(i=0;i{

P1=0; //清空數(shù)據(jù),防止有交替重影

LATCH1=1; //段鎖存

LATCH1=0;

P1=WeiMa[i+FirstBit]; //取位碼

LATCH2=1; //位鎖存

LATCH2=0;

P1=TempData[i]; //取顯示數(shù)據(jù),段碼

LATCH1=1; //段鎖存

LATCH1=0;

Delay(200); // 掃描間隙延時,時間太長會閃爍,太短會造成重影

}

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)碼管
    +關(guān)注

    關(guān)注

    32

    文章

    1889

    瀏覽量

    92218

原文標(biāo)題:單片機(jī)怎么顯示小數(shù)點(diǎn)?數(shù)碼管小數(shù)點(diǎn)顯示程序

文章出處:【微信號:changxuemcu,微信公眾號:暢學(xué)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何給秒表第二位加上小數(shù)點(diǎn)

    怎么給秒表第二位加上小數(shù)點(diǎn)?我只會數(shù)碼管一加就全都有小數(shù)點(diǎn)
    發(fā)表于 08-18 21:21

    基于stm32f1xx的四位數(shù)碼管小數(shù)顯示實(shí)驗(yàn)

    主體2.1實(shí)現(xiàn)單個任意數(shù)字的顯示2.1.1定義數(shù)字表以及數(shù)碼管段選表2.1.2 消影2.1.3 主體代碼如下2.2 數(shù)據(jù)處理2.2.1 記錄小數(shù)點(diǎn)位置2.2.2浮點(diǎn)數(shù)變?yōu)檎麛?shù),并限制為四位2.2.3 整數(shù)變?yōu)檎麛?shù)型數(shù)組2.2.4
    發(fā)表于 07-21 08:13

    共陰數(shù)碼管與共陽數(shù)碼管小數(shù)點(diǎn)段碼是怎樣的

    數(shù)碼管主要分為哪幾種呢?有何區(qū)別?共陰數(shù)碼管與共陽數(shù)碼管小數(shù)點(diǎn)段碼是怎樣的?
    發(fā)表于 01-21 07:43

    如何實(shí)現(xiàn)帶小數(shù)點(diǎn)數(shù)碼管顯示

    如何實(shí)現(xiàn)帶小數(shù)點(diǎn)數(shù)碼管顯示
    發(fā)表于 02-15 06:01

    數(shù)碼管顯示原理是什么呢

    3.1 數(shù)碼管顯示原理這便是數(shù)碼管的圖片,叫做四位數(shù)碼管,當(dāng)然也有雙位,單位數(shù)碼管,也還有不帶小數(shù)點(diǎn)
    發(fā)表于 02-22 06:45

    【每周一練】盤古1K開發(fā)板+動態(tài)數(shù)碼管+小數(shù)點(diǎn)顯示

    7段數(shù)碼管顯示小數(shù)點(diǎn)沒有用上。我簡單地修改了一下程序,可以讓其中一個數(shù)碼管顯示
    發(fā)表于 12-09 20:30

    數(shù)碼管的分類

    數(shù)碼管的分類     數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管
    發(fā)表于 11-06 11:41 ?7698次閱讀

    34-顯示小數(shù)點(diǎn)

    34-顯示小數(shù)點(diǎn)----------51單片機(jī)源程序 用keil直接打開
    發(fā)表于 06-16 15:38 ?11次下載

    常用共陰極數(shù)碼管型號

    數(shù)碼管按段數(shù)可分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極單元,也就是多一
    發(fā)表于 01-28 10:25 ?3.7w次閱讀
    常用共陰極<b class='flag-5'>數(shù)碼管</b>型號

    關(guān)于看門狗定時器動態(tài)數(shù)碼管顯示問題

    程序把看門狗當(dāng)做普通定時器使用,在看門狗中斷中進(jìn)行數(shù)碼管掃描,另外我加入了顯示的緩沖區(qū),想在數(shù)碼管顯示什么數(shù)字只需要對緩沖數(shù)組中的值進(jìn)行操
    發(fā)表于 04-23 11:10 ?1515次閱讀
    關(guān)于看門狗定時器動態(tài)<b class='flag-5'>數(shù)碼管</b>的<b class='flag-5'>顯示</b>問題

    數(shù)碼管在單片機(jī)上的應(yīng)用詳解

    引腳定義每一筆劃都是對應(yīng)數(shù)碼管一個字母表示數(shù)碼管DP是小數(shù)點(diǎn)
    的頭像 發(fā)表于 07-30 10:32 ?3.5w次閱讀
    <b class='flag-5'>數(shù)碼管</b>在單片機(jī)上的應(yīng)用<b class='flag-5'>詳解</b>

    微雪電子8段數(shù)碼管簡介

    8段數(shù)碼管模塊 4位8段數(shù)碼管模塊 帶小數(shù)點(diǎn) 用于數(shù)值顯示 時間顯示等等 提供測試程序(A
    的頭像 發(fā)表于 12-30 09:03 ?2120次閱讀
    微雪電子8段<b class='flag-5'>數(shù)碼管</b>簡介

    基于51單片機(jī)數(shù)碼管顯示

    它們的各個筆劃,公共電極。數(shù)碼管實(shí)際上是由七個發(fā)光組成8字形構(gòu)成的,加上小數(shù)點(diǎn)就是8個。這些段分別由字母a,b,c,d,e,f,g,dp來表示,如圖所示。數(shù)碼管按段數(shù)可分為七段
    發(fā)表于 11-11 19:21 ?18次下載
    基于51單片機(jī)<b class='flag-5'>數(shù)碼管</b><b class='flag-5'>顯示</b>

    小數(shù)點(diǎn)數(shù)碼管顯示

    小數(shù)點(diǎn)數(shù)碼管顯示數(shù)碼管的示意圖如上,通過點(diǎn)亮a-g七個led來拼成對應(yīng)的數(shù)字或字符,數(shù)碼管有共陽極(底電平亮)和共陰極(高電平亮),以上圖的數(shù)字2為例:共陽極(0亮1滅): D
    發(fā)表于 12-16 16:59 ?10次下載
    帶<b class='flag-5'>小數(shù)點(diǎn)數(shù)碼管</b>的<b class='flag-5'>顯示</b>

    數(shù)碼管的工作原理、靜態(tài)顯示及動態(tài)顯示

    ????? 數(shù)碼管是一種利用LED的顯示器件,普通的數(shù)碼管在內(nèi)部集成了八個數(shù)碼管,分別組成了對應(yīng)的段,由于數(shù)字只需要七個段就可以,所以有的數(shù)碼管
    的頭像 發(fā)表于 01-16 15:48 ?4.5w次閱讀
    <b class='flag-5'>數(shù)碼管</b>的工作原理、靜態(tài)<b class='flag-5'>顯示</b>及動態(tài)<b class='flag-5'>顯示</b>