• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于51單片機的分?jǐn)?shù)計數(shù)器設(shè)計

      2021-04-14 03:08:38
      湖北農(nóng)機化 2021年3期
      關(guān)鍵詞:數(shù)碼管低電平高電平

      余 丹

      (江西工業(yè)職業(yè)技術(shù)學(xué)院,江西 南昌 330096)

      1 單片機

      單片機是集成在一塊芯片上的計算機,功能強大,質(zhì)量輕,體積小,供電方便,具有計算機的強大功能。單片機把中央處理器、存儲器、定時/計數(shù)器、各種輸入輸出接口等集成在一塊電路芯片上,相當(dāng)于一個微型的計算機。具有結(jié)構(gòu)簡單、控制功能強、可靠性高、體積小、價格低、使用方便靈活、通用性強等優(yōu)點,廣泛應(yīng)用于工業(yè)控制、智能化儀器儀表、家用電器、電子玩具等領(lǐng)域[1]。51單片機價格低廉,使用廣泛,本文采用AT89C51型號單片機,搭建硬件電路,采用C語言進行程序設(shè)計,實現(xiàn)分?jǐn)?shù)計數(shù)器的設(shè)計。

      2 分?jǐn)?shù)計數(shù)器

      計數(shù)器用于很多場合,可以對一場比賽進行分?jǐn)?shù)計數(shù),也能對貨品數(shù)量進行計數(shù)。根據(jù)不同要求可以采用不同的計數(shù)器。計數(shù)器可以根據(jù)計數(shù)范圍、計數(shù)方式等來選擇,如1位數(shù)計數(shù)、2位數(shù)計數(shù)器、3位數(shù)計數(shù)器,一般采用LED數(shù)碼管顯示,計數(shù)方式可以通過按鈕控制,有加按鈕或減按鈕,每次加/減不一樣,就需多個按鈕。根據(jù)具體的控制要求,設(shè)計出專門的計數(shù)器。本文設(shè)計1個2位的簡易分?jǐn)?shù)計數(shù)器,只有1個按鈕,每按1次按鈕就加1分,采用LED數(shù)碼管進行顯示。

      3 硬件設(shè)計

      根據(jù)要求分析,2位計數(shù)器采用LED數(shù)碼管顯示,需要2個LED數(shù)碼管,1個按鈕進行加分,要1個按鈕按鍵,按鍵按1次加1分,按2次加2分,即需要加幾分就按幾次。用1塊51單片機結(jié)合單片機最小系統(tǒng)電路就能設(shè)計,硬件電路如圖1所示。也可以根據(jù)分?jǐn)?shù)計數(shù)器的實際要求來更改設(shè)計,如分?jǐn)?shù)有加有減,可以增加一個減分按鈕,即在此電路上就能更改,變化很小,給設(shè)計留有余量,增加功能變換,更改簡單。

      圖1 分?jǐn)?shù)計數(shù)器硬件圖

      LED數(shù)碼管能清晰顯示字符,經(jīng)常用來作為單片機人機對話的輸出設(shè)備,用于顯示單片機系統(tǒng)的計算結(jié)果、顯示信息等。LED數(shù)碼管由7段或8段發(fā)光二極管構(gòu)成,含有小數(shù)點的為8段,不含小數(shù)點的為7段數(shù)碼管,每一個發(fā)光二極管組成一個段,分別為a、b、c、d、e、f、g、dp段,并且以a段為8位二進制的低位,dp段為最高位。將發(fā)光二極管組合好,就能顯示不同的字符或數(shù)字。LED數(shù)碼管有共陽、共陰極之分,發(fā)光二極管要點亮,需要連成一個完整電路,有電源端、接地端,發(fā)光二極管有正負(fù)極之分,正極對應(yīng)電源端,負(fù)極對應(yīng)接地端,如果將8個發(fā)光二極管的負(fù)極連在一起接低電平,就是共陰數(shù)碼管,反之,將8個發(fā)光二極管的正極連在一起接高電平,就是共陽數(shù)碼管,本系統(tǒng)采用共陽數(shù)碼管。當(dāng)共陽數(shù)碼管的公共端接高電平,該數(shù)碼管就能點亮,如果公共端接低電平,該數(shù)碼管不能被點亮。采用共陽數(shù)碼管,需要某段被點亮,該段應(yīng)接上低電平,即對應(yīng)的發(fā)光二極管導(dǎo)通,如顯示數(shù)字2,需要a、b、g、e、d段接低電平,其它段接高電平,公共端接高電平。

      LED數(shù)碼管有靜態(tài)顯示和動態(tài)顯示2種,靜態(tài)顯示就是數(shù)碼管顯示字符時,其公共端恒定接低電平(共陰數(shù)碼管)或高電平(共陽數(shù)碼管),每個數(shù)碼管的8段都由單片機的1個8位I/O端口連接,這種方式需要占用較多單片機I/O端口,硬件成本高,電路復(fù)雜,適用于顯示位數(shù)少的場合。動態(tài)顯示就是利用人肉眼辨別時間差,合理控制每個數(shù)碼管點亮的時間,給人一種是同時點亮的假象,讓多個數(shù)碼管看起來是同時被點亮的,呈現(xiàn)穩(wěn)定的顯示。這種方式可以節(jié)省單片機I/O端口,一塊單片機能控制多個數(shù)碼管顯示,硬件電路簡單。LED數(shù)碼管是靜態(tài)顯示還是動態(tài)顯示,通過程序設(shè)計來實現(xiàn),在硬件電路設(shè)計上只需將數(shù)碼管公共端是直接接低電平(共陰數(shù)碼管)或高電平(共陽數(shù)碼管),還是其公共端由單片機的I/O端口來控制,8段是每個數(shù)碼管分別由1個8位的I/O端口來控制,還是全部數(shù)碼管都由1個8位的I/O端口來控制。本系統(tǒng)采用數(shù)碼管動態(tài)顯示,由P2.0、P2.1端口控制數(shù)碼管公共端即位選,P1口控制段選。

      計數(shù)器的加分按鍵由P0.0端口外接上拉電阻,當(dāng)按鍵按下時相應(yīng)P0.0端口為低電平,當(dāng)按鍵斷開時,P0.0端口為高電平。

      4 軟件設(shè)計

      2位的分?jǐn)?shù)計數(shù)器系統(tǒng)采用LED數(shù)碼管動態(tài)顯示的方式,先第一個數(shù)碼管顯字,關(guān)閉第一個數(shù)碼管顯字,接著第二個數(shù)碼管顯字,關(guān)閉第二個數(shù)碼管顯字,再循環(huán)第一個數(shù)碼管顯字,關(guān)閉第一個數(shù)碼管顯字,第二個數(shù)碼管顯字,這樣的循環(huán)方式,顯示當(dāng)前的分?jǐn)?shù)。51單片機采用C語言編寫程序,先設(shè)計程序流程圖,如圖2所示。

      圖2 程序流程圖

      在主函數(shù)中,while無限循環(huán),先if判斷是否有按鍵按下,并采用按鍵去抖動,若有按鍵按下,分?jǐn)?shù)就加1,并判斷分?jǐn)?shù)是否達(dá)到100,若達(dá)到100,就立馬清0,重新開始計數(shù),2位簡易分?jǐn)?shù)計數(shù)器計數(shù)的最大值為99。2個LED數(shù)碼管控制好顯示時間,利用人肉眼的視覺差形成2個LED數(shù)碼管同時顯示的假象,穩(wěn)定顯示2位的分?jǐn)?shù)值。數(shù)碼管動態(tài)顯示的主要程序為:

      P1=0xff;

      P2=0x01;//選中第一個數(shù)碼管

      P1=led[jishu/10];//顯示分?jǐn)?shù)計數(shù)器的十位數(shù)值

      delay(100);

      P1=0xff;

      P2=0x02;//選中第二個數(shù)碼管

      P1=led[jishu%10];//顯示分?jǐn)?shù)計數(shù)器的個位數(shù)值

      delay(100);

      在Keil C51軟件中編寫好程序,在Proteus仿真軟件中進行如圖1搭建硬件電路,將.HEX文件下載至單片機中,調(diào)試程序,可以觀看到2個LED數(shù)碼管初始狀態(tài)為00,通過按鍵按下1次,會加1,當(dāng)顯示99后,再次按下按鍵,會顯示00,重新開始計數(shù)。若有實際的硬件電路,可以通過STC-ISP將程序下載至單片機,調(diào)試結(jié)果與仿真結(jié)果一致??梢姡趩纹瑱C的2位簡易分?jǐn)?shù)計數(shù)器軟硬件設(shè)計合理,達(dá)到控制要求,實現(xiàn)計數(shù)功能。

      5 結(jié)語

      本文以2位簡易分?jǐn)?shù)計數(shù)器軟硬件開發(fā)過程為例,通過硬件和軟件設(shè)計,在Keil C51軟件中編寫好程序,在Proteus軟件中仿真,查看分?jǐn)?shù)計數(shù)器的仿真效果,得出基于單片機的分?jǐn)?shù)計數(shù)器設(shè)計合理有效的結(jié)論。

      猜你喜歡
      數(shù)碼管低電平高電平
      數(shù)字電路中“邏輯非”的用法辨析
      一種基于FPGA的PWM防錯輸出控制電路
      鐵道車輛高/低電平信號智能發(fā)生器設(shè)計
      Arduino編程
      電腦報(2019年2期)2019-09-10 07:22:44
      TS-03C全固態(tài)PDM中波發(fā)射機開關(guān)機控制電路原理及故障分析
      科技傳播(2019年15期)2019-08-22 08:07:44
      MC9S08FL16單片機數(shù)碼管靜態(tài)顯示分析
      單片機控制的四位數(shù)碼管動態(tài)顯示編程
      基于Qt的數(shù)碼管數(shù)字編碼系統(tǒng)的設(shè)計與實現(xiàn)
      2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
      DM 50KW中波廣播發(fā)射機欠推動故障分析
      永德县| 鄄城县| 松原市| 灌南县| 华亭县| 江阴市| 凤翔县| 浦东新区| 尼木县| 安徽省| 达州市| 陆川县| 盐源县| 溆浦县| 三门县| 清河县| 长沙市| 宝兴县| 泰兴市| 新津县| 连南| 普陀区| 沙田区| 武宣县| 富阳市| 绥江县| 清流县| 东方市| 乌兰县| 长兴县| 洛阳市| 合川市| 安宁市| 房山区| 翼城县| 方山县| 温州市| 祁门县| 山东| 阿克陶县| 皮山县|