① 51單片機編寫lcd1602顯示程序,第一行顯示自己的姓名,第二行顯示學號
1、首先我們打開Keil μVision編譯器,新建一個工程,然後保存在硬碟上的位置,然後選擇Atmel-AT89C51單片機為模型,並啟動器添加STARTUP.A51文件,然後在當前目禪昌錄下新建一個C文件,並將其添加入工作路徑。
② 51單片機怎麼讓數碼管顯示學號用匯編語言
數碼管連接電路如圖1所示,P0口輸出碼型,P2口輸出位選。鎖存器74HC573起驅動作用,提供驅動電流供數碼管發光。解碼器74HC138將位選地址轉換成位選信號,例如當前是第5個數碼管顯示,那麼P2口輸出位選地址05H,解碼器輸入CBA=110,輸出位選信號Y7-Y0=11101111,其中Y5=0,第5個數碼管選通並顯示,其它數碼管不顯示。實驗時將J6的左邊兩個引腳針(1和2)用跳冒連接,鎖存器11腳接VCC,關閉鎖存功能。
數碼管顯示方式為動態掃描方式,當P0口送絕搏第一個數0的碼型到鎖存器時,P2送位選地址01H,即Y0=0,只有第一個數碼管亮,宏宏枯顯示0,其他數碼管不顯示。當P0口送第二個數1的碼型到鎖存器時,P2送位選地址02H,即Y1=0,只有第二個數碼管亮,顯示1,其他數碼管不顯示。即每次只有一個數碼管點亮,8個數碼管是輪流被點亮的,輪流點亮的間隔時間很短(一般用延時程序延時幾個毫秒),由於視覺蔽洞的暫留現象,看到的卻好象全都點亮著,這就是動態掃描。
數碼管顯示數字的碼型由數碼管的數據腳a~dp決定,圖2為數碼管的筆段分布圖,由於是共陰極的,所以當a~dp為高電平時相應的筆段會亮,電路中P1.0~P1.7分別接數碼管的a.b.c.d.e.f.g.dp,得到0~9這10個數字的碼型如表1所示。
圖2數碼管的筆段分布圖
引腳 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1P0.0數字碼型
筆段 dp g f e d c ba
0 0 1 1 1 1 11 03FH
0 0 0 0 0 1 10 106H
0 1 0 1 1 0 11 25BH
0 1 0 0 1 1 11 34FH
0 1 1 0 0 1 10 466H
0 1 1 0 1 1 01 56DH
0 1 1 1 1 1 01 67DH
0 0 0 0 0 1 11 707H
0 1 1 1 1 1 11 87FH
0 1 1 0 1 1 11 96FH
1 0 0 0 0 0 00 小數點80H
只要把上面的相關數,改成學好就可以了。
③ 51單片機動態顯示學號後8位
uchar buff[8]={1,2,3,4,5,6,7,8};//假設12345678就是你的學號後8位
uchar table[10]={..............};//0-9的七段碼
while(1){for(i=0;i<8;i++){weila=1;
//打開位鎖存器P0=1<<i;
//送位碼weila=0;
delay_ms(2);
anla=1;//打開段鎖存器
P0=table[ 7-i];//送段碼
ana=0;
delay_ms(2);
這里還可以加其它語句,但不要佔用時間太長
(3)51單片機顯示學號擴展閱讀:
區別:
同樣的一段程序,在各個單片機廠家的硬體上運行的結果都是一樣的,如ATMEL的89C51(已經停產)、89S51,PHILIPS,轎含搭和WINBOND等。
常說的已經停產的89C51指的是ATMEL公司的AT89C51單片機,同時是在原基礎上增強了許多特性,如時鍾,更優秀的是由Flash存儲器取代了原來的ROM(一次性寫入),AT89C51的性能相對於8051已經算是非常優越的了。
不過在市場化方面,89C51受到了PIC單片機陣營的挑戰,89C51最致命的缺陷在於不支持ISP(在線更新老敬程序)功能,必須加上ISP功能等新功能才能更好延續MCS-51的傳奇。
89S51就是閉拿在這樣的背景下取代89C51的,89S51已經成為了實際應用市場上新的寵兒,作為市場佔有率第一的Atmel公司已經停產AT89C51,將用AT89S51代替。89S51在工藝上進行了改進,89S51採用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。