日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

单片机c语言数码管显示循环0到9程序,七段数码管0~9循环显示程序

發布時間:2024/3/12 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单片机c语言数码管显示循环0到9程序,七段数码管0~9循环显示程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

該樓層疑似違規已被系統折疊?隱藏此樓查看此樓

編寫程序實現80C51的P0口控制一個數碼管顯示,讓它循環顯示0~9等十位數字,時間間隔為1秒鐘。

利用查表程序可以完成BCD與七段碼的轉換,從而取代硬件七段譯碼電路,查表程序本身并無復雜之處,需要注意的是七段碼的取值,因為七段數碼管有共陽極及共陰極之分(參考本站數碼管的相關文章)。

共陽極是低電平有效時有效輸入。共陰極是高電平時有效輸入(所以在C51單片機要使發光二極管點亮,數碼管是共陽極的就要讓I/O口的電位變為低電位.如果是共陰極的就是合I/O口的電位變為高電位),因些不同的器件會有不同的數碼值。另外引腳信號與碼位的對應關系也會影響碼值,即引腳可以由高到低排列(7-1),也可以由低到高排列(1-7)。本實驗的數碼管為共陽極,采用由高到低的排列(特別說明.本站的學習工具全部為共陽極接法)。

例如對應0的二進制代碼為11000000本實驗在本站推出的實驗板及學習套件上可直接使用。請參照本站產品實驗部份原理圖。

***************************源程序******************************

ORG 0100H ;程序起始地址

MAIN: MOV R2,#00H ;段碼地址表指針清零

MOV DPTR,#TAB ;指向段碼地址表起始地址

DSUP: MOV A,R2 ;將R2的內容送入累加器A

MOVC A,@A+DPTR ;累加器的值與從數據表中取出的數碼顯示值相加后送入累加器A

MOV P0,A ;將累加器的值送入P0口顯示

MOV R1,#11111110B ;將11111110B(位選P2.0)送入寄存器R1

MOV P2,R1 ;將R1的值送入P2口進行位選

LCALL YSH1S ;調用延時1秒子程序

INC R2 ;段碼地址表指針加1

CJNE R2,#0AH,DSUP ;如果0-9顯示完畢,程序重新開臺執行

SJMP MAIN ;跳轉到MAIN入口

YSH1S:MOV R3,#05H ;延時1秒子程序

LOOP0:MOV R4,#0C8H

LOOP1:MOV R5,#0FAH

XHD: DJNZ R5,XHD

DJNZ R4,LOOP1

DJNZ R3,LOOP0

RET

TAB: DB 0C0H ;0-9段碼表

DB 0F9H

DB 0A4H

DB 0B0H

DB 99H

DB 92H

DB 82H

DB 0F8H

DB 80H

DB 90H

END

總結

以上是生活随笔為你收集整理的单片机c语言数码管显示循环0到9程序,七段数码管0~9循环显示程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。