字體:小 中 大 | |
|
|
2010/02/19 21:11:01瀏覽9722|回應2|推薦3 | |
8051架構分析 是一個八位元(8-bit)的CMOS單晶片微處理器,符合MCS-51工業標準。 如圖所示,內含4K-byte的快閃記憶體(Flash Memory),可重複燒錄程式達1000次以上;128-byte RAM的程式記憶體,作為程式變數區;並提供32條I/O信號線,2個16-bit的計時器(Timer)、或計數器(Counter),一個雙向串列埠(RS-232 Serial Port),和五個中斷向量功能。 特殊功能暫存器是一塊特殊的記憶體空間,提供8051使用到的才可以存取。當使用者設計程式時,必須注意記憶體的規劃,避免無章法的安排,導致程式記憶體不足或是不合理的重複使用,使程式產生錯亂,無法達成所需要的功能 8051單晶片接腳簡介: 如圖所示為單晶片接腳圖,此單晶片由ATMEL公司所製造,可重複燒錄1000次以上。單晶片必須供應電壓,電源接腳為VCC(pin40)、GND(pin20),工作電壓在4V~6.6V之間,建議使用+5V電源供應器,可保持單晶片工作壽命。 8051單晶片接腳簡介如下: PORT0:包括P0.0~P0.7(pin39~pin32),主要有記憶體擴充位址∕資料匯流排、燒錄時的資料碼輸入與輸出、以及一般I/O等三個功能。 PORT1:包括P1.0~P1.7(pin1~pin8),有燒錄時的低位元組位址與一般I/O兩個功能。 PORT2:包括P2.0~P2.7(pin21~pin28),有記憶體擴充時的高位元組位址匯流排、燒錄時的控制功能、以及一般I/O等三個功能。 PORT3:包括P3.0~P3.7(pin10~pin17),有一般I/O功能與圖5-4所列特殊功能,其中P3.0和P3.1可作為RS-232信號輸出與輸入。 8051 程式燒錄步驟 實習項目: 跑馬燈 零件: 石英晶體 12MHz; 電容 20p 兩個 ; 電容 10u ; LED 紅色 八個 電阻470Ω 八個 程式: ORG 00H START: MOV A,#FFH CLR C MOV R2,#08H LOOP: RLC A MOV P0,A CALL DELAY DJNZ R2,LOOP MOV R2,#07H LOOP1: RRC A MOV P0,A CALL DELAY DJNZ R2,LOOP1 JMP START DELAY: MOV R3,#20 D1: MOV R4,#20 D2: MOV R5,#248 DJNZ R5,$ DJNZ R4,D2 DJNZ R3,D1 RET END 電路圖: 作品: 心得: 這個跑馬燈線路這個線路很好做,也讓我知道程式的特性 實習項目: 音樂電路 零件:石英晶體 12MHz; 電容 20p 兩個 ; 電容 10u; 電阻 1KΩ ; 電阻470Ω ; 電容 0.1u ; 電容 10u ; 電容 0.0047u 程式: ORG 00H SETB TR0 JMP START D1: CALL DELAY ORG 0BH INC 30H START: MOV TMOD,#00000001B JMP NEXT MOV IE,#10000010B END: CLR TR0 START0: MOV 30H,#00 JMP START0 NEXT: MOV A,30H TIM0: PUSH A MOV DPTR,#TABLE PUSH PSW MOV CA,@A+DPTR MOV TL0,20H MOV R2,A MOV TH0,21H JZ END CPL P1.0 ANL A,#0FH POP PSW MOV R5,A POP A MOV A,R2 RETI SWAP A DELAY: MOV R7,#02 ANL A,#0FH D2: MOV R4,#187 JNZ SING D3: MOV R3,#248 CLR TR0 DJNZ R3,$ JMP D1 DJNZ R4,D3 SING: DEC A DJNZ R7,D2 MOV 22H,A DJNZ R5,DELAY RL A RET MOV DPTR,#TABLE1 TABLE1: MOVC A,@A+DPTR DW 64260,64400,64524,64580 MOV TH0,A DW 64684,64777,64820,64898 MOV 21H,A DW 64968,65030,65058,65110 MOV A,22H DW 65157,65178,65217 RL A INC A MOVC A,@A+DPTR MOV TL0,A MOV 20H,A 自創音樂 虎姑婆 TABLE : ;1 DB 82H,01H,81H,94H,84H DB B4H,A4H,04H DB 82H,01H,81H,94H,84H DB C4H.B4H,04H ;2 DB 82H,01H,81H,F4H,D4H DB B4H,A4H,94H DB E2H,01H,E1H,D4H,B4H DB C4H,B4H,04H ;3 DB 82H,01H,81H,94H,84H DB B4H,A4H,04H DB 82H,01H DB C4H,84H,04H ;4 DB 82H,01H,81H,F4H,D4H DB B4H,A4H,94H DB E2H,01H,E1H,D4H,B4H DB C4H,B4H,04H DB 00 END 電路圖: 作品: 心得: 這個音樂線路打什麼程式就有不同的節奏,但是要找出這個節奏是滿困難的,只要肯用是學一定會成功的 實習項目: 電子琴 零件:石英晶體 12MHz; 電容 20p 兩個 ; 電容 10u; 電阻 1KΩ ; 電阻470Ω ; 電容 0.1u ; 電容 10u ; 電容 0.0047u;按鈕開關 16個 程式: ORG 00H MOV 21H,A JMP START MOV A,R1 ORG 0BH RL A JMP TIM0 INC A START: MOV TMOD,#00000001B MOVC A,@A+DPTR MOV IE,#10000010B MOV TH0,A L1: MOV R3,#F7H MOV 20H,A MOV R1,#00H SETB TR0 L2: MOV P2,R3 D4: MOV A,P2 MOV A,P2 XRL A,R4 MOV R4,A JZ D4 SETB C CLR TR0 MOV R5,#04H JMP L1 L3: RLC A TIM0: PUSH A JNC KEYIN PUSH PSW INC R1 MOV TL0,20H DJNZ R5,L3 MOV TH0,21H MOV A,R3 CPL P1.0 SETB C POP PSW RRC A POP A MOV R3,A RETI JC L2 TABLE: JMP L1 DW 64021,64103,64260,64400 KEYIN: MOV R7,#40 DW 64524,64580,64684,64777 D2: MOV R6,#248 DW 64820,64898,64968,65030 DJNZ R6,$ DW 65058,65110,65157,65178 DJNZ R7,D2 END D3: MOV A,R1 RL A MOV DPTR,#TABLE MOVC A,@A+DPTR MOV TH0,A 電路圖: 作品: 心得:這個電子琴的線路,的確比前兩個線路難了一點,可是肯用心一定會成功的,做好之後,程式打進去,就可以輕易的打出16的音,甚至可以彈出 想要心的歌曲 實習項目: 99秒馬錶 零件:石英晶體 12MHz; 電容 20p 兩個 ; 電容 10u ;按鈕開關 1個; 電阻 470Ω 14個 程式: ORG 00H CALL DELAY1 START: ANL P2#00H JB P3.5,$ JB P3.5,$ CALL DELAY1 CALL DELAY1 JNB P3.5,$ JNB P3.5,$ JMP START MOV R0,#00 DELAY: L1: MOV P2,R0 D1: MOV R7,#248 MOV R5,#10 JNB P3.5,L2 A1: MOV R6,#200 DJNZ R7,$ CALL DELAY DJNZ R6,D1 DJNZ R5,A1 RET MOV A,R0 DELAY1: MOV R6,#40 ADD A,#01H D2: MOV R7,#248 DA A DJNZ R7,$ MOV R0,A DJNZ R6,D2 JMP L1 RET L2: CALL DELAY1 END JNB P3.5,$ 電路圖: 作品: 心得: 這個99秒馬錶,是這學期最後一個線路了,這個線路都跟前幾個線路快一樣了,只要肯認真做一定都會成功的! |
|
( 興趣嗜好|電腦3C ) |