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

正文內(nèi)容

基于i2c總線的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)-資料下載頁

2025-06-26 04:46本頁面
  

【正文】 1 I2C 總線(SDA 或 SCL)Rx 2 接收信號(hào)Tx 3 發(fā)送信號(hào)GND 4 地Ty 5 發(fā)送信號(hào)Ry 6 接收信號(hào)Sy 7 I2C 總線(SDA 或 SCL)VCC 8 電源作用為增加 I2C 通信距離時(shí),兩個(gè) P82B96 必須匹配使用。電路設(shè)計(jì)時(shí)必須加上拉電阻,P82B96 的具體連接方法如圖 44 所示。 3 . 3 V5 V3 . 3 V5 V5 VS D AS C L1 S x 7 S y R x 2T x 3 T y 5 R y 6 8V c c G N D 4 P 8 2 B 9 65 V5 V3 . 3 V5 V5 VS D AS C LS x 1 S y 7 2 R x 3 T x 5 T y 6 R y 8V c c G N D 4P 8 2 B 9 6長線纜主機(jī)端 遠(yuǎn)程控制端 圖 44 P82B96 實(shí)現(xiàn)遠(yuǎn)距離 I2C 通信在系統(tǒng)中的應(yīng)用如下圖所示: R710KR610KR8330R5330SCLSDASDAX SCLYVCC5 VCC5 VCC5Sx1Rx2Tx3GND4 Ty 5Ry 6Sy 7VCC 8U2P82B96TP 圖 45 I2C 通信擴(kuò)展電路 電源模塊本系統(tǒng)電源用到 、5V 兩種電源。LPC922 單片機(jī)供電需要 ,ZLG9270 的工作電壓也用到 ,為了降低延時(shí),為 P82B96 提供 、5V 兩種電源。PCF8591和 AD590 都采用 5V 供電即可。利用電池供電引出 5V 電壓,經(jīng) SPX3819 后輸出 提供單片機(jī)的工作電壓。電路簡單,只需在輸入輸出端分別接上 10181。F 濾波電容,電路設(shè)計(jì)如圖 46。 Error! Reference source not found.Vin 1Vout5GND 2EN 3Byp4U3SPX3819C1110uF/16VC1010uF/16VJ1VCC5圖 46 電源轉(zhuǎn)換電路SPX3819 是一個(gè)具有低壓差電壓和低噪聲輸出電壓調(diào)節(jié)器。它有一個(gè)小于 1%以下的初始誤差和邏輯兼容的 ON / OFF 切換輸入。禁用時(shí),電力消耗下降到幾乎為零。其他主要功能包括電池反向保護(hù),限流和熱關(guān)機(jī)。它具有非常低的輸出溫度系數(shù),輸出設(shè)備需要一個(gè)很穩(wěn)定的電容。 溫度測量模塊 本系統(tǒng)設(shè)計(jì)目的在于采集現(xiàn)實(shí)環(huán)境的溫度信息,所以需要利用單片機(jī)采集溫度傳感器的數(shù)據(jù),溫度傳感器使用美國模擬器件公司生產(chǎn)的 AD590,采集的信號(hào)需要經(jīng)過放大和信號(hào)調(diào)理,再傳送到 A/D 轉(zhuǎn)換器 PCF8951,即把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),轉(zhuǎn)換后通過 I2C 總線傳輸給處理中心。 A/D 轉(zhuǎn)換器 PCF8591PCF8591 是一款單電源、低功耗 8 位 COMS 型 A/D、D/A 轉(zhuǎn)換芯片,它具有 4 路模擬量輸入通道、一路模擬量輸出通道和 1 個(gè) I2C 總線接口。該器件 I2C 從地址的低三位由芯片的 A0、A1 和 A2 三個(gè)地址引腳決定,所以在不增加任何硬件的情況下同一條I2C 總線最多可以連接 8 個(gè)同類型的器件。該器件具有多路模擬量輸入、片上跟蹤保持、8 位 A/D 轉(zhuǎn)換和 8 位 D/A 轉(zhuǎn)換等功能。A/D 與 D/A 的最大轉(zhuǎn)換速率由 I2C 總線的最大傳輸速率決定。 PCF8591 采用的是單電源供電,正常工作電源電壓范圍為 ~6V;重要的是通過 I2C 總線完成數(shù)據(jù)的輸入/輸出,采樣頻率是由 I2C 總線傳輸速率決定的。PCF8591進(jìn)行數(shù)據(jù)轉(zhuǎn)換時(shí)需要外接一參考電壓。 PCF8591 采用典型的 I2C 總線接口器件尋址方法,即總線地址由器件地址、引腳地址和方向位組成。飛利蒲公司規(guī)定 A/D 器件地址為 1001。引腳地址為 A012,其值由用戶選擇,因此 I2C 系統(tǒng)中最多可接 3=8 個(gè)具有 I2C 總線接口的 A/D 器件。地址的最后一位為方向位 WR/,當(dāng)主控器對(duì) A/D 器件進(jìn)行讀操作時(shí)為 1,進(jìn)行寫操作時(shí)為0??偩€操作時(shí),由器件地址、引腳地址和方向位組成的從地址為主控器發(fā)送的第一字節(jié)。 在進(jìn)行數(shù)據(jù)操作時(shí),首先是主控器發(fā)出起始信號(hào),然后發(fā)出讀尋址字節(jié),被控器做出應(yīng)答后,主控器從被控器讀出第一個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答,主控器從被控器讀出第二個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答…一直到主控器從被控器中讀出第 n 個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出非應(yīng)答信號(hào),最后主控器發(fā)出停止信號(hào)。 溫度傳感器 AD590 集成溫度傳感器實(shí)質(zhì)上是一種半導(dǎo)體集成電路,它是利用晶體管的be結(jié)壓降的不飽和值Vbe與熱力學(xué)溫度 T和通過發(fā)射極電流I 的下述關(guān)系實(shí)現(xiàn)對(duì)溫度的檢測: lnIbeqKTV? ( 4 1) 式中:K—波爾茲常數(shù); q—電子電荷絕對(duì)值。 AD590 是美國模擬器件公司生產(chǎn)的單片集成兩端感溫電流源。流過器件的電流(mA)等于器件所處環(huán)境的熱力學(xué)溫度(開爾文)度數(shù),即: KmArTI1? ( 4 2) 式中:Ir—流過器件(AD590)的電流,單位為mA; T—熱力學(xué)溫度,單位為K。 AD590的測溫范圍為55℃ ~+150℃,電源電壓范圍為4V~30V 。其輸出電流是以絕對(duì)溫度零度(273℃)為基準(zhǔn) ,每增加1℃ ,它會(huì)增加1μA 輸出電流。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會(huì)被損壞。 AD590精度很高,在55℃~ +150℃范圍內(nèi),非線性誤差為177?!?。 溫度測量電路如下:AIN01 AIN12AIN23 AIN34A05 A16A27 VSS8 SDA 9SCL 10OSC11EXT 12AGND 13VREF14AOUT 15VDD 16U4PCF8591SDASCLR3D1ZENER3VDD 1VSS 3Vout 2U1AD590R1R210K R6100KR4 10KR5 10KR7100KR810K56 7U2BLM32432 1411U2ALM324VCC5VCC5VCC5VCC5 R910KD1圖 47 溫度測量電路圖AD590 的輸出電流 I=(273+T)μA(T 為攝氏溫度) ,因此測量的電壓 V 為(273+T)μA10K=(+T/100)V。為了將電壓測量出來又務(wù)須使輸出電流 I 分流,我們使用 LM324 作為電壓跟隨器輸出電壓等于輸入電壓 V;由于電源供應(yīng)多器件之后,是帶雜波的,因此我們使用齊納二極管作為穩(wěn)壓管,得到 3V 的穩(wěn)壓電源,再利用可變電阻分壓,其輸出電壓 V1 需調(diào)整至 ;接下來我們使用 LM324 作為差動(dòng)放大器使得輸出 Vo 為(100K/10K)(V2V1 )=T/10 ,即假如現(xiàn)在溫度為攝氏 28℃,輸出電壓 Vo 則為 ,輸出電壓接 A/D 轉(zhuǎn)換器,那么 A/D 轉(zhuǎn)換輸出的數(shù)字量就和攝氏溫度成線形比例關(guān)系。A/D 轉(zhuǎn)換器的參考電壓用 5V, A012接地,選擇 AIN0 作為電壓輸入端。在本系統(tǒng)設(shè)計(jì)時(shí)使用 5V 基準(zhǔn)電壓源來實(shí)現(xiàn),基準(zhǔn)電壓源提供一個(gè)絕對(duì)電壓,與輸入電壓進(jìn)行比較以確定適當(dāng)?shù)臄?shù)字輸出。 總結(jié) 本章節(jié)主要介紹了該系統(tǒng)的硬件電路設(shè)計(jì),包括幾個(gè)模塊的核心工作原理。主要包括單片機(jī)控制模塊、LED 顯示模塊、遠(yuǎn)程傳輸模塊、電源模塊和溫度測量模塊五大部分。5 系統(tǒng)軟件設(shè)計(jì) Main 函數(shù)設(shè)計(jì) 主函數(shù)調(diào)用底層應(yīng)用函數(shù),開始時(shí)調(diào)用開機(jī)延時(shí)函數(shù)、初始化函數(shù),然后配置PCF8591 為輸出狀態(tài),查詢是否有按鍵標(biāo)志位,若有鍵按下則清零鍵盤中斷標(biāo)志位并做按鍵處理,無鍵按下時(shí)等待按鍵按下。本系統(tǒng)的 Main 函數(shù)流程如 圖 51,程序見程序清單 51。 啟動(dòng)開機(jī)延時(shí)系統(tǒng)初始化I 2 C 初始化鍵處理L E D 顯示A / D 轉(zhuǎn)換數(shù)據(jù)采集圖 51 MAIN 函數(shù)流程圖程序清單 51 主函數(shù)/*************************************************************************************** 函數(shù)名稱:main** 函數(shù)功能:主函數(shù)** 入口參數(shù):無** 出口參數(shù):無*************************************************************************************/void main ( ){Delay(1)。 /* 開機(jī)后延遲 10ms */Main_Init( )。 /* 相關(guān)初始化操作 */ISendStr(PCF8591,0x03,0x00)。 /* 配置 PCF8591 為輸出狀態(tài) */ while(1)if (KeyFlag) /* 有鍵按下時(shí)處理程序 */{KeyFlag=0。 /* 清零按鍵標(biāo)志位 */KEY_Process( )。ISendStr(PCF8591,0x01,OutIOVal)。 /* 向輸出寄存器寫入數(shù)據(jù) */ }} I2C 發(fā)送數(shù)據(jù)函數(shù)該函數(shù)包括啟動(dòng)總線、發(fā)送從器件地址、發(fā)送子地址、發(fā)送數(shù)據(jù)、結(jié)束總線,全過程嚴(yán)格遵循 I2C 總線傳輸數(shù)據(jù)時(shí)序。發(fā)送從器件地址后狀態(tài)寄存器值等于 0x18,表示 I2C 總線已經(jīng)發(fā)送 SLA+W 并接收了應(yīng)答信號(hào),下一步將發(fā)送子地址字節(jié),不等于時(shí)表示未接收到應(yīng)答信號(hào),這時(shí)將置位 STO,停止總線并返回 0。發(fā)送子地址和數(shù)據(jù)字節(jié)后,狀態(tài)寄存器值為 0x28,表示已經(jīng)發(fā)送子地址或數(shù)據(jù)字節(jié)并接收了應(yīng)答信號(hào),不等于表示沒有接收到應(yīng)答信號(hào)并返回 0。發(fā)送完數(shù)據(jù)字節(jié)后,狀態(tài)寄存器里的值為0x28 時(shí)將結(jié)束總線并返回 1。具體流程如 圖 52 所示。 申請(qǐng)總線發(fā)從地址 方向?qū)懓l(fā)送子地址是否接收應(yīng)答重啟總線 , 發(fā)送方向讀是否收到應(yīng)答停止總線YYYNN開始接收 1 字節(jié) , 發(fā)送應(yīng)答接收 1 字節(jié) , 發(fā)送非應(yīng)答 圖 52 I2C 發(fā)送數(shù)據(jù) 鍵盤中斷函數(shù)首先在鍵盤中斷的初始化程序中置位鍵盤中斷允許,清零鍵盤中斷標(biāo)志,設(shè)置中斷產(chǎn)生條件,打開中斷。鍵盤中斷程序如 程序清單 52。 程序清單 52 鍵盤中斷服務(wù)程序/*************************************************************************************** 函數(shù)名稱:KEY_ISR** 函數(shù)功能:鍵盤中斷服務(wù)程序** 入口參數(shù):無** 出口參數(shù):無*************************************************************************************/void KEY_ISR (void) interrupt 7{KeyFlag = 1。 /* 設(shè)置按鍵標(biāo)志位 */KBCON = 0x00。 /* 清除鍵盤標(biāo)志位 */} 鍵盤處理函數(shù)按鍵控制遠(yuǎn)程擴(kuò)展 I/O 口電平,具體包括按鍵判斷、按鍵防抖和按鍵處理三步驟。其流程如 圖 53。 讀鍵盤端口的值開始延時(shí)防抖 1 0 毫秒鍵盤端口的值與上次相等NYS w i t c h ( K e y V a l )鍵 1 處理 鍵 1 處理 鍵 1 處理結(jié)束YK e y V a l0 x 1 4 0 x 1 80 x 1 0圖 53 鍵盤處理子程序流程圖 LED 顯示函數(shù) 使用 ZLG7290 驅(qū)動(dòng)數(shù)碼管顯示有兩種方法,一是向命令緩沖區(qū)(07H08H)寫入復(fù)合指令,向 07H 寫入命令并選通相應(yīng)的數(shù)碼管,向 08H 寫入所要顯示的數(shù)據(jù),這種方法每次只能寫入一個(gè)字節(jié)的數(shù)據(jù),多字節(jié)數(shù)據(jù)的輸出可在程序中用循環(huán)寫入的方法實(shí)現(xiàn);二是向顯示緩存寄存器(10H17H)寫入所要顯示的數(shù)據(jù)的段碼,段碼的編碼規(guī)則為從高位到低位為 abcdefgdp,每次可寫入 18 個(gè)字節(jié)數(shù)據(jù)。 設(shè)置 P 1 口為準(zhǔn)雙向口開始向 Z L G 7 2 9 0 送入顯示初值有鍵按下 ?是功能鍵 ?讀出鍵值數(shù)碼管顯示左移兩位將鍵值輸出到數(shù)碼管并使能閃爍使 8 個(gè)數(shù)碼管同時(shí)閃爍YYNN結(jié)束圖 53 ZLG7290 鍵盤掃描及顯示程序流程圖該流程圖的功能是復(fù)位后,數(shù)碼管顯示初值 07,若有鍵按下,則判斷是普通鍵還是功能鍵,若為功能鍵,則保持原來的顯示不變,使 8 個(gè)數(shù)碼管同時(shí)閃爍;若為普通鍵,則將鍵值顯示在第一個(gè)和第二個(gè)數(shù)碼管并同時(shí)閃爍,其他數(shù)碼管不閃爍,原有
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1