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

正文內(nèi)容

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

2025-04-22 11:46 本頁面


【正文】 UART串行擴(kuò)展應(yīng)用實(shí)例 【 例 1】 利用 74LS164串行輸入并行輸出芯片作一個(gè)簡(jiǎn)單的電子鐘,要求四個(gè)數(shù)碼管顯示時(shí)鐘;其中 LED1顯示小時(shí)的十位, LED2顯示小時(shí)的個(gè)位, LED3顯示分鐘的十位, LED4顯示分鐘的個(gè)位。 解: 原理圖如下圖,采用單片機(jī)的串行口輸出字形碼,用74LS164和 74LS138作為擴(kuò)展芯片。 74LS164的功能是將 AT89C2051串行通信口輸出的串行數(shù)據(jù)譯碼并在其并口線上輸出,從而驅(qū)動(dòng) LED數(shù)碼管。 74LS138是一個(gè) 3線 8線譯碼器,它將單片機(jī)輸出的地址信號(hào)譯碼后動(dòng)態(tài)驅(qū)動(dòng)相應(yīng)的 LED。因 74LS138電流驅(qū)動(dòng)能力較小,故用末級(jí)驅(qū)動(dòng)三極管 9013作為地址驅(qū)動(dòng)。將 4只LED的字段位都連在一起,它們的公共端則由 74LS138分時(shí)選通,這樣任何一個(gè)時(shí)刻,都只有一位 LED在點(diǎn)亮,也即動(dòng)態(tài)掃描顯示方式,其優(yōu)點(diǎn)使用串行口進(jìn)行 LED通信程序編寫相當(dāng)簡(jiǎn)單,用戶只需將需顯示的數(shù)據(jù)直接送串口發(fā)送緩沖器,等待串行中斷即可。 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è)簡(jiǎn)單的動(dòng)態(tài)掃描程序,如果再利用上第六章的定時(shí)器就可做成一個(gè)完整的電子鐘,四個(gè)數(shù)碼管顯示為 00: 00這種形式。在本例中冒號(hào)就不顯示出來了,分別用 20H、 21H、 22H、 23H地址存放時(shí)間的時(shí)鐘的十位、時(shí)鐘的個(gè)位、分鐘的十位、分鐘的個(gè)位。用中斷方式做一個(gè)不帶時(shí)鐘芯片的電子鐘,請(qǐng)讀者自己完成。 UART串行擴(kuò)展應(yīng)用實(shí)例 DISPLAY: CLR ;顯示 LED1 CLR LCALL DISP LCALL DELAY1 SETB ;顯示 LED2 LCALL DISP LCALL DELAY1 SETB ;顯示 LED3 CLR LCALL DISP LCALL DELAY1 SETB ;顯示 LED4 SETB LCALL DISP LCALL DELAY1 RET 參考程序 : UART串行擴(kuò)展應(yīng)用實(shí)例 DISP: MOV A, R3 ;將字形碼送串口 MOV DPTR, TABLE MOVC A, @A+DPTR MOV SBUF, A WAIT: JNB TI, WAIT ;等待串口傳送 CLR TI RET DELAY1: MOV R6, 10H ;動(dòng)態(tài)掃描的時(shí)間 LOOP1: MOV R7, 38H ;間隔 DJNZ R7, $ DJNZ R6, LOOP1 RET TABLE: DB 3FH, 06H,, 5BH ; 0~9的字形碼 DB 4FH, 66H, 6DH DB 7DH, 07H,, 7FH,, 6FH 參考程序 : I2C串行擴(kuò)展總線 ? I2C總線的結(jié)構(gòu)原理 ? I2C總線的軟件模擬 ? I2C串行擴(kuò)展應(yīng)用實(shí)例 I2C總線的結(jié)構(gòu)原理 ? I2C總線是 芯片間串行傳輸總線 。它用 數(shù)據(jù)線 SDA和 時(shí)鐘線SCL兩根線實(shí)現(xiàn) 全雙工 同步數(shù)據(jù)傳送,可方便地構(gòu)成多機(jī)系統(tǒng)和外圍器件擴(kuò)展系統(tǒng)。 ? I2C總線采用了 器件地址的硬件設(shè)置 方法,通過 軟件尋址 完全避免了器件的片選線尋址方法,從而使硬件系統(tǒng)具有簡(jiǎn)單靈活的擴(kuò)展方法。 ? 按照 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ù)傳送操作。 I2C總線的結(jié)構(gòu)原理 1 2 3 4 V DD S DA S CL R P R P S DA S DA S DA S DA S CL S CL S CL S CL I2C總線接口電路結(jié)構(gòu) I2C總線的結(jié)構(gòu)原理 ? I2C總線接口為 開漏 或 開集電極輸出 ,需 加上拉電阻 。 ? 系統(tǒng)中所有的單片機(jī)、外圍器件都將 數(shù)據(jù)線 SDA和時(shí)鐘線SCL的同名端相連在一起 ,總線上的所有節(jié)點(diǎn)都由器件和管腳給定地址。 ? 系統(tǒng)中可以 直接連接 具有 I2C總線接口的單片機(jī),也可以通過 總線擴(kuò)展芯片 或 I/O口的軟件仿真 與 I2C總線相連。 ? 在 I2C總線上可以掛接各種類型的外圍器件,如 RAM/EEPROM、日歷 /時(shí)鐘芯片、 A/D轉(zhuǎn)換器、 D/A轉(zhuǎn)換器、以及由 I/O口、顯示驅(qū)動(dòng)器構(gòu)成的各種模塊。 I2C總線的結(jié)構(gòu)原理 ? SDA 和 SCL 都是雙向線路,都通過一個(gè)電流源或上拉電阻連接到正的電源電壓;當(dāng)總線空閑時(shí),這兩條線路都是高電平;連接到總線的器件輸出級(jí)必須是漏極開路或集電極開路才能執(zhí)行線與的功能。 ? I2C 總線上 數(shù)據(jù)的傳輸速率 ? 在標(biāo)準(zhǔn)模式下可達(dá) 100kbit/s。 ? 在快速模式下可達(dá) 400kbit/s。 ? 在高速模式下可達(dá) 。 ? 連接到總線的 接口數(shù)量 只由總線電容是 400pF 的限制決定關(guān)于高速模式主機(jī)器件的信息。 I2C總線的結(jié)構(gòu)原理 ? I2C總線上數(shù)據(jù)傳送的基本單位為字節(jié),采用低位在前的格式。主從器件之間一次傳輸?shù)臄?shù)據(jù)稱為一幀,由啟動(dòng)信號(hào)、若干個(gè)數(shù)據(jù)字節(jié)和應(yīng)答位以及停止信號(hào)組成。 ? I2C的 主要命令 只有 讀 、 寫 兩種,雖然讀寫的字節(jié)根據(jù)具體器件的不同而不同,但其時(shí)序關(guān)系不會(huì)發(fā)生改變。 ? 下位機(jī)只要具備 I2C的基本時(shí)序即可。 這些基本時(shí)序包括:?jiǎn)?dòng) 、 寫字節(jié) 、 讀字節(jié) 、 應(yīng)答位 、 停止信號(hào) ,并可以組合成兩個(gè)子程序:讀 N字節(jié)子程序、寫 N字節(jié)子程序。 I2C總線的結(jié)構(gòu)原理 ? I2C總線最顯著的特點(diǎn)是 規(guī)范的完整性 、 結(jié)構(gòu)的獨(dú)立性 和 用戶使用時(shí)的 “ 傻瓜 ” 化 。 ? I2C總線有嚴(yán)格的規(guī)范,如接口的電氣特性、信號(hào)時(shí)序、信號(hào)傳輸?shù)亩x、總線狀態(tài)設(shè)置、總線管理規(guī)則及總線狀態(tài)處理等。 ? 在 I2C總線規(guī)范中,總線上的器件節(jié)點(diǎn)的電氣特性及地址給定都具有較強(qiáng)的獨(dú)立性,而且各節(jié)點(diǎn)上的器件、模塊都有相對(duì)獨(dú)立的地址編號(hào)。 ? 嚴(yán)格、完善的規(guī)范,并將這些規(guī)范的應(yīng)用盡可能 “ 傻瓜 ” 化,除了有充分的硬件支持外,在軟件方面, Philips公司為用戶提供了一套完善的總線狀態(tài)處理軟件包,以致于用戶可以不去熟悉 I2C總線的規(guī)范,不去理睬總線的管理方法,只要掌握 I2C總線的應(yīng)用程序設(shè)計(jì)方法就可方便地使用 I2C總線,并且能很快地掌握 I2C總線系統(tǒng)的軟、硬件設(shè)計(jì)方法。 I2C總線的軟件模擬 I2C總線的起始和停止條件如下圖所示。 分別用 I2C總線的時(shí)鐘線和數(shù)據(jù)線,則可給時(shí)鐘線 SCL和數(shù)據(jù)線 SDA賦值。程序如下: S DA S CL 起始條件 停止條件 SDL EQU SCA EQU I2C總線的軟件模擬 當(dāng)時(shí)鐘 SCL為高電平時(shí),數(shù)據(jù)線 SDA從高電平向低電平切換表示起始條件,即啟動(dòng) I2C總線數(shù)據(jù)傳送。模擬時(shí)序產(chǎn)生時(shí)鐘 SCL和 SDA發(fā)送的起始條件子程序如下: 使用不同頻率的晶體振蕩器,則要相應(yīng)增刪程序段中 NOP指令的條數(shù),以滿足時(shí)序的要求。 START: SETB SDA SETB SCL NOP ; NOP的數(shù)目根據(jù)時(shí)鐘頻率確定 NOP ;此處用 NOP來延時(shí) CLR SDA NOP NOP CLR SCL RET I2C總線的軟件模擬 當(dāng)時(shí)鐘 SCL為高電平時(shí),數(shù)據(jù)線 SDA由低電平向高電平切換表示停止條件,即停止 I2C總線數(shù)據(jù)傳送。模擬時(shí)序產(chǎn)生時(shí)鐘 SCL和 SDA發(fā)送的停止條件子程序如下: 使用不同頻率的晶體振蕩器,則要相應(yīng)增刪程序段中 NOP指令的條數(shù),以滿足時(shí)序的要求
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1