-
傳送乙個程式供您參考,包括52個單晶元標頭檔案,一般不做改動,它包含特殊功能暫存器的定義。
定義 uchar unsigned char 將 unsigned char 定義為 uchar,簡化了輸入和寫入。 提高程式設計速度。
define uint unsigned int 將 unsigned char 定義為 uint,簡化了 char 的輸入。 提高程式設計速度。
uchar code duma=;數字''0-f' '-' '撲滅'
延時子例程*
void delay(uint time)
while(--time);如果 time 的值不是 0,則執行空語句。 當 time 為 0 時,顯示 while 語句。
主程式 void main()。
uchar i;定義無符號字元變數。
while(1) 進行無限迴圈,使程式始終以 while 下面的大括號執行。
for(i=0;i<19;i++) 表示語句。
p2=duma[i];如果表示式為 false,則執行括號中的語句。 如果為 true,則執行下一句。
delay(50000);延遲子例程呼叫。
-
檢視您的特定電路,然後編寫乙個程式來匹配電路圖。
-
#include
define uchar unsigned char define uint unsigned int 共陰極數碼管的 7 段程式碼。
uchar code table=;
uchar code table2=;這是學號的最後4位數字,請自行修改。
void display() 4 位顯示子程式 void delay1ms(uint i) 1ms delay program}}void main(void ) main}
-
wei4=0;中間括號丟失。
-
start:mov r5,#00h ;數數單元R5,以下程式應該了解,它們都是教科書式的。
main: mov a,r5
mov dptr,#tab
mov a,@a+dptr
lcall display
cjne,r5,#10,start ;當次數到來時,重新開始。
ljmp main
display: ;數碼管顯示子程式。
lcall dly10ms
dly10ms:..數碼管顯示時間延遲。
tab: db ..數碼管七段電腦表。
-
這已經是老辦法了,最好選擇MAX7219晶元,程式設計控制MAX7219,SPI通訊,3線,方便!
電路圖:
-
當您要傳輸資料時,您應該將 OE 引腳向下拉
-
如果使用 hello 編碼建立表並依次顯示,請使用變數查詢表中的第乙個值,即“h”,並將其傳送到數字。
選取並顯示管道截面,並與體積一起使用。
如果顯示在第乙個數碼管上,則該變數為0,然後在500ms後,將前表中使用的變數加到1,第二個數碼管上顯示第二個數碼管,依此類推。
-
假設是共陰極數碼管,驅動輸入端接MCU的P1埠,共陰極接P2埠。 我的程式如下,目前顯示數字 123
#include
typedef unsigned char uint8;
typedef unsigned int uint16;
typedef long int uint32;
code uint8 number=;
void delay ms(uint16 x) 1ms 延遲時間}void xianshi(uint16 x)delay ms(10);}
main()
-
動態掃瞄,顯示??
-
沒有原理圖,所以白只好編乙個,假設選P0作為zhi段,P2選為位DAO,用373作為鎖存器來控制靜態數碼管的顯示,因為是靜態顯示,所以不需要掃瞄和延時。
#include
#define uchar unsigned char;
uchar distab=;
main()
-
#include
unsigned char code table[6]=; //1~6
void delay(unsigned int i)void main(void)}}
上面的程式有乙個錯誤(i=0; i>5;i++)是不寬容的。
-
還是動態掃瞄?
靜態可以輸出這麼多程式碼點。 除非使用電阻器來構建每個管的段。