A. mcs-51單片機有幾種定址方式 適用於什麼地址空間
直接定址方式:操作數的地址由指令直接給出,適用於片內RAM的所有地址空間;如MOV A, 68HMOV A,PSW
寄存器定址方式:指令給出的是寄存器的編碼,操作數在編碼指定的寄存器中,適用於片內00H至1FH的32個位元組,用RO,-,R7表示,通過PSW的RS1和RSO選擇組號確定對應32個位元組中的其中8個,還有累加器A,以及乘除法指令中的A和B寄存器,位定址方式中的布爾累加器C;
MOV A, R1
MUL AB
INC DPTR
寄存器間接定址方式:指令給出的是寄存器的編碼,操作數地址在編碼指定的寄存器中,適用於片內RAM的全部空間,其中52系列中的80H至FFH只能用寄存器間接定址;如MOV A, @RO
MOV A,@R1
MOVX A, @DPTR
立即定址方式:操作數本身在指令中直接,給出適用於用8位立即數對片內RAM所有地址單元賦值,也可用16位立即數對DPTR賦值; 如
MOV A,#0E2H
MOV DPTR, #2000H
變址定址方式:以DPTR或PC作為基地址寄存器,以累加器A作為變址寄存器,將基址寄存器與變址寄存器的內容相加形成操作數的實際地址的一種定址方式,變址定址方式適用於程序存儲器ROM,僅有三條指令如下:
MOVC A, @A+DPTR
MOVC A, @A+PC
JMP @A+DPTR
位定址方式:指令中直接給出操作數所在單元的位地址,適用於片內RAM中地址20H至2FH中的16個位元組中的128個位地址空間和80H至FFH中地址中可以被8整除的所有SFR中的每個位地址空間;如
MOV C,7FH
MOV F0, C
MOV C,ACC. 7
相對定址方式:為相對轉移指令而設,指令中直接給出轉移的相對偏移量,其轉移目標在當前指令-128至+127位元組范圍內的地址空間。如
SJMP START
HERE: SJMP HERE ;等效於: SJMP $
B. MCS 51單片機現在使用的廣泛嗎還有那些比較好的單片機
MCS51是最基礎的單片機,用的還是蠻廣泛的,學習它可以作為學習其他單片機的入門步驟,學會了再熟悉其他單片機會很容易上手,因為基本道理都是一樣的。
比較好的單片機有PIC單片機、AVR單片機、MSP430單片機等等,各有各的優點,比如AVR單片機型號多樣,可以根據要實現的功能選擇不同型號,MSP430單片機尺寸小功耗低,一般用在電池供電的小型手提設備上,等等吧
C. MCS-51單片機原理及應用技術教程的介紹
《MCS-51單片機原理及應用技術教程》由高洪志編寫,人民郵電出版社於2009年出版發行。該書以MCS-51單片機為學習平台,講解了單片機的組成原理、各功能模塊的使用方法及擴展方法。全書共10章。內容包括單片機的種類、功能及用途;MCS-51單片機的組成;MCS-51單片機指令系統和匯編語言程序設計;單片機內部各種硬體資源的組成、工作原理及編程使用方法;C語言在單片機編程中的使用方法;單片機擴展和介面技術,包括I/O擴展、存儲器擴展、人機介面擴展以及模擬介面擴展;串列通信技術,並給出了案例;系統設計開發方法、調試方法和抗干擾技術以及用C51語言編寫了單片機課程的部分實訓案例。
D. 簡述MCS_51單片機的主要應用領域和應用途徑
小家電各種儀器儀表,如速度表計價器頻率計列印機充電器等可以簡化控制電路,便於功能修改和升級
E. MCS-51系列單片機定時/計數器的定時功能和計數功能分別應用於什麼場合
定時器和計數器本質上講都是計數器,定時器使用機器時鍾做計數源,因為機器時鍾是穩定性好,時鍾數就是時間,所以叫定時器。
當計數器用時,使用的是外部輸入的脈沖,當需要統計外部的計數源時使用。
F. 設計一個MCS—51系列單片機具體應用的例子,並進行詳細的解釋
;簡單的時鍾程序
BUFF_KEY EQU 21H ;鍵盤鍵
LED1 EQU 22H ;數碼管顯示緩存
LED2 EQU 23H
LED3 EQU 24H
LED4 EQU 25H
LED5 EQU 26H
LED6 EQU 27H
LED_LP EQU 28H ;T0鍵盤顯示掃描緩存
HOR EQU 30H ;小時值緩存
MIN EQU 31H ;分鍾值緩存
SEC EQU 32H ;秒值緩存
F_BEEP BIT 01H
LED_PORT EQU P0
DIG_PORT EQU P2
SW1 BIT P3.0
SW2 BIT P3.1
SW3 BIT P3.2
SW4 BIT P3.3
SW5 BIT P3.4
SW6 BIT P3.5
BEEP BIT P1.6
org 000h
JMP main
ORG 00BH
JMP T0_INT
ORG 100H
MAIN: MOV SP ,#40H
MOV PSW,#00H
MOV R0,#7FH ;初始化RAM區,
CLR_RAM:MOV A,#00H
MOV @R0,A
DJNZ R0,CLR_RAM
MOV P1,0FFH ;INIT
MOV P2,0FFH
MOV P0,0FFH
MOV P3,0FFH
MOV HOR,#12
MOV TMOD,#21h
MOV TH0,#240 ;T0=4MS
MOV TL0,#96
SETB TR0
SETB ET0
SETB EA
WAIT_KEY: ;等候按鍵!
JNB SW1,SW1_OK
JNB SW2,SW2_OK
JNB SW3,SW3_OK
JNB SW4,SW4_OK
JNB SW5,SW5_OKA
JNB SW6,SW6_OKA
JMP WAIT_KEY
SW5_OKA: JMP SW5_OK
SW6_OKA: JMP SW6_OK
SW1_OK: MOV A,HOR
CJNE A,#24,SW1_OVER
MOV HOR,#00H
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW1_OVER:INC HOR ;時加1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW2_OK: MOV A,HOR
CJNE A,#00,SW2_OVER
MOV HOR,#23
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW2_OVER:DEC HOR ;時減1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
JMP WAIT_KEY
SW3_OK: MOV A,MIN
CJNE A,#59,SW3_OVER
MOV MIN,#00H
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW3_OVER:INC MIN ;分加1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW4_OK: MOV A,MIN
CJNE A,#00,SW4_OVER
MOV MIN,#59
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW4_OVER:DEC MIN ;分減1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW5_OK: MOV A,SEC
CJNE A,#59,SW5_OVER
MOV SEC,#00H
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW5_OVER:INC SEC ;秒加1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW6_OK: MOV A,SEC
CJNE A,#00,SW6_OVER
MOV HOR,#59
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
SW6_OVER:DEC SEC ;時減1
SETB F_BEEP
CLR BEEP
LCALL DEL
SETB BEEP
CLR F_BEEP
JMP WAIT_KEY
DEL: MOV R5,#03 ;為演示方便,人為插入的延時
DEL01: MOV R6,#200
DEL02: MOV R7,#200
DJNZ R7,$
DJNZ R6,DEL02
DJNZ R5,DEL01
RET
BIN_BCD: MOV B,#10
DIV AB
RET
;------------- T0 INTRRUPT 數碼管掃描定時中斷---------------------------
T0_INT: PUSH ACC
PUSH PSW
MOV TH0,#240 ;T0=4MS
MOV TL0,#96
INC LED_LP
MOV A,LED_LP
CJNE A,#250,CONT_SCAN ;250*4MS=1S
MOV LED_LP,#00H
INC SEC
MOV A,SEC
CJNE A,#60,CONT_SCAN
MOV SEC,#00H
INC MIN
MOV A,MIN
CJNE A,#60,CONT_SCAN
MOV MIN,#00H
INC HOR
MOV A,HOR
CJNE A,#24,CONT_SCAN
MOV HOR,#00H
clr beep
clr p1.0
lcall del
setb beep
setb p1.0
CONT_SCAN:MOV A,SEC
LCALL BIN_BCD
MOV LED6,B
MOV LED5,A
MOV A,MIN
LCALL BIN_BCD
MOV LED4,B
MOV LED3,A
MOV A,HOR
LCALL BIN_BCD
MOV LED2,B
MOV LED1,A
MOV A,LED_LP
MOV B,#06
DIV AB
MOV A,B
RL A
MOV DPTR,#TAB_SCAN
JMP @A+DPTR
TAB_SCAN: AJMP SCAN_L1
AJMP SCAN_L2
AJMP SCAN_L3
AJMP SCAN_L4
AJMP SCAN_L5
AJMP SCAN_L6
SCAN_L1: MOV DIG_PORT,#11111110B
MOV A,LED1
JMP END_SCAN
SCAN_L2: MOV DIG_PORT,#11111101B
MOV A,LED2
JMP END_SCAN
SCAN_L3: MOV DIG_PORT,#11110111B
MOV A,LED3
JMP END_SCAN
SCAN_L4: MOV DIG_PORT,#11101111B
MOV A,LED4
JMP END_SCAN
SCAN_L5: MOV DIG_PORT,#10111111B
MOV A,LED5
JMP END_SCAN
SCAN_L6: MOV DIG_PORT,#01111111B
MOV A,LED6
END_SCAN: MOV DPTR,#TAB_LED
MOVC A,@A+DPTR
MOV LED_PORT,A
JNB F_BEEP,EXIT_T0
CLR BEEP
EXIT_T0: POP PSW
POP ACC
RETI
TAB_LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;共陽字碼表
END
G. 試舉例說明mcs-51單片機在現實生活中的應用,並說明哪些功能被使用及實現的過
38./RD
39.6個
40.片外數據存儲器
41.自然優先順序最先訪問
42.自然優先順序最後訪問
43.EA接地,只訪問片內程序存儲器,EA接高電平,先訪問片內程序存儲器,超過4KB范圍訪問片外程序存儲器
44.MOV訪問片內數據存儲器,MOVX訪問片外數據存儲器
45.P0
46.P0
47.讀出數據操作
48./PSEN
49.外部中斷0
H. MCS51、MCS52單片機的使用手冊
A005光碟目錄
1、一組C-51的程序設計 2、C51設計遙控器
3、Franklin C-51手冊 4、一個C51討論組的壓縮包1
5、FrankLin For Windows使用經驗談 6、AT89C 系列單片機解密原理
7、一個C51討論組的壓縮包 8、微型列印機的C語言源程序
9、6B595或74HC595的C語言源程序 10、24C02串列EEPROM的C語言源程序
11、日歷時鍾DS12887或146818的C語言源程序 12、串列4路DAC TLC5620的C語言源程序
13、串列8位ADC TLC0831或TLC0832的C語言源程序 14、電力載波晶元PM2300與89C2051的介面電路
15、80C31與PC機AT匯流排介面卡 16、感測器信號採集電路
17、雙音頻紅外接收和5087鍵盤電路 18、雙音頻8870接收電路
19、雙音頻紅外遙控器發射電路 20、用74373,74573鎖存器擴展I/O埠的方法
21、用74164串入並出移位寄存器擴展89C2051輸出埠 22、用74165並入串出移位寄存器擴展89C2051輸入埠
23、6位LED數碼管顯示模塊 24、8位LED顯示板
25、MPLAB集成開發環境軟體 26、MPASM用戶指南(包括MPLINK和MPLIB)
27、1000米語音立體聲調頻發射
28、315M遙控發射/接收電路的製作
29、微波報警器 30、定時控制器
31、裝在火柴盒裡的竊聽器
32、遠距離FM調頻發射電路
33、10公里雙向可視對講系統 34、LED顯示電腦電子鍾
35、可直接用於無線發射的UHF頻段調制盒 36、調頻廣播發射機
37、一個多用途信號發生器
38、實用電動窗簾電路
39、無線電遙控發射、接收頭的製作 40、串列E2PROM--24C××讀寫器
41、PIC單片機編程器的自製 42、初學單片機幾個不易掌握的概念
43、用單片機實現通用存貯器IC卡的讀寫 44、EM78系列單片機原理與應用技術
45、印刷電路板的基本設計方法和原則要求 46、Intel hex 文件格式解密
47、自製2051單片機編程器 48、AT89C系列單片機燒寫器的自製
49、利用80C31單片機串列口實現多個LED
顯示的一種簡單方法
50、基於PIC單片機的智能IC卡燃氣表電控系統設計
51、由單片機和多片DS1820組成的
多點溫度測控系統 52、MCS-51系列單片機在SDH系統中的應用
53、異種單片機共享片外存儲器及其與微機通信的方法 54、基於Intel80C196的通用伺服控制系統
55、12位A/D轉換器ADS7804與51單片機的介面及程序設計
56、12位500KHz六通道同時采樣的A/D轉換器ADS7864及應用
57、單片機大容量FLASHRAM的擴展
58、單片機外圍電路中的低功耗技術
59、基於MC68HC05CL16的可配置型電話計費器的設計和實現
60、W78E516及其在系統編程的實現
61、AVR單片機在柴油機轉速測量中的應用
62、串列EEPROM X24128及其與AT89C51的介面及編程
63、用多路復用器擴展MCU串口
64、一種高性能攜帶型PIC單片機濕度檢測儀的研製
65、單片機微處理器AT89C51在時隙變換和
控制中的應用
66、自製MSP430FET140模擬器的原理圖和PCB板圖
I. MCS-51單片機P0口、P1口分別有哪些應用功能
MCS-51單片機P0口有哪些應用功能?答:P0口是三態雙向口,通稱數據匯流排口,因為只有該口能直接用於對外部存儲器的讀/寫操作。P0口還可以用來輸出外部存儲器的第8位地址。由於是分時輸出,故應在外部加鎖存器將此地址數據鎖存,地址鎖存信號用ALE。MCS-51單片機P1口有哪些應用功能?答:MCS-51單片機的P1口是專門供用戶使用的I/O口,用戶可以利用它作為I/O口線使用。P1口是准雙向口。