freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機原理及應(yīng)用c語言版周國運習題答案-wenkub

2023-07-12 13:41:09 本頁面
 

【正文】 L C,MOV ,C16.編寫程序,若累加器A的內(nèi)容分別滿足下列條件,則程序轉(zhuǎn)到LABLE存儲單元。MOV R0,40HMOV R7,10CLR ALOOP:MOV R0,AINC AINC R0DJNZ R7,LOOPSJMP $ 答:把0,1,2,3……數(shù)列送到40H開始的10個單元中。MOV A,R1 ;(A)=70HMOVX DPTR,A ;(1FECH)=70HMOVC A,A+DPTR ;(A)=64HXCHD A,R1 ;(A)=65H10.已知(A)=76H,(R1)=76H,(B)=4,CY=1,片內(nèi)RAM(76H)=0D0H,(80H)=6CH。MOV A,30H 與 MOV A,30H前者表示:(30H)→A 后者表示:30H→AMOV A,R0 與 MOV A,R0前者表示:(R0)→A 后者表示:((R0))→AMOV A,R1 與 MOVX A,R1前者表示:在片內(nèi)數(shù)據(jù)存儲器((R1))→A 后者表示:在片外數(shù)據(jù)存儲器((R1))→AMOVX A,R0 與 MOVX A,DPTR前者R0表示8位地址 后者DPTR表示16位地址MOVX A,DPTR 與 MOVC A,A+DPTR 前者表示:((DPTR))→A 后者表示:((DPTR)+(A))→A8.在MCS51單片機的片內(nèi)RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。4.訪問片外RAM使用什么尋址方式?答: 訪問片外RAM使用寄存器間接尋址5.訪問程序存儲器使用什么尋址方式?指令跳轉(zhuǎn)使用什么尋址方式?答: 訪問程序存儲器使用指令絕對尋址,指令相對尋址。答: MCS51匯編語言指令由四部分組成,其一般格式如下: [標號:] 操作碼 [操作數(shù)] [;注釋]格式中的方括號意為可以沒有相應(yīng)部分,可以沒有標號、操作數(shù)和注釋,至少要有操作碼。另一種退出空閑方式的方法是硬件復(fù)位。17.MCS51單片機有幾種低功耗工作方式?如何實現(xiàn),又如何退出?答: MCS51單片機有空閑和掉電兩種低功耗工作方式。16.MCS51單片機常用的復(fù)位電路有哪些?復(fù)位后機器的初始狀態(tài)如何?答: 復(fù)位電路有兩種方式:上電自動復(fù)位電路和手動復(fù)位電路。顯然,一個狀態(tài)周期包含2個振蕩周期。當把它用作通用I/O口時,輸出級是開漏電路,故用其輸出去驅(qū)動NMOS輸入時外接上拉電阻,這時每一位輸出可以驅(qū)動4個LS型TTL負載。正是這兩個部分,使得P3口除了具有P1口的準雙向I/O口的功能之外,還可以使用各引腳所具有的第2功能。13.MCS51單片機的P0~P3口結(jié)構(gòu)有何不同?用作通用I/O口輸入數(shù)據(jù)時應(yīng)注意什么?答: P2口是一個雙功能口,一是通用I/O口,二是以總線方式訪問外部存儲器時作為高8位地址口。DPTR主要用于存放16位地址,以便對64KB的片外RAM和64KB的程序存儲空間作間接訪問。PC實際是程序的字節(jié)地址計數(shù)器,它的內(nèi)容是將要執(zhí)行的下一條指令的地址,具有自加1功能。堆棧是按照“先進后出”(即先進入堆棧的數(shù)據(jù)后移出堆棧)的原則存取數(shù)據(jù)。8.MCS51單片機復(fù)位后,CPU使用哪組工作寄存器?它們的地址是什么?用戶如何改變當前工作寄存器組?答: MCS51單片機復(fù)位后,CPU使用0組工作寄存器。OV():溢出標志位,有兩種情況影響該位。F0、F1( ):用戶標志位。CY():進位標志。6.簡述MCS51單片機布爾處理器存儲空間分配,片內(nèi)RAM包含哪些可以位尋址的單元。5.簡述MCS51單片機片內(nèi)RAM的空間分配。不同的存儲空間,它們有各自的尋址方式和訪問指令。在訪問片外存儲器時,下降沿用于控制外接的地址鎖存器鎖存從P0口輸出的低8位地址。(9)有一個可尋址64KB外部數(shù)據(jù)存儲器、還可以尋址64KB外部程序存儲器的三總線的控制電路。(5)有一個管理6個中斷源(51子系列1是5個中斷源)、兩個優(yōu)先級的中斷控制器。4.常見的單片機有哪些類型?答: 1.AVR單片機;2.Motorola單片機;3.MicroChip單片機;4.Scenix單片機;5.EPSON單片機;7.GMS90單片機;8.華邦單片機9.Zilog單片機;10.NS單片機;11.AX1001單片機 第2章 MCS51單片機結(jié)構(gòu)與原理1.MCS51單片機內(nèi)部包含哪些主要邏輯功能部件?答:(1)1個8位的微處理器CPU。(8)兒童智能玩具。(5)家用電器。(3)計算機外部設(shè)備與智能接口。單片機可以構(gòu)成各種工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)等。(6)面向控制,能有針對性地解決從簡單到復(fù)雜的各類控制任務(wù),因而能獲得最佳的性能價格比。(2)采用面向控制的指令系統(tǒng)。由于單片機的指令功能是按照工業(yè)控制的要求設(shè)計,所以單片機又稱為微控制器(Micro Controller Unit,MCU)。2.單片機有哪些特點?答: (1)單片機的存儲器ROM和RAM是嚴格區(qū)分的。(3)單片機的I/O引腳通常是多功能的。(7)抗干擾能力強,適用溫度范圍寬。如數(shù)控機床、自動生產(chǎn)線控制、電機控制、測控系統(tǒng)等。如圖形終端機、傳真機、復(fù)印機、打印機、繪圖儀、磁盤/磁帶機、智能終端機等。如微波爐、電視機、空調(diào)、洗衣機、錄像機、音響設(shè)備等。(9)汽車、建筑機械、飛機等大型機械設(shè)備。(2)8KB的片內(nèi)程序存儲器Flash ROM(51子系列的Flash ROM為4KB),用于燒錄運行的程序、常數(shù)數(shù)據(jù)。(6)4個8位并行I/O端,每個端口既可以用作輸入,也可以用于輸出。2.MCS51單片機的引腳有何功能?信號為何種電平?答: 為片外程序存儲器選擇輸入端。在沒有接外部存儲器時,可以將該引腳的輸出作為時鐘信號使用。片內(nèi)數(shù)據(jù)存儲空間用MOV指令訪問。內(nèi)部RAM低128字節(jié)分為哪幾個主要部分?各部分主要功能是什么?答: 片內(nèi)數(shù)據(jù)存儲器按照尋址方式,可以分為三個部分:低128字節(jié)數(shù)據(jù)區(qū),高128字節(jié)數(shù)據(jù)區(qū)間,特殊功能寄存器區(qū)。位地址7DH與字節(jié)地址7DH如何區(qū)別?位地址7DH具體在片內(nèi)RAM中的什么位置?答:低128字節(jié)數(shù)據(jù)區(qū)的位尋找區(qū)和高128字節(jié)數(shù)據(jù)區(qū)的某些可位尋址的特殊功能寄存器。在執(zhí)行加減運算指令時,如果運算結(jié)果的最高位(D7)發(fā)生了進位或借位,則CY由硬件自動置1。用戶可以根據(jù)需要對F0、F1賦予一定的含義,由用戶置1和清0,作為軟件標志。一是執(zhí)行加減運算時,如果D7或D6任一位,并且只一位發(fā)生了進位或借位,則OV自動置1, P():奇偶標志位。它們的地址是00H~07H。堆棧指針SP是一個8位寄存器,其值為棧頂?shù)牡刂罚粗赶驐m?,SP為訪問堆棧的間址寄存器。改變PC的內(nèi)容就可以改變程序執(zhí)行的方向。11.測試哪個引腳,可以快捷地判斷單片機是否正在工作?答: 若要檢查單片機是否工作,可以使用示波器查看ALE引腳是否有脈沖信號輸出。其端口某一位的結(jié)構(gòu)如圖211所示,對比圖210知,與P1口的結(jié)構(gòu)類似,驅(qū)動部分基本上與P1口相同,但比P1口多了一個多路切換開關(guān)MUX和反相器3。P0多了一路總線輸出(地址/數(shù)據(jù))、總線輸出控制電路(反相器3和與門4)、兩路輸出切換開關(guān)MUX及開關(guān)控制C,并且把上拉電阻換成了場效應(yīng)管T1,以增加總線的驅(qū)動能力。用作輸入時,應(yīng)先向端口鎖存器寫1。機器周期(MC):1個機器周期由6個狀態(tài)周期、即12個振蕩周期組成,是量度指令執(zhí)行時間的單位。復(fù)位后,程序計數(shù)器PC變?yōu)?000H,使單片機從程序存儲器地址0000H單元開始執(zhí)行。當CPU執(zhí)行完置IDL=1的指令后,系統(tǒng)就進入空閑方式。當CPU執(zhí)行完置PD=1的指令后,系統(tǒng)就進入掉電工作方式。其操作數(shù)部分最多可以是兩項: [第1操作數(shù)] [,第2操作數(shù)]2.何謂尋址方式?MCS51單片機有哪些尋址方式,是怎樣操作的?各種尋址方式的尋址空間和范圍是什么?答: MCS51單片機有7種尋址方式:立即數(shù)尋址、寄存器尋址、直接尋址、寄存器間接尋址、變址尋址、位尋址和指令尋址。指令跳轉(zhuǎn)使用指令絕對尋址,指令相對尋址。請說明下面各是什么指令和尋址方式,以及每條指令執(zhí)行后目的操作數(shù)的結(jié)果。試分析下列各條指令執(zhí)行后目標操作數(shù)的內(nèi)容和相應(yīng)標志位的值。13.閱讀下面程序段,說明該段程序的功能。設(shè)A中存放的的無符號數(shù)。MOV R0,30HMOV 51H,0NEXT:CJNE R0,00H,NEXT2INC 51HNEXT2:INC R0CJNE R0,51H,NEXT19.在片外RAM中有一個數(shù)據(jù)塊,存有若干字符、數(shù)字,首地址為SOURCE要求將該數(shù)據(jù)塊傳送到片內(nèi)RAM以DIST開始的區(qū)域,直到遇到字符“$”時結(jié)束($也要傳送,它的ASCII碼為24H)。編寫程序?qū)⑺鼈兿嗉?,結(jié)果的BCD碼存放在30H~33H中。長整型變量(long)為4個字節(jié),即32位,其存儲方法與整型數(shù)據(jù)一樣,是最高位字節(jié)保存的地址最低(在最前面),最低位字節(jié)保存的地址最高(在最后面)。通過寄存器傳遞速度最快。聲明格式如下:extern 返回值類型 函數(shù)名(參數(shù)表);12.在C51中如何定義模塊名?在C51文件中的模塊名是什么?答:模塊定義格式如下:NAME 模塊名13.在匯編語言文件中:怎樣聲明函數(shù)段?怎樣聲明公共函數(shù)?怎樣聲明引用函數(shù)?怎樣聲明引用變量?定義函數(shù)的格式是什么?答:對本模塊定義的函數(shù)段作聲明,其格式為:?PR?函數(shù)名?模塊名 SEGMENT CODE公共函數(shù)聲明。聲明格式如下: extern 返回值類型 函數(shù)名(參數(shù)表);例如: extern unsigned char right_shift ( char, char )。(3)定義長度為20的無符號字符型數(shù)組data_buf于IDATA區(qū)中。 (2)unsigned char data TL0_L _at_ 0x30, TH0_H _at_ 0x31。 sbit flag_machine2=status^3。 sbit flag_calcu2=status^7。答:(1)sfr T2CON=0xc8。sfr TL2=0xcc。 sbit TR2=T2CON^2。 sbit EXF2=T2CON^6。sbit ET2=EI^5。sbit P0_2=P0^2。sbit P0_6=P0^6。unsigned char data key_buffer[5]。i5。要求把低位數(shù)作為低下標元素。for(i=0。}shu[4]=temp。 dpt=0x40。i++) *(dpt+i)=*(xdpt+i)。P1=temp。}}23.某單片機系統(tǒng)的P2口接一數(shù)模轉(zhuǎn)換器DAC0832輸出模擬量,現(xiàn)在要求從DAC0832輸出連續(xù)的三角波,實現(xiàn)的方法是從P2口連續(xù)輸出按照三角波變化的數(shù)值,從0開始逐漸增大,到某一最大值后逐漸減小,直到0,然后再從0逐漸增大,一直這樣輸出。 zhou=zhou1。jzhou/max。 for(j=0。試編寫一函數(shù),對存放在片內(nèi)數(shù)據(jù)存儲器中從0x50開始的20個單元的采樣數(shù)據(jù)用冒泡法排序進行中值濾波,把得到的采樣數(shù)據(jù)存放到0x4f單元中。 for(j=20。*(ptr+i+1)=*(ptr+i)。試編寫一函數(shù),對存放在片外數(shù)據(jù)存儲器中從0x150開始的16個單元的采樣數(shù)據(jù),用選擇法進行“去極值平均濾波”,把得到的采樣數(shù)據(jù)存放到0x14f單元中。ptr1=0x4f。i++) { if(*(ptr+i)*(ptr+i+1)) {temp=*(ptr+i+1)。for(i=0。}26.利用庫函數(shù)_getkey編寫一函數(shù),實現(xiàn)從單片機串行口接收數(shù)據(jù)的C51程序,把接收的數(shù)據(jù)存放在片內(nèi)數(shù)據(jù)存儲器從0x40開始的區(qū)域,遇到回車符CR(ASCII碼是0x0d)結(jié)束。while(1){ temp=_getchar()。}}27.利用庫函數(shù)scanf編寫一函數(shù),實現(xiàn)從單片機串行口接收數(shù)據(jù)的C51程序,把接收的數(shù)據(jù)存放在片外數(shù)據(jù)存儲器從0x240開始的區(qū)域,遇到回車符CR(ASCII碼是0x0d)結(jié)束。while(1){ scanf(“%c”,amp。 i++。 dpt=0x50。include void main(){ unsigned char xdata *xdpt。 i++。sfr TIMER_L=0x8a。 TIMER_L=15536%16。 while(1)。 if(bfm==10) { bfm=0。} if(fen==60) { fen=0。如果用全速運行命令Go,可以使用Stop Running命令停止運行。方法2:用命令或命令按鈕。在調(diào)試狀態(tài)下,點擊View菜單下的Project Window命令或?qū)?yīng)的按鈕,就會顯示或隱藏工程管理器窗口,然后點擊窗口下邊的寄存器標簽,即顯示出寄存器窗口。 Call Stack Window命令或?qū)?yīng)的按鈕,就會顯示出或隱藏起變量窗口。在程序運行中,可以觀察這些顯示的變量的變化,也可以用鼠標點擊修改它們的值。在4個顯示區(qū)上邊的“Address”欄輸入不同類型的地址,可以觀察不同的存儲區(qū)域。高128字節(jié)顯示的也是數(shù)據(jù)區(qū)的內(nèi)容,而不是特殊功能寄存器的內(nèi)容。除了程序存儲器中的數(shù)據(jù)不能修改之外,其它3個區(qū)域的數(shù)據(jù)均可修改。在程序運行時,各個片內(nèi)外設(shè)的狀態(tài)會不斷地變化,為了隨時觀察它們的變化,可以啟用View菜單下的Periodic Windows Update命令,讓Keil C自動周期刷新各個調(diào)試窗口。
點擊復(fù)制文檔內(nèi)容
化學相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1