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

正文內(nèi)容

基于單片機(jī)的瓦斯?jié)舛戎悄軅鞲衅鞯漠厴I(yè)設(shè)計(jì)(編輯修改稿)

2025-01-06 22:43 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 擬信號(hào)進(jìn)行比較,作為逐次逼近的基 準(zhǔn)。其典型值為 +5V Vref + +5V, Vref 5V .MCS51 單片機(jī)與 ADC0809的接口 ADC0809 與 MCS51 單片機(jī)的連接如圖所示電路連接主要涉及兩個(gè)問(wèn)題。一是 8 路模擬信號(hào)通道的選擇,二是 A/D 轉(zhuǎn)換完成后轉(zhuǎn)換數(shù)據(jù)的傳送。 8 路模擬通道選擇如圖所示模擬通道選擇信號(hào) A、 B、 C 分別接最低三位地址 A0、 A A2即( 、 、 ),而地址鎖存允許信號(hào) ALE 由 控制,則 8 路模擬通道的地址為 0FEF8H~ ,通道地址選擇以作寫(xiě)選通信號(hào),這一部分電路連接 如圖 所示。 信號(hào)的時(shí)間配合 從圖中可以看到,把 ALE 信號(hào)與 START 信號(hào)接在一起了,這樣連接使得在信號(hào)的前沿寫(xiě)入(鎖存)通道地址,緊接著在其后沿就啟動(dòng)轉(zhuǎn)換。圖 是有關(guān)信號(hào)的時(shí)間配合示意圖。 啟動(dòng) A/D 轉(zhuǎn)換只需要一條 MOVX 指令。在此之前,要將 清零并將最低三位與所選擇的通道好像對(duì)應(yīng)的口地址送入數(shù)據(jù)指針 DPTR 中。例如要選擇 IN0 通道時(shí),可采用如下兩條指令,即可啟動(dòng) A/D 轉(zhuǎn)換: MOV DPTR , FE00H ;送入 0809 的口地址 MOVX @DPTR , A ;啟動(dòng) A/D 轉(zhuǎn)換( IN0) 注意:此處的 A 與 A/D 轉(zhuǎn)換無(wú)關(guān),可為任意值。 轉(zhuǎn)換數(shù)據(jù)的傳送 A/D 轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時(shí)傳送給單片機(jī)進(jìn)行處理。數(shù)據(jù)傳送的關(guān)鍵問(wèn)題是如何確認(rèn) A/D 轉(zhuǎn)換的完成,因?yàn)橹挥写_認(rèn)完成后,才能進(jìn)行傳送。為此可采用下述三種方式。 ( 1)定時(shí)傳送方式 對(duì)于一種 A/D 轉(zhuǎn)換其來(lái)說(shuō),轉(zhuǎn)換時(shí)間作為一項(xiàng)技術(shù)指標(biāo)是已知的和固定的。例如 ADC0809 轉(zhuǎn)換時(shí)間為 128μ s,相當(dāng)于 6MHz 的 MCS51 單片機(jī)共 64 個(gè)機(jī)器周期??蓳?jù)此設(shè)計(jì)一個(gè)延時(shí)子程序, A/D 轉(zhuǎn)換啟動(dòng)后即調(diào)用此子程序,延遲時(shí)間一到,轉(zhuǎn)換肯定已經(jīng)完成了,接著就可進(jìn)行數(shù) 據(jù)傳送。 ( 2)查詢方式 A/D 轉(zhuǎn)換芯片由表明轉(zhuǎn)換完成的狀態(tài)信號(hào),例如 ADC0809 的 EOC 端。因此可以用查詢方式,測(cè)試 EOC 的狀態(tài),即可卻只轉(zhuǎn)換是否完成,并接著進(jìn)行數(shù)據(jù)傳送。 ( 3)中斷方式 把表明轉(zhuǎn)換完成的狀態(tài)信號(hào)( EOC)作為中斷請(qǐng)求信號(hào),以中斷方式進(jìn)行數(shù)據(jù)傳送。 不管使用上述那種方式,只要一旦確定轉(zhuǎn)換完成,即可通過(guò)指令進(jìn)行數(shù)據(jù)傳送。首先送出口地址并以信號(hào)有效時(shí), OE 信號(hào)即有效,把轉(zhuǎn)換數(shù)據(jù)送上數(shù)據(jù)總線,供單片機(jī)接受。 不管使用上述那種方式,只要一旦確認(rèn)轉(zhuǎn)換結(jié)束,便可通過(guò)指令進(jìn)行數(shù)據(jù)傳送。所用的指令為 MOVX 讀指令,仍以圖 917 所示為例,則有 MOV DPTR , FE00H MOVX A , @DPTR 該指令在送出有效口地址的同時(shí),發(fā)出有效信號(hào),使 0809 的輸出允許信號(hào)OE 有 效,從而打開(kāi)三態(tài)門(mén)輸出,是轉(zhuǎn)換后的數(shù)據(jù)通過(guò)數(shù)據(jù)總線送入 A 累加器中。 這里需要說(shuō)明的示, ADC0809 的三個(gè)地址端 A、 B、 C 即可如前所述與地址線相連,也可與數(shù)據(jù)線相連,例如與 D0~ D2 相連。這是啟動(dòng) A/D 轉(zhuǎn)換的指令與上述類(lèi)似,只不過(guò) A 的內(nèi)容不能為任意數(shù),而必須和所選輸入通道號(hào) IN0~ IN7 相一致。例如當(dāng) A、 B、 C 分別與 D0、 D D2 相連時(shí),啟動(dòng) IN7 的 A/D 轉(zhuǎn)換指令如下: MOV DPTR, FE00H ;送入 0809 的口地址 MOV A , 07H ; D2D1D0 111 選擇 IN7 通道 MOVX @DPTR, A ;啟動(dòng) A/D 轉(zhuǎn)換 A/D 轉(zhuǎn)換應(yīng)用舉例設(shè)有一個(gè) 8 路模擬量輸入的巡回監(jiān)測(cè)系統(tǒng),采樣數(shù)據(jù)依次存放在外部 RAM 0A0H~ 0A7H 單元中 ,按圖 所示的接口電路, ADC0809 的 8 個(gè)通道地址為 0FEF8H~ 始化程序和中斷服務(wù)程序(假定只采樣一次)如下:初始化程序:中斷服務(wù)程序: 具有如下 特點(diǎn):個(gè)引腳, k 字節(jié)的片內(nèi)程序存儲(chǔ)器,的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器( RAM),個(gè)外部雙向輸入 /輸出( I/O)口,個(gè)中斷優(yōu)先級(jí) 2 層中斷嵌套中斷, 2 個(gè) 16 位可編程定時(shí)計(jì)數(shù)器 ,2 個(gè) 全雙工串行通信口,看門(mén)狗( WDT)電路,片內(nèi)時(shí)鐘振蕩器。 此外,設(shè)計(jì)和配置了振蕩頻率可為 0Hz 并可通過(guò)軟件設(shè)置省電模式。空閑模式 下, CPU 暫停工作,而 RAM 定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存 RAM 的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件 復(fù)位。同時(shí)該芯片還具有 PDIP、 TQFP 和 PLCC 等三種封裝形 式,以適應(yīng)不同產(chǎn)品的需求。 ??與 MCS51 兼容 ??4K 字節(jié)可編程閃爍存儲(chǔ)器 ??壽命: 1000 寫(xiě) /擦循環(huán) ??數(shù)據(jù)保留時(shí)間: 10 年 ??全靜態(tài)工作: 0Hz24MHz ??三級(jí)程序存儲(chǔ)器鎖定 ?? 128 8 位內(nèi)部 RAM ??32 可編程 I/O 線 ??兩個(gè) 16 位定時(shí)器 /計(jì)數(shù)器 ??5 個(gè)中斷源 ??可編程串行通道 ??低功耗的閑置和掉電模式 ??片內(nèi)振蕩器和時(shí)鐘電路 VCC:供電電壓 GND:接地 P0 口: P0 口為一個(gè)8 位漏級(jí)開(kāi)路雙向 I/O 口,每腳可吸收 8TTL 門(mén)電流。當(dāng) P1 口的管腳第 一次寫(xiě) 1時(shí),被定義 為高阻輸入。 P0 能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù) /地址的第八位。在 FIASH 編程時(shí), P0 口作為原碼輸入口,當(dāng) FIASH 進(jìn)行校驗(yàn)時(shí), P0 輸出原碼,此時(shí) P0 外部必須被拉高。 P1 口: P1 口是一個(gè)內(nèi)部提供上拉電阻的 8 位雙向 I/O 口, P1 口緩沖器能接收輸出 4TTL 門(mén) 電流。 P1 口管腳寫(xiě)入 1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在 FLASH編程和校驗(yàn) 時(shí), P1 口作為第八位地址接收。 P2 口: P2 口為一個(gè)內(nèi)部上拉電阻的 8 位雙向 I/O 口, P2 口緩沖器可接收,輸出 4 個(gè) TTL 門(mén) 電流,當(dāng) P2 口被寫(xiě)“ 1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí), P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。 P2 口當(dāng)用于外部程序存儲(chǔ)器或 16 位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí), P2 口輸出地址的高八位。在給出地址“ 1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址 數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí), P2 口輸出其特殊功能寄存器的內(nèi)容。 P2 口在 FLASH 編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3 口: P3 口管腳是 8 個(gè)帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸 出 4個(gè) TTL 門(mén)電流。當(dāng) P3 口寫(xiě)入“ 1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這是由于上拉的緣故。 RXD(串行輸入口) TXD(串行輸出口) /INT0(外部中斷 0) /INT1(外部中斷 1) T0(記時(shí)器 0 外部輸入) T1(記時(shí)器 1 外部輸入) /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通) /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3 口同時(shí)為閃爍編程和編程校驗(yàn) 接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持 RST 腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時(shí), ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的 1/6。因此它可用作對(duì)外部輸出的 脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè) ALE 脈沖。如想禁止 ALE 的輸出可在 SFR8EH 地址上置 0。此時(shí), ALE 只有在執(zhí)行 MOVX, MOVC 指 令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無(wú)效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次 /PSEN 有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的 /PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng) /EA 保持低電平時(shí),則在此期間外部程序存儲(chǔ)器( 0000H FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式 1 時(shí), /EA 將內(nèi)部鎖定為RESET;當(dāng) /EA 端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在 FLASH 編程期間,此引腳也用于施 加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來(lái)自反向振蕩器的輸出。 XTAL1 和 XTAL2 分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件, XTAL2 應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。 XTAL1 接外部晶體的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一個(gè)反相放大器的輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部 振蕩器時(shí),對(duì)HMOS 單片機(jī),此引腳應(yīng)接地;對(duì) CHMOS 單片機(jī),此引腳作為驅(qū)動(dòng)端。 XTAL2 接外晶體的另一端。在單片機(jī)內(nèi)部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時(shí),對(duì) HMOS 單片機(jī),該引腳接外部振整個(gè) PEROM 陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持 ALE管腳處于低電平 10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫(xiě)“ 1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 此外, AT89C51 設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在 閑置模式下, CPU 停止工作。但 RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存 RAM 的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。 串口通訊 單片機(jī)的結(jié)構(gòu)和特殊寄存器,這是你編寫(xiě)軟件的關(guān)鍵。至于串口通信需要用到那些特殊功能寄存器呢,它們是 SCON, TCON, TMOD, SCON 等,各代表什么含義呢? SBUF 數(shù)據(jù)緩沖寄存器這是一個(gè)可以直接尋址的串行口專(zhuān)用寄存器。有朋友這樣問(wèn)起過(guò)“為何在串行口收發(fā)中,都只是使用到同一個(gè)寄存器 SBUF?而不是收發(fā)各用一個(gè)寄存 器?!睂?shí)際上 SBUF 包含了兩個(gè)獨(dú)立的寄存器,一個(gè)是發(fā)送寄存,另一個(gè)是接收寄存器,但它們都共同使用同一個(gè)尋址地址- 99H。 CPU 在讀 SBUF 時(shí)會(huì)指到接收寄存器,在寫(xiě)時(shí)會(huì)指到發(fā)送寄存器,而且接收寄存器是雙緩沖寄存器,這樣可以避免接收中斷沒(méi)有及時(shí)的被響應(yīng),數(shù)據(jù)沒(méi)有被取走,下一幀數(shù)據(jù)已到來(lái),而造成的數(shù)據(jù)重疊問(wèn)題。發(fā)送器則不需要用到雙緩沖,一般情況下我們?cè)趯?xiě)發(fā)送程序時(shí)也不必用到發(fā)送中斷去外理發(fā)送數(shù)據(jù)。操作 SBUF 寄存器的方法則很簡(jiǎn)單,只要把這個(gè) 99H 地址用關(guān)鍵字 sfr 定義為一個(gè)變量就可以對(duì)其進(jìn)行讀寫(xiě)操作了,如 sfr SBUF 0x99。當(dāng)然你也可以用其它的名稱(chēng)。通常在標(biāo)準(zhǔn)的 或 等頭文件中已對(duì)其做了定義,只要用 include 引用就可以了。 SCON 串行口控制寄存器通常在芯片或設(shè)備中為了監(jiān)視或控制接口狀態(tài),都會(huì)引用到接口控制寄存器。 SCON 就是 51 芯片的串行口控制寄存器。它的尋址地址是 98H,是一個(gè)可以位尋址的寄存器,作用就是監(jiān)視和控制 51 芯片串行口的工作狀態(tài)。 51 芯片的串口可以工作在幾個(gè)不同的工作模式下,其工作模式的設(shè)置就是使用 SCON 寄存器。它的各個(gè)位的 具體定義如下: SM0 SM1 SM2 REN TB8 RB8 TI RI SM0、 SM1 為串行口工作模式設(shè)置位,這樣兩位可以對(duì)應(yīng)進(jìn)行四種模式的設(shè)置。串行口工作模式設(shè)置。 SM0 SM1 模式 功能 波特率 0 0 0 同步移位寄存器 fosc/12 0 1 1 8 位 UART 可變 1 0 2 9 位 UART fosc/32 或 fosc/64 1 1 3 9 位 UART 可變 在這里只說(shuō)明最常用的模式 1,其它的模式也就一一略過(guò),有興趣的朋友可以找相關(guān)的硬件資料查看。表中的 fosc 代表振蕩器的頻率,也就是晶振的頻率。 UART 為 Universal Asynchronous Receiver)的英文縮寫(xiě)。 SM2 在模式 模式 3 中為多處理機(jī)通信使能位。在模式 0 中要求該位為 0。 REM 為允許接收位, REM 置 1 時(shí)串口允許接收,置 0 時(shí)禁止接收。 REM 是由軟件置位或清零。如果在一個(gè)電路中接收和發(fā)送引腳 , 都和上位機(jī)相連,在軟件上有串口中斷處理程序,當(dāng)要求在處理某個(gè)子程序時(shí)不允許串口被上位機(jī)來(lái)的控制字符產(chǎn)生中斷,那么可以在這個(gè)子程序的開(kāi)始處加入 REM 0 來(lái)禁止接收,在子程序結(jié)束處加入 REM 1 再次打開(kāi)串口接收。大家也可以用上面的實(shí)際源碼加入 REM 0 來(lái)進(jìn)行實(shí)驗(yàn)。 TB8 發(fā)送數(shù)據(jù)位 8,在模式 2 和 3 是要發(fā)送的第 9 位。該位可以用軟件根據(jù)需要置位或清除,通常這位在通信協(xié)議中做奇偶位,
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1