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

正文內(nèi)容

pic單片機(jī)原理及應(yīng)用(第三版)上(編輯修改稿)

2025-03-20 13:25 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 Bit2/ WREN: EEPROM寫(xiě)使能位 , 主動(dòng)參數(shù) 。 0: 使能對(duì) EEPROM寫(xiě)操作; 1: 禁止對(duì) EEPROM寫(xiě)操作 。 70 Bit3/ WRERR: EEPROM錯(cuò)誤標(biāo)志位 , 被動(dòng)參數(shù) 。 0: 已完成 EEPROM寫(xiě)操作 , 硬件自動(dòng)清零; 1: 未完成 EEPROM寫(xiě)操作 。 Bit4~ Bit6: 沒(méi)有 啟 用 , 讀出為無(wú)效數(shù)據(jù) 。 Bit7/ EEPGD: FLASH 程 序 存 儲(chǔ) 器 / EEPROM數(shù)據(jù) 存儲(chǔ)器選擇位 , 主動(dòng) 參數(shù) 。 0:選通 EEPROM數(shù)據(jù) 存儲(chǔ)器; 1:選通 FLASH程序存儲(chǔ)器 。 71 EECON2: EEPROM數(shù)據(jù)存儲(chǔ)器讀 /寫(xiě)控制第二寄存器 , 是一個(gè)虛擬寄存器 , 專(zhuān)門(mén)用于EEPROM數(shù)據(jù)存儲(chǔ)器寫(xiě)操作的次序控制 。 72 向 EEPROM數(shù)據(jù)存儲(chǔ)器寫(xiě)數(shù)據(jù)操作比較復(fù)雜 , 占用較長(zhǎng)的時(shí)間 ( 一般為 3~8ms) ,涉及到兩個(gè)控制位 WR、 WREN和兩個(gè)狀態(tài)位EEIF、 WRERR。 向 EEPROM數(shù)據(jù)存儲(chǔ)器寫(xiě)數(shù)據(jù)必須插入一串特殊的指令序列 , 連續(xù)將特定的通用參數(shù)55H和 0AAH寫(xiě)入 EECON2。 向 EEPROM數(shù)據(jù)存儲(chǔ)器寫(xiě)數(shù)據(jù) 73 讀操作相對(duì)來(lái)說(shuō)比較簡(jiǎn)單 , 只使用一個(gè)狀態(tài)位 RD, 用于初始化 EEPROM指定地址的讀操作 。對(duì) EEPROM數(shù)據(jù)存儲(chǔ)器進(jìn)行讀操作時(shí) , RD位置位后 , 數(shù)據(jù)在下一個(gè)指令周期就被存入到 EEDATA寄存器中 , 因此完全可以由下一條指令來(lái)讀取數(shù)據(jù) 。 從 EEPROM數(shù)據(jù)存儲(chǔ)器讀數(shù)據(jù) 74 Microchip公司為 PIC系列單片機(jī)配備了功能強(qiáng)大 、 基于 Windows、 易學(xué)易用的軟件集成開(kāi)發(fā)環(huán)境 MPLAB。 該開(kāi)發(fā)環(huán)境可以使人們?cè)谧约旱奈C(jī)系統(tǒng)上 , 對(duì) PIC系列單片機(jī)進(jìn)行程序的創(chuàng)建 、 錄入 、編輯以及匯編 , 還能方便而靈活地實(shí)現(xiàn)程序的模擬運(yùn)行和動(dòng)態(tài)調(diào)試 , 可以對(duì)實(shí)際應(yīng)用系統(tǒng)進(jìn)行在線仿真和功能模塊開(kāi)發(fā) 。 第 3章 PIC集成開(kāi)發(fā)系統(tǒng) 75 本章主要涉及 MPLAB軟件使用和介紹 ,省略 ! 76 指令是單片機(jī)的領(lǐng)導(dǎo)核心 , 就是指揮 CPU按要求進(jìn)行一系列操作的命令 。 一般來(lái)說(shuō) ,單片機(jī)都具有自己特有的指令系統(tǒng) , 相互之間大都互不兼容 。 PIC單片機(jī)系列按照不同用戶(hù)的要求分成三個(gè)不同的應(yīng)用檔次 。 第 4章 PIC指令系統(tǒng) 產(chǎn)品等級(jí) 指令系統(tǒng) 每條指令字節(jié)長(zhǎng)度 主要代表產(chǎn)品初級(jí) 33 12 PIC12C5XX中級(jí) 35 14 PIC16F87X高級(jí) 58 16 PIC18CXXX77 指令的執(zhí)行時(shí)間總是分解成兩部分:取指過(guò)程和執(zhí)行過(guò)程 , 取指的快慢直接與指令的字節(jié)數(shù)有關(guān) , 而指令的執(zhí)行快慢與時(shí)鐘的振蕩頻率有關(guān) 。 在以往的單片機(jī)結(jié)構(gòu)中 , 程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的地址空間和數(shù)據(jù)傳輸通道都相互并用 , 必須采用分時(shí)操作順序執(zhí)行 。 而 PIC單片機(jī)指令的執(zhí)行過(guò)程是遵循著一種全新哈佛總線體系結(jié)構(gòu)的原則 , 充分利用計(jì)算機(jī)系統(tǒng)在程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器之間地址空間的相互獨(dú)立性 , 取指過(guò)程和執(zhí)行程序可以流水線操作同時(shí)進(jìn)行 。 指令流水線操作原則 78 Flush Fetch 4 Fetch SUB_1 Tcy0 Tcy1 Tcy2 Tcy3 Tcy4 PIC單片機(jī)指令流水線示意 Execute 1 Fetch 3 1. MOVLW 55h Fetch 1 Execute 3 Fetch 2 Execute 2 Fetch 4 2. MOVWF PORTB 3. CALL SUB_1 4. BSF PORTA, BIT3 79 在這種尋址方式中 , 操作數(shù)或其中之一 ( 另一個(gè)是 W) 是立即數(shù) , 隨指令碼攜帶 , 而無(wú)需再到其他地方去尋找 。 ?指令中的操作數(shù)為 8位常數(shù) . ?使用立即數(shù)尋址方式的指令有: movlw, addlw, retlw, etc. 如: ADDLW 16H 指令尋址方式說(shuō)明 14位 立即尋址指令 OP CODE k k k k k k k k 80 ?7位 直接從指令中獲取 ?2位從 ‘ STATUS ’寄存器中獲取 如: IORWF 26H, 0 9位 有效寄存器地址 IRP RP1 RP0 OP CODE TO PD Z DC C STATUS 寄存器 14位指令 f f f f f f f RP1 RP0 f f f f f f f 7位來(lái)自指令字 2位來(lái)自 STATUS 寄存器 81 ?8位 間接地址來(lái)自 FSR (選擇寄存器 ). ?1位 來(lái)自 STATUS 寄存器 . 這是一種比較特別的尋址方式 , 是通過(guò)兩個(gè)寄存器 INDF和 FSR的組合而實(shí)現(xiàn)功能的 。 操作數(shù)是 FSR寄存器內(nèi)容位指針 , 所指向寄存器單元的內(nèi)容 。 82 例如: MOVWF INDF IRP f f f f f f f f f IRP RP1 RP0 TO PD Z DC C f f f f f f f STATUS 寄存器 8位 FSR 寄存器 有效的 9位寄存器地址 8位來(lái)自 FSR 1位來(lái)自 STATUS 寄存器 83 間接尋址實(shí)例 運(yùn)行機(jī)制: a) 清從 0x20 to 0x7F所有的 RAM區(qū)域 b) 間接地址載入 FSR c) 每一次對(duì)‘ INDF’運(yùn)行,由 FSR指向的寄存器被使用 84 例子: movlw 0x20 movwf FSR LOOP clrf INDF incf FSR,F btfss FSR,7 goto LOOP next instruction 0000 0000 0000 0000 FSR = 20h INDF 00h 04h 20h 7Fh 數(shù)據(jù)記憶區(qū) 85 這是 PIC單片機(jī)的特色之一 , 它可以對(duì)所有的 RAM數(shù)據(jù)存儲(chǔ)器進(jìn)行位尋址 , 即置位和清零等 。 如: BSF 26H, 4 ; ( 26H原為 26H) 86 每條指令的字節(jié)長(zhǎng)度為 14位 , 主要由說(shuō)明指令功能的操作碼和參與指令處理的操作數(shù)組成 。 操作碼部分 , 簡(jiǎn)稱(chēng)助記符 , 如表 42核心助記符 , 是借用英語(yǔ)單詞來(lái)間接表達(dá)和定義其操作功能 。 操作數(shù)部分 , 是按照操作碼的操作功能 , 對(duì)操作數(shù)進(jìn)行處理 。 根據(jù)操作數(shù)的源地址和目標(biāo)地址的訪問(wèn)性質(zhì) ,可以有多種表現(xiàn)形式:主要有直接尋址 、 間接尋址 、 立即尋址和位尋址四類(lèi) 。 指令集說(shuō)明 87 核心助記符 助記符 功能說(shuō)明 助記符 功能說(shuō)明ADD 相加 MOV 傳送SUB 相減 RL 左移AND 相與 RR 右移IOR 相或 CLR 清零XOR 相異或 COM 取反INC 加1 RET 返回DEC 減1 BTF 測(cè)試88 指令系統(tǒng)補(bǔ)充字符說(shuō)明 字符 功能說(shuō)明W 工作寄存器(即累加器)f 寄存器地址(取7 位寄存器地址,0 0 H 至7 F H )b 8 位寄存器f 內(nèi)位地址(0 至7 )K 立即數(shù)(8 位常數(shù)或1 1 位地址)、常量或標(biāo)號(hào)L 指令操作數(shù)中含有8 位立即數(shù)kd 目 標(biāo) 地 址 選 擇 : d=0 , 結(jié) 果 至 w ; d=1 , 結(jié) 果 至fFSZ 寄存器f 為0 間跳FSC 寄存器f 的b 位為0 間跳FSS 寄存器f 的b 位為1 間跳( ) 表示寄存器的內(nèi)容(()) 表示寄存器間接尋址的內(nèi)容→ 表示運(yùn)算結(jié)果送入目標(biāo)寄存器89 數(shù)據(jù)傳送類(lèi)指令共有 4條指令 , 主要功能是將數(shù)據(jù)從源地址 ( 或立即數(shù) ) 傳送至目標(biāo)地址中 。 數(shù)據(jù)傳送類(lèi)指令 助記符 操作說(shuō)明 影響的狀態(tài)位 MOVF f,d f 傳送至d Z MOVWF f W 傳送至f MOVLW K K 傳送至w SWAPF f,d f 半字節(jié)交換至d 90 【 例題 41】 請(qǐng)利用數(shù)據(jù)傳送類(lèi)指令編寫(xiě)一段子程序 , 將立即數(shù) 20H傳送到通用寄存器 20H中 。 【 例題 42】 請(qǐng)利用數(shù)據(jù)傳送類(lèi)指令編寫(xiě)一段子程序 , 將通用寄存器 20H和 30H中的內(nèi)容進(jìn)行交換 。 91 算術(shù)運(yùn)算類(lèi)指令是 PIC單片機(jī)指令系統(tǒng)中 ,承擔(dān)運(yùn)算功能的重要部分 , 共有 6條指令 。 主要有加減指令 、 增量和減量指令 算術(shù)運(yùn)算類(lèi)指令 助記符 操作說(shuō)明 影響的狀態(tài)位ADDWF f,d W 加f 至d C 、D C 、ZSUBWF f,d f 減W 至d C 、D C 、ZADDLW K K 加W 至w C 、D C 、ZSUBLW K K 減W 至w C 、D C 、ZINCF f,d f 加1 至d ZDECF f,d F 減1 至d Z92 【 例題 43】 請(qǐng)將通用寄存器 20H、 30H構(gòu)成的 16位數(shù)據(jù)與通用寄存器 40H、 50H構(gòu)成的 16位數(shù)據(jù)相加后放入 40H、 50H 中 , 已知其和不會(huì)超出 65535。 93 邏輯運(yùn)算類(lèi)指令是一組比較復(fù)雜的指令 ,形式較多 , 可以對(duì)位和字節(jié)進(jìn)行邏輯操作 。主要有與 、 或 、 異或 、 清零 、 置位 、 取反和左右移位等 14條指令 。 邏輯運(yùn)算類(lèi)指令 94 助記符 操作說(shuō)明 影響的狀態(tài)位CLRF f f 清零 ZCLRW W 清零 ZCLRWDT W D T 清零 T O 、P DBCF f,b f 的b 位清零 BSF f,b f 的b 位置1 RLF f,d f 帶C 左循環(huán) CRRF f,d f 帶C 右循環(huán) CANDWF f,d W 與f 至d ZIORWF f,d W 或f 至d ZXORWF f,d W 異或f 至d ZANDLW K K 與W 至W ZIORLW K K 或W 至W ZXORLW K K 異或W 至W ZCOMF f,d F 取反至d Z95 【 例題 44】 請(qǐng)將數(shù)據(jù)存儲(chǔ)器 20H和 30H中的數(shù)據(jù)分別與立即數(shù) 20H、 30H相與和相或后相加 ,結(jié)果放入 40H存儲(chǔ)器中 , 請(qǐng)編寫(xiě)相應(yīng) 的程序 。 【 例題 45】 請(qǐng)編寫(xiě)一個(gè)完整的程序 , 將數(shù)據(jù)存儲(chǔ)器 20H低 4位和 30H高 4位組合成一個(gè)八位二進(jìn)制數(shù)據(jù) , 并從 RC端口輸出 。 96 控制轉(zhuǎn)移類(lèi)指令 , 是在指令系統(tǒng)中形式靈活 、 功能較強(qiáng)的一組指令 , 共 11條 。 它們是構(gòu)成程序循環(huán)和跳轉(zhuǎn)的關(guān)鍵要素 , 一般可以分為有條件跳轉(zhuǎn)和無(wú)條件跳轉(zhuǎn)兩大類(lèi) 。 控制轉(zhuǎn)移類(lèi)指令 97 助記符 操作說(shuō)明CALL K 調(diào)用k 處子程序 GOTO K 跳轉(zhuǎn)至K 處 INCFSZ f,d f 加1 至d ,為0 間跳 DECFSZ f,d f 減1 至d ,為0 間跳 BTFSC f,b f 的b 位,為0 間跳 BTFSS f,b f 的b 位,為1 間跳 RETFIE 中斷返回 RETLW K 子程序返回(K 傳遞給w ) RETURN 子程序返回 NOP 空操作 SLEEP 進(jìn)入休眠狀態(tài) T O 、P D98 這是一種比較特殊的轉(zhuǎn)移形式 , 根據(jù)位測(cè)試或加減 1后的內(nèi)容判斷條件的成立與否 , 而決定程序繼續(xù)執(zhí)行還是間跳執(zhí)行指令 。 當(dāng)前判斷語(yǔ)句 A 下一條語(yǔ)句 B 再下一條語(yǔ)句 C 99 PIC指令系統(tǒng)的絕對(duì)轉(zhuǎn)移 , 主要由 CALL和 GOTO語(yǔ)句引出 。 在指令機(jī)器碼內(nèi)部本身并沒(méi)有攜帶完整的轉(zhuǎn)移目標(biāo)地址 , 只包含低 11位地址 , 而高 2位將由 PCLATH寄存器給出 。 【 例題 46】 請(qǐng)將通用寄存器單元 20H2FH, 分別對(duì)應(yīng)賦值 20H2FH, 請(qǐng)編寫(xiě)相應(yīng)的軟件程序 。 100 【 例題 47】 請(qǐng)分析以下程序片段 , 并指出當(dāng)程序執(zhí)行完后 , 涉及到的所有
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1