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

正文內(nèi)容

基于單片機(jī)的電力數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-資料下載頁(yè)

2024-10-23 08:07本頁(yè)面

【導(dǎo)讀】本文介紹的重點(diǎn)是電力數(shù)據(jù)采集系統(tǒng),而該系統(tǒng)硬件部分的重心在于單片機(jī)。心,還包括A/D模數(shù)轉(zhuǎn)換模塊,顯示模塊,USB接口和串行接口部分。機(jī)負(fù)責(zé)數(shù)據(jù)采集并應(yīng)答主機(jī)的命令。8路被測(cè)電壓通過模數(shù)轉(zhuǎn)換器PCF8591進(jìn)行模。示,并用LED數(shù)碼顯示器來顯示所采集的結(jié)果。軟件部分應(yīng)用KeilUvision3編寫

  

【正文】 極管的陽(yáng)極連在一起構(gòu)成公共陽(yáng)極,使用時(shí)公共陽(yáng)極接 +5V,每個(gè)發(fā)光二極管的陰極通過電阻與輸入端相連。如圖所示: 共 陽(yáng) 極接法 共 陰 極接法 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 25 頁(yè) 共 51 頁(yè) 圖 LED 數(shù)碼顯示 器電路圖 模數(shù)轉(zhuǎn)換器 PCF8591 PCF8591是一個(gè)單片集成、單獨(dú)供電、低功耗、 8bit CMOS 數(shù)據(jù)獲取器件。PCF8591具有 4個(gè)模擬輸入、 1個(gè)模擬輸出和 1個(gè)串行 I178。C 總線接口 。 PCF8591的 3個(gè)地址 引腳 A0, A1和 A2可用于硬件地址 編程 ,允許在同個(gè) I2C 總線上接入 8個(gè) PCF8591器件,而無需額外的硬件。在 PCF8591器件上輸入輸出的地址、控制和數(shù)據(jù)信號(hào)都是通過雙線雙向 I2C總線以串行的方式進(jìn)行傳輸 [27]。 在我們所采集的數(shù)據(jù)電壓值是隨著滑動(dòng)變阻器的旋轉(zhuǎn)而不斷改變的,而要對(duì)這些數(shù)據(jù)進(jìn)行處理 ,則需要將其轉(zhuǎn)換為數(shù)字量, A/D 轉(zhuǎn)換器就是為了將連續(xù)變化的模擬量轉(zhuǎn)換成計(jì)算機(jī)能接受的數(shù)字量。 按模擬量轉(zhuǎn)換成數(shù)字量的原理可以分為 3 種:雙積分式、逐次逼近式及并行式A/D 轉(zhuǎn)換器 。而該系統(tǒng)選用的是 PCF8591,下面就具體的介紹一下 PCF8591 的工作原理。 PCF8591 是具有 I2C總線接口的 8位 A/D及 D/A轉(zhuǎn)換器。有 4路 A/D 轉(zhuǎn)換輸入,中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 26 頁(yè) 共 51 頁(yè) 1 路 D/A 模擬輸出。這就是說,它既可以作 A/D 轉(zhuǎn)換也可以作 D/A 轉(zhuǎn)換。 A/D轉(zhuǎn)換為逐次比較型。引腳圖如圖 所示。結(jié)構(gòu)圖如圖 所示。電源電壓典型值為5V。 圖 PCF8591 的引腳圖 AINO~ AIN3:模擬信號(hào)輸入端。 AO~ A3:引腳地址端。 VDD、 VSS:電源端。 (~ 6V) SDA、 SCL: I2C總線的數(shù)據(jù)線、時(shí)鐘線。 OSC:外部時(shí)鐘輸入端,內(nèi)部時(shí)鐘輸出端。 EXT:內(nèi)部、外部時(shí)鐘選擇線使用內(nèi)部時(shí)鐘時(shí) EXT 接地。 AGND:模擬信號(hào) 接 地。 AOUT: D/A 轉(zhuǎn)換輸出端。 VREF:基準(zhǔn)電源端。 PCF8591 與 STC89C52 單片機(jī)的接口方式,如圖 : 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 27 頁(yè) 共 51 頁(yè) 圖 PCF8591 與單片機(jī)的連接圖 PCF8591 采用典型的 I2C總線接口器件尋址 方法,即總線地址由器件地址、引腳地址和方向位組成。飛利蒲公司規(guī)定 A/D 器件地址為 1001。引腳地址為 A A A0,其值由用戶選擇,因此 I2C系統(tǒng)中最多可接 8個(gè)具有 I2C 總線接口的 A/D器件。地址的最后一位為方向位 R/w,當(dāng)主控器對(duì) A/D 器件進(jìn)行讀操作時(shí)為 1,進(jìn)行寫操作時(shí)為 0??偩€操作時(shí),由器件地址、引腳地址和方向位組成的從地址為主控器發(fā)送的第一字節(jié) [28]。 控制字節(jié):控制字節(jié)用于實(shí)現(xiàn)器件的各種功能,如模擬信號(hào)由哪幾個(gè)通道輸入等??刂谱止?jié)存放在控制寄存器中??偩€操作時(shí)為主控器發(fā)送的第二字節(jié)。其格式如下所示: 其中: Dl、 DO 兩位是 A/D 通道編號(hào): 00 通道 0, 01 通道 1, 10 通道 2,通道3D2 自動(dòng)增益選擇(有效位為 1)。 D D4 模擬量輸入選擇: 00 為四路單數(shù)入、 01中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 28 頁(yè) 共 51 頁(yè) 為三路差分輸入、 10 為單端與差分配合輸入、 11為模擬輸出允許有效。 圖 AD、 DA 設(shè)計(jì)電路圖 當(dāng)系統(tǒng)為 A/D 轉(zhuǎn)換時(shí),模擬輸出允許為 0。模擬量輸入選擇位取值由輸入方式?jīng)Q定:四路單端輸入時(shí)取 00,三路差分輸入時(shí)取 01,單端與差分輸入時(shí)取 10,二路差分輸入時(shí)取 11。最低兩位時(shí)通道編號(hào)位,當(dāng)對(duì) 0 通道的模擬信號(hào)進(jìn)行 A/D轉(zhuǎn)換時(shí)取 00,當(dāng)對(duì) 1 通道的模擬信號(hào)進(jìn)行 A/D 轉(zhuǎn)換時(shí)取 01,當(dāng)對(duì) 2通道的模擬信號(hào)進(jìn)行 A/D 轉(zhuǎn)換時(shí)取 10,當(dāng)對(duì) 3通道的模擬信號(hào)進(jìn)行 A/D轉(zhuǎn)換時(shí)取 11。 在進(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)。 原理圖設(shè)計(jì) 該系統(tǒng)是一個(gè)主從式數(shù)據(jù)采集系統(tǒng),主機(jī)和從機(jī)均用單片機(jī)實(shí)現(xiàn),它的主機(jī)部分負(fù)責(zé)數(shù)據(jù)處理 和顯示,主機(jī)和從機(jī)之間用 USB— UART 轉(zhuǎn)換電路 PL2303 進(jìn)行通信。它由 STC89C5 PL230 LED 數(shù)碼顯示器組成。 由于單片機(jī)采用的是 USB 接口供電,且單片機(jī)必須與 PC 機(jī)保持串行通信,所以在本設(shè)計(jì)中采用了 PL2303 的 USB— UART 轉(zhuǎn)換電路進(jìn)行通信。所以通過 UART切換電路 PL2303 的 USB— TX 端與 RS232的 USB— RX 端相連, PL2303 的 USB— RX 與 RS232中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 29 頁(yè) 共 51 頁(yè) 的 USB— TX 相連,從而實(shí)現(xiàn) USB— UART 的電路轉(zhuǎn)換。 晶振 類似單片機(jī)的心臟,是給單片機(jī)提供工作節(jié)拍的,旁邊的電容是 起振作用 [29]。 STC89C52 的 XTAL1 端和XTAL1端與晶振相連。 STC89C52 的 P0端的 8個(gè)端口與 74HC245 的 A1— A8端口相連,以及與 74HC138 的 A0、 A A E3端口相連,從而實(shí)現(xiàn)對(duì) 4個(gè)數(shù)碼管的控制。 74HC245是方向可控的八路緩沖器,主要用于實(shí)現(xiàn)數(shù)據(jù)總線的雙向異步通信。 STC89C52 中的 端與 端分別與 24C01 的 SDA 端和 SCL 端相連。 24C01 是串行接口的EEPROM 存儲(chǔ)器,常用于存儲(chǔ)需要掉電保存的數(shù)據(jù)。同時(shí) STC89C52 中的 端與 端分別與 PCF8591 的 SDA 端和 SCL 端相連,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送與接受,進(jìn)而實(shí)現(xiàn)對(duì)電壓數(shù)值量的 AD、 DA轉(zhuǎn)換,從而在 LED上顯示所采集電壓數(shù)據(jù)數(shù)值,而 PC 機(jī)上的串口調(diào)試助手則顯示 16 進(jìn)制的數(shù)值。原理圖 見附錄 A。 PCB 圖設(shè)計(jì) 設(shè)計(jì)中數(shù)據(jù)采集單片機(jī)的 PCB 圖是由單片機(jī)的原理圖生成的,其操作步驟為: 1. 加載網(wǎng)絡(luò)表和元件封裝:網(wǎng)絡(luò)表是自動(dòng)布線的基礎(chǔ),是連接原理圖和印制電路板的紐帶。只有加載了網(wǎng)絡(luò)表和元件封裝后,電路板的自動(dòng)布線才能完成。 2. 元件布局:規(guī)劃電路板并導(dǎo)入網(wǎng)絡(luò)表后,通過執(zhí)行命令,系統(tǒng)將自動(dòng)裝入元件并將元件布置 在電路板邊框內(nèi)。元件布局可以由系統(tǒng)自動(dòng)完成,然后進(jìn)行手工調(diào)整布局,布局合理后才能進(jìn)行下一步的布線工作。元件布局是印制電路板設(shè)計(jì)中比較花費(fèi)精力的一個(gè)步驟,需要設(shè)計(jì)者有足夠的耐心 [30]。 3. 自動(dòng)布線: Protel DXP 2020 中自動(dòng)布線的功能相當(dāng)強(qiáng)大,只要把有關(guān)參數(shù)設(shè)置得適當(dāng),元件布局合理,系統(tǒng)就會(huì)根據(jù)設(shè)置的規(guī)則選擇最佳的布線策略進(jìn)行自動(dòng)布線,成功率幾乎 100%。 4. 手工調(diào)整:自動(dòng)布線雖然成功率很高,但往往存在不滿意的地方,這時(shí)就需要進(jìn)行手工調(diào)整,以滿足設(shè)計(jì)要求。 5. DRC 檢查:布線完成后,為了確保 PCB 板符合 設(shè)計(jì)規(guī)則、所有的網(wǎng)絡(luò)連接正確,必須對(duì)電路板進(jìn)行設(shè)計(jì)規(guī)則檢查。電路圖如 上 圖所示: 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 30 頁(yè) 共 51 頁(yè) 5 軟件部分 單片機(jī)主程序設(shè)計(jì) 本數(shù)據(jù)采集系統(tǒng)系統(tǒng)的設(shè)計(jì)有一個(gè)主程序 ,六個(gè)子程序部分,六個(gè)子程序部分分別為 I2C 通信的啟動(dòng) I2C_start()與停止 I2C_stop()操作、 I2C 通信的應(yīng)答 I2C_ACK()與非應(yīng) I2C_Wakita()答操作、 I2C 通信的數(shù)據(jù)發(fā)送 I2C_send byte()與接收 I2C_rec byte()操作、 I2C 通信的讀數(shù)據(jù) I2C_read byte()操作、采用 UART 發(fā)送數(shù)據(jù) UART_Send_Byte()到 PC 機(jī)界面操作、數(shù)碼管數(shù)據(jù)的顯示與刷新 refresh()操作。 ( 1)主程序 主程序?qū)ο到y(tǒng)進(jìn)行初始化,先讀取 I2C通信中的讀數(shù)據(jù)函數(shù)的數(shù)據(jù),通過 UART發(fā)送數(shù)據(jù)到 PC 機(jī)界面,同時(shí)將所讀的十六進(jìn)制的數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制的數(shù)據(jù)顯示在四位數(shù)碼管上。其流程圖見圖 : 圖 ( 2) I2C 通信的啟動(dòng) I2C_start()與停止 I2C_stop()操作 該子程序部分 SCL 為高電平期間,數(shù)據(jù) 線上的數(shù)據(jù)必須保持穩(wěn)定,只有 SCL 信號(hào)為低電平期間, SDA 狀態(tài)才允許變化。 ( 3) I2C 通信的應(yīng)答 I2C_ACK()與非應(yīng) I2C_Wakita()答操作 該子程序部分在主機(jī)寫數(shù)據(jù)時(shí),每發(fā)送一個(gè)字節(jié),接收機(jī)需要回復(fù)一個(gè)應(yīng)答位 開始 I2C 通信的讀數(shù)據(jù) UART 發(fā)送數(shù)據(jù)到 PC 機(jī)界面顯示 將所讀十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制數(shù)據(jù) LED 顯示 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 31 頁(yè) 共 51 頁(yè) “ 0”,通過應(yīng)答位來判斷從機(jī)是否接收成功。主機(jī)讀數(shù)據(jù)時(shí),接收一個(gè)字節(jié)結(jié)束后,主機(jī)也需要發(fā)送一應(yīng)答位“ 0”,但是當(dāng)接收最后一個(gè)字節(jié)結(jié)束后,則需發(fā)送一個(gè)非應(yīng)答位“ 1”,發(fā)完了 1后,再發(fā)一個(gè)停止信號(hào),最終結(jié)束通信。 ( 4) I2C 通信的數(shù)據(jù)發(fā)送 I2C_send byte()與接收 I2C_rec byte()操作 I2C 總線是數(shù)據(jù)線 SDA 和時(shí)鐘 SCL 構(gòu)成的串行總線,可發(fā)送和接收數(shù)據(jù)。該子程序部分是通過改變 SDA 和 SCL 的高低電平來實(shí)現(xiàn)控制 24C01 從而實(shí)現(xiàn)發(fā)送和接收。 SCL 為高電平期間,數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定,只有 SCL 信號(hào)為低電平期間, SDA 狀態(tài)才允許變化。 ( 5) I2C 通信的讀數(shù)據(jù) I2C_read byte()操作 圖 I2C 通信的應(yīng)答 I2C_ACK()與非應(yīng) I2C_Wakita()答操作 首先 I2C 起始信號(hào),然后 發(fā)送首字節(jié),即器件( EEPROM)地址。并且在讀寫方向位上選擇“寫操作”方向。 第二個(gè)字節(jié),發(fā)送數(shù)據(jù)的存儲(chǔ)地址,就是要讀取的數(shù)據(jù)所存儲(chǔ)在 EEPROM中的位置。 第三個(gè)字節(jié),重新發(fā)送 I2C起始信號(hào)和器件地址,并且在方向位上選擇“讀開始 主機(jī)寫數(shù)據(jù) 發(fā)送字節(jié) 應(yīng)答位 0 接收成功 接收未成功 主機(jī)接收完最后一字節(jié)數(shù)據(jù) 發(fā)送非應(yīng)答位 1 停止通信 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 32 頁(yè) 共 51 頁(yè) 操作”方向。 在前三個(gè)字節(jié)操作過程,都要等待器件給與回應(yīng)一個(gè)“應(yīng)答位 0” 第四個(gè)字節(jié),接收從器件發(fā)回的首字節(jié)后,單片機(jī)要主動(dòng)返回一個(gè)“ (非 )應(yīng)答位 0”?? 特別注意: 接收器件返回?cái)?shù)據(jù)的中間字節(jié),主機(jī)主動(dòng)返回“應(yīng)答位 0”,但最后一個(gè)字節(jié),主機(jī)要返 回一個(gè)“非應(yīng)答位 1”,以此通知從機(jī)讀取數(shù)據(jù)結(jié)束,發(fā)送停位。 (6)采用 UART發(fā)送數(shù)據(jù) UART_Send_Byte()到 PC 機(jī)界面操作 UART 是單片機(jī)與 PC 之間的最簡(jiǎn)單的通信方式之一,也是單片機(jī)之間常用通信。本設(shè)計(jì)中先通過 I2C 通信將數(shù)據(jù)接收存儲(chǔ)在 EEPROM 中,然后通過 USB— UART轉(zhuǎn)換電路將數(shù)據(jù)發(fā)送到 PC機(jī)所做好的界面上,并進(jìn)行與 LED 電壓數(shù)值的同步顯示。其流程圖如圖 : 圖 UART 發(fā)送數(shù)據(jù) UART_Send_Byte()到 PC 機(jī)界面操作 ( 7) 數(shù)碼管 數(shù)據(jù)的顯示與刷新 refresh()操作 在本設(shè)計(jì)中用了四個(gè)數(shù)碼管將電壓數(shù)值精確到小數(shù)點(diǎn)后三位,數(shù)碼管所顯示的數(shù)據(jù)是將 I2C通信發(fā)送過來的十六進(jìn)制數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制數(shù)據(jù)進(jìn)行顯示。由于本設(shè)計(jì) 我們所測(cè)外部模擬電壓范圍為 05V, 0V對(duì)應(yīng)為 0,5V 就對(duì)應(yīng) 255,外部所測(cè)電壓經(jīng)模數(shù)轉(zhuǎn)換 AD 變化為數(shù)字量 0255,數(shù)碼管也就顯示此值十進(jìn)制轉(zhuǎn)化值(( AD/255)*5)。 其流程圖如圖 : 開始 UART 初始化 UART 發(fā)送數(shù)據(jù)到 PC 界面 PC 界面顯示 開始 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說明書 第 33 頁(yè) 共 51 頁(yè)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1