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

正文內(nèi)容

單片機(jī)應(yīng)用技術(shù)第9章-文庫吧資料

2025-05-20 11:46本頁面
  

【正文】 , 當(dāng) WP為高電平時(shí)存儲(chǔ)器只讀; 當(dāng) WP為低電平時(shí)存儲(chǔ)器可讀可寫。 其引腳定義如下: ? SCL:串行時(shí)鐘端。 解: AT24C01是 Atmel公司生產(chǎn)的具有 I2C總線接口的 E2PROM,是目前應(yīng)用較多的 AT24C 系列存儲(chǔ)器中的一種,芯片存儲(chǔ)容量為 1Kb(128 8位 )。要發(fā)送的字節(jié)數(shù)存放在 R5中,要發(fā)送的數(shù)據(jù)塊的第一個(gè)數(shù)據(jù)的地址為 40H,外圍器件的地址存放在 60H中,參考程序如下: WDBYT: LCALL START ;起始 WLP1: MOV A, 60H ;設(shè) 60H為存放的控制字 LCALL WOBYT ;發(fā)送讀控制字節(jié) LCALL TACK ;檢查應(yīng)答位 JB 30H, WLP1 ;無應(yīng)答位,重發(fā) MOV R0, 40H ; 40H為第一個(gè)數(shù)據(jù)的首地址 WLP2: MOV A, R0 ;讀一個(gè)字節(jié)數(shù)據(jù) LCALL WOBYT ;發(fā)送 LCALL TACK ;檢查應(yīng)答位 JB 30H, WLP1 ;無應(yīng)答位,重發(fā) INC R0 ;指向下一個(gè)要發(fā)送的數(shù)據(jù) DJNZ R5, WLP2 ;要發(fā)送數(shù)據(jù)未發(fā)完,再發(fā)送 LCALL STOP ;全部數(shù)據(jù)發(fā)完,停止 RET ;返回 I2C總線的軟件模擬 根據(jù) I2C總線協(xié)議,同樣可編寫多個(gè)字節(jié)數(shù)據(jù)接收子程序。 I2C總線起始字節(jié)如下圖所示。 I2C總線的字節(jié)數(shù)據(jù)傳送如下圖所示。應(yīng)答位檢查子程序如下: TACK: SETB SDA ;設(shè)置 SDA為輸入方式 SETB SCL ;產(chǎn)生第 9個(gè)時(shí)鐘脈沖 NOP ; NOP的數(shù)目根據(jù)時(shí)鐘頻率確定 NOP ;此處用 NOP來延時(shí) CLR 30H MOV C, SDA JNC TEND ;若正常應(yīng)答,則轉(zhuǎn)移 SETB 30H TEND: CLR SCL RET I2C總線的軟件模擬 根據(jù) I2C總線協(xié)議,數(shù)據(jù)在時(shí)鐘線為低電平時(shí)變化,高電平時(shí)穩(wěn)定,每一個(gè)時(shí)鐘脈沖傳送一位。 發(fā)送 A CK 發(fā)送 A CK SDA SCL I2C總線的軟件模擬 (1) 發(fā)送應(yīng)答位 ACK 由上圖可知,當(dāng)發(fā)送應(yīng)答位 ACK時(shí),只需將 SDA設(shè)為低電平、SCL設(shè)為高電平,其區(qū)間的長短根據(jù)晶振的頻率確定,即改變下列子程序中的 NOP數(shù)即可達(dá)到要求,發(fā)送 ACK子程序如下: YACK: CLR SDA SETB SCL NOP ; NOP的數(shù)目根據(jù)時(shí)鐘頻率確定 NOP ;此處用 NOP來延時(shí) CLR SCL SETB SDA RET I2C總線的軟件模擬 (2) 發(fā)送非應(yīng)答位 由上圖可知,當(dāng)發(fā)送非應(yīng)答位 ACK時(shí),只需將 SDA設(shè)為高電平、 SCL設(shè)為高電平,其區(qū)間的長短根據(jù)晶振的頻率確定,即改變下列子程序中的 NOP數(shù)即可達(dá)到要求,發(fā)送 ACK子程序如下: YNACK: SETB SDA SETB SCL NOP ; NOP的數(shù)目根據(jù)時(shí)鐘頻率確定 NOP ;此處用 NOP來延時(shí) CLR SCL CLR SDA RET I2C總線的軟件模擬 根據(jù) I2C總線協(xié)議,在接收到一個(gè)字節(jié)后,要發(fā)送一個(gè)應(yīng)答位以供檢查,此時(shí)可設(shè)置一個(gè)標(biāo)志位表示應(yīng)答狀態(tài)。 I2C總線的應(yīng)答位和非應(yīng)答位如下圖所示。模擬時(shí)序產(chǎn)生時(shí)鐘 SCL和 SDA發(fā)送的停止條件子程序如下: 使用不同頻率的晶體振蕩器,則要相應(yīng)增刪程序段中 NOP指令的條數(shù),以滿足時(shí)序的要求。模擬時(shí)序產(chǎn)生時(shí)鐘 SCL和 SDA發(fā)送的起始條件子程序如下: 使用不同頻率的晶體振蕩器,則要相應(yīng)增刪程序段中 NOP指令的條數(shù),以滿足時(shí)序的要求。 分別用 I2C總線的時(shí)鐘線和數(shù)據(jù)線,則可給時(shí)鐘線 SCL和數(shù)據(jù)線 SDA賦值。 ? 嚴(yán)格、完善的規(guī)范,并將這些規(guī)范的應(yīng)用盡可能 “ 傻瓜 ” 化,除了有充分的硬件支持外,在軟件方面, Philips公司為用戶提供了一套完善的總線狀態(tài)處理軟件包,以致于用戶可以不去熟悉 I2C總線的規(guī)范,不去理睬總線的管理方法,只要掌握 I2C總線的應(yīng)用程序設(shè)計(jì)方法就可方便地使用 I2C總線,并且能很快地掌握 I2C總線系統(tǒng)的軟、硬件設(shè)計(jì)方法。 ? I2C總線有嚴(yán)格的規(guī)范,如接口的電氣特性、信號(hào)時(shí)序、信號(hào)傳輸?shù)亩x、總線狀態(tài)設(shè)置、總線管理規(guī)則及總線狀態(tài)處理等。 這些基本時(shí)序包括:啟動(dòng) 、 寫字節(jié) 、 讀字節(jié) 、 應(yīng)答位 、 停止信號(hào) ,并可以組合成兩個(gè)子程序:讀 N字節(jié)子程序、寫 N字節(jié)子程序。 ? I2C的 主要命令 只有 讀 、 寫 兩種,雖然讀寫的字節(jié)根據(jù)具體器件的不同而不同,但其時(shí)序關(guān)系不會(huì)發(fā)生改變。 I2C總線的結(jié)構(gòu)原理 ? I2C總線上數(shù)據(jù)傳送的基本單位為字節(jié),采用低位在前的格式。 ? 在高速模式下可達(dá) 。 ? I2C 總線上 數(shù)據(jù)的傳輸速率 ? 在標(biāo)準(zhǔn)模式下可達(dá) 100kbit/s。 ? 在 I2C總線上可以掛接各種類型的外圍器件,如 RAM/EEPROM、日歷 /時(shí)鐘芯片、 A/D轉(zhuǎn)換器、 D/A轉(zhuǎn)換器、以及由 I/O口、顯示驅(qū)動(dòng)器構(gòu)成的各種模塊。 ? 系統(tǒng)中所有的單片機(jī)、外圍器件都將 數(shù)據(jù)線 SDA和時(shí)鐘線SCL的同名端相連在一起 ,總線上的所有節(jié)點(diǎn)都由器件和管腳給定地址。 ? 按照 I2C總線規(guī)范, 總線傳輸中的所有狀態(tài)都生成相對(duì)應(yīng)的狀態(tài)碼 ,系統(tǒng)中的 主機(jī)能夠依照這些狀態(tài)碼自動(dòng)地進(jìn)行總線管理 ,用戶只要在程序中裝入這些標(biāo)準(zhǔn)處理模塊,根據(jù)數(shù)據(jù)操作要求完成 I2C總線的初始化,啟動(dòng) I2C總線,就能自動(dòng)完成規(guī)定的數(shù)據(jù)傳送操作。它用 數(shù)據(jù)線 SDA和 時(shí)鐘線SCL兩根線實(shí)現(xiàn) 全雙工 同步數(shù)據(jù)傳送,可方便地構(gòu)成多機(jī)系統(tǒng)和外圍器件擴(kuò)展系統(tǒng)。用中斷方式做一個(gè)不帶時(shí)鐘芯片的電子鐘,請(qǐng)讀者自己完成。 UART串行擴(kuò)展應(yīng)用實(shí)例 串行動(dòng)態(tài) LED掃描電路 TX RX UART串行擴(kuò)展應(yīng)用實(shí)例 ORG 0000H LJMP MAIN ORG 0040H MAIN: MOV SCON, 00H ;初始化串口為方式 0 MOV R3, 00H LOOP: MOV R4, 0E8H DELAY: LCALL DISPLAY ;動(dòng)態(tài)掃描顯示 DJNZ R4, DELAY INC R3 ;顯示數(shù)字增 1 CJNE R3, 0AH, LOOP ;不等于 10轉(zhuǎn)移 LJMP MAIN 下面是一個(gè)簡單的動(dòng)態(tài)掃描程序,如果再利用上第六章的定時(shí)器就可做成一個(gè)完整的電子鐘,四個(gè)數(shù)碼管顯示為 00: 00這種形式。因 74LS138電流驅(qū)動(dòng)能力較小,故用末級(jí)驅(qū)動(dòng)三極管 9013作為地址驅(qū)動(dòng)。 74LS164的功能是將 AT89C2051串行通信口輸出的串行數(shù)據(jù)譯碼并在其并口線上輸出,從而驅(qū)動(dòng) LED數(shù)碼管。 其引腳定義如下: ? LD:重新裝載數(shù)據(jù)端 (通常用在數(shù)據(jù)完全移出后 ) ? CK:內(nèi)部數(shù)據(jù)移位時(shí)鐘脈沖輸入端 ? D0~ D7:并行數(shù)據(jù)輸入端 ? Q11:取反串行輸出端 ? GND:接地端 ? Q11:串行輸出端 ? SE:用于填充數(shù)據(jù)移出后的空位的邏輯電平信號(hào) ? COK:和 CK聯(lián)合控制數(shù)據(jù)移動(dòng) ? VCC:電源端 串行口工作方式 1 2 3 4 5 6 7 10 9 8 11 12 13 14 A B Q7 G N D CK C L R VCC Q6 Q5 Q4 Q3 Q2 Q1 Q0 12 13 14 15 16 SE D7 VCC D6 D5 D4 COK Q11 1 2 3 4 5 6 7 LD CK D3 Q11 D2 D1 D0 G ND 9 11 10 8 74LS164引腳圖 74LS165引腳圖 UART串行擴(kuò)展應(yīng)用實(shí)例 【 例 1】 利用 74LS164串行輸入并行
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1