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

正文內(nèi)容

基于單片機(jī)at89c52與rs485的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)(更新版)

2025-08-05 19:17上一頁面

下一頁面
  

【正文】 機(jī),12M晶振,用共陽LED數(shù)碼管//P1口輸出段碼,P2口掃描//include include //_nop_()。replyid=83401amp。對(duì)于日常生活及工農(nóng)業(yè)生產(chǎn)等諸多的領(lǐng)域中,都可能要用到溫度采集器,采用本文設(shè)計(jì)可實(shí)現(xiàn)這種功能,就其采樣頻率和分辨率來說是屬于中速類型,適合對(duì)數(shù)據(jù)采樣頻率要求不是特別高的應(yīng)用場(chǎng)合。此時(shí),COM1的3管腳發(fā)送控制指令而通過2管腳將控制指令傳輸?shù)匠?jí)終端。DS18B20的精度很高,誤差指標(biāo)可以限制在177。顯然,從上圖可以看出。 PC人機(jī)界面設(shè)計(jì)PC機(jī)采用Visual Basic(簡(jiǎn)稱VB)編程,在標(biāo)準(zhǔn)串口通信方面應(yīng)用通信控件MSComm。InputLen屬性的缺省值是0。當(dāng)端口打開時(shí),如 value 非法,則MSComm控件產(chǎn)生錯(cuò)誤380(非法屬性值)。每個(gè)通信控件對(duì)應(yīng)一個(gè)串口,可以設(shè)計(jì)多個(gè)通信控件來訪問多個(gè)通信口。 //啟動(dòng)定時(shí)器1,允許串口中斷 人機(jī)界面的設(shè)計(jì)Microsoft Communications Control(簡(jiǎn)稱MSComm)是Microsoft公司提供的簡(jiǎn)化Windows下串行通信編程的ActiveX控件,它為應(yīng)用程序提供了通過串行接口收發(fā)數(shù)據(jù)的簡(jiǎn)便方法,在Visual Basic、VC、Delphi等語言中均可使用。TL1=0xF3。復(fù)位時(shí),PCON=00H。TI位可作為查詢,也可作為中斷申請(qǐng)標(biāo)志位,TI不會(huì)自動(dòng)復(fù)位,必須由軟件清零。多機(jī)通信時(shí),一般約定:發(fā)送地址幀時(shí),設(shè)置TB8=1;發(fā)送數(shù)據(jù)幀時(shí),設(shè)置TB8=0。若SM2=1,則允許多機(jī)通信。波特率就是傳送速率,即每秒傳送的二進(jìn)制位數(shù),單位為波特或bit/s。這樣一組信息就稱為一幀數(shù)據(jù)或簡(jiǎn)稱一幀,一幀信息在傳輸時(shí),總是以起始位開始,以停止位結(jié)束。其優(yōu)點(diǎn)是只需要一對(duì)傳輸線,占用硬件資源少,從而降低了傳輸成本,特別適合于遠(yuǎn)程通信,缺點(diǎn)是傳送速度較慢。在測(cè)得溫度后,將溫度數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制數(shù)的溫度表示,然后再通過查表(在c語言中是一個(gè)數(shù)組),數(shù)據(jù)處理類似于由二進(jìn)制轉(zhuǎn)換為十進(jìn)制,再由十進(jìn)制轉(zhuǎn)換為ASCII碼。如果由從器件采用寄生電源供電,總線主控MCU在發(fā)出此命令之后必須能立即強(qiáng)制上拉10mS以上。Search ROM(搜索ROM)[F0h] 當(dāng)系統(tǒng)開始工作時(shí)總線上的主控MCU可能不知道總線上的從器件個(gè)數(shù)或者不知道其64 位ROM 編碼,搜索ROM 命令允許總線主機(jī)使用一種排除查詢的方法來識(shí)別總線上所有從片的64 位ROM 編碼;有關(guān)搜索ROM的具體操作流程,可以參考DS18B20器件的數(shù)據(jù)手冊(cè),從該手冊(cè)可以獲取詳細(xì)的操作說明。在總線上沒有信號(hào)傳輸時(shí),總線處于懸浮狀態(tài),容易受干擾信號(hào)的影響。只不過為了達(dá)到數(shù)據(jù)能遠(yuǎn)程傳輸,在下位單片機(jī)和上位PC機(jī)之間加入了485總線,在單片機(jī)系統(tǒng)中使用MAX485芯片,完成單片機(jī)TTL電平到RS485電平之間的轉(zhuǎn)換,在總線末端接一個(gè)匹配電阻,吸收總線上的反射信號(hào),使得正常傳輸信號(hào)無毛刺。而使用USB總線的話,系統(tǒng)的成本和設(shè)計(jì)難度將大增加。它完成將TTL電平轉(zhuǎn)換為RS-485電平的功能。如果同一時(shí)刻有2個(gè)以上的節(jié)點(diǎn)處于發(fā)送狀態(tài)將導(dǎo)致所有發(fā)送方的數(shù)據(jù)發(fā)送失敗,即所謂總線沖突。只有在很短的距離下才能獲得最高速率傳輸。支持半雙工或全雙工模式,網(wǎng)絡(luò)拓?fù)渫ǔ2捎媒K端匹配的總線型結(jié)構(gòu),不支持環(huán)型或星型網(wǎng)絡(luò)。單片機(jī)向字段輸出字形碼時(shí),所有顯示器都接收到相同的字表碼,但究竟是哪個(gè)數(shù)碼管亮,則取決于公共端,可通過控制公共端來決定哪一位數(shù)碼管發(fā)亮顯示。所有的讀寫時(shí)序至少需要60us,且每?jī)蓚€(gè)獨(dú)立的時(shí)序至少需要1us的恢復(fù)時(shí)間。kΩ的上拉電阻,當(dāng)總線閑置時(shí),其狀態(tài)為高電平。單片機(jī)可以通過單線接口讀出數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在前,高位在后,℃/LSB形式表示。以后計(jì)數(shù)器1每一個(gè)循環(huán)的預(yù)置數(shù)都由斜率累加器提供。根據(jù)實(shí)際需要通過簡(jiǎn)單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式,℃,測(cè)量范圍為55~125℃。設(shè)計(jì)采用了模塊化的思想,條理清楚,主要有硬件設(shè)計(jì)與軟件程序設(shè)計(jì)兩部分。關(guān)鍵詞:?jiǎn)纹瑱C(jī)AT89C52 溫度傳感器DS18B20 RS232 總線串行通信RS485 Abstract: A designing method which uses DS18B20 digital sensor as temperaturecollecting tool, and single chip puter as Microcontroller unit is introduced. It makes a longrange conveyance by using RS485 Bus to send the collected data to PC temperaturemeasuring system by RS232 interface. This design has its clear order and mainly has hardware design and software process design two parts for its Modular thoughts. This system has widely perspective in temperature measurement and good use value for its simple and convenient interfaces. As far as sampling frequency and resolution ratio, it belongs to middlespeed type. It is proper to be used in application occasion without high requirement to data sampling frequency.Key words: Single Chip Computer AT89C52;Temperature Sensor DS18B20;RS232;Bus Serial Communication RS485;1 概述數(shù)據(jù)采集廣泛應(yīng)用于各個(gè)測(cè)試和控制系統(tǒng),數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)包括很多方面的內(nèi)容,涉及面也很廣。就其采樣頻率和分辨率來說屬于中速類型,適合對(duì)數(shù)據(jù)采樣頻率要求不是特別高的應(yīng)用場(chǎng)合。本系統(tǒng)設(shè)計(jì)完成了對(duì)溫度數(shù)據(jù)的采集、數(shù)碼管顯示以及PC機(jī)對(duì)溫度變化的曲線圖繪制。從DS18B20讀出或?qū)懭隓S18B20信息僅需要一根端口線,其讀寫及溫度變換功率來源于數(shù)據(jù)總路線,該總路線本身也可以向所掛接的DS18B20供電,而無需額外電源,從而節(jié)省大量的引線和邏輯電路。初始時(shí),計(jì)數(shù)器1的預(yù)置值是和55℃相對(duì)應(yīng)的一個(gè)初始值。測(cè)量結(jié)果以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存入溫度寄存器中。主機(jī)釋放總線時(shí),會(huì)產(chǎn)生一由低電平跳變?yōu)楦唠娖降纳仙?;單總線器件檢測(cè)到該上升沿后,延時(shí)15~60us;單總線器件通過拉低總線60~240us來產(chǎn)生應(yīng)答脈沖;主機(jī)接收到從機(jī)的應(yīng)答信號(hào)脈沖后,說明有單總線器件在線,然后主機(jī)就可以開始對(duì)從機(jī)進(jìn)行ROM命令和功能命令操作。 數(shù)碼管顯示模塊的設(shè)計(jì)[3]LED數(shù)碼管顯示電路采用動(dòng)態(tài)掃描顯示方法,將各個(gè)數(shù)碼管的8個(gè)筆畫段(a、b、c、d、e、f、g、h)同名端并聯(lián)在一起,由一個(gè)8位I/O口控制,形成段選線合用;而每一位數(shù)碼管的公共端(位選線)是各自獨(dú)立地受I/O口控制,實(shí)現(xiàn)各位的分時(shí)選通。它只規(guī)定了平衡驅(qū)動(dòng)器和接受器的電特性,沒有規(guī)定接插件、傳輸電纜和通信協(xié)議。平衡雙絞線的長(zhǎng)度與傳輸速率成反比,在100Kb/s速率以下,才可能使用規(guī)定最長(zhǎng)的電纜長(zhǎng)度。RS485總線以雙絞線為物理介質(zhì),通常工作在半雙工通信狀態(tài),即在同一時(shí)刻總線上只能有1個(gè)節(jié)點(diǎn)為主節(jié)點(diǎn)且處于發(fā)送狀態(tài),其它所有節(jié)點(diǎn)必須處于接收狀態(tài)。采用單一電源+5V工作,額定電流為300μA,采用半雙工通訊方式。 PC機(jī)和單片機(jī)之間遠(yuǎn)程通信的RS485原理方案[7]PC機(jī)的串行接口為RS232或USB總線,然而RS232標(biāo)準(zhǔn)的傳送距離最大約為15米,最高速率為20kb/s,并且RS232是為點(diǎn)對(duì)點(diǎn)(即只用一對(duì)收、發(fā)設(shè)備)通訊而設(shè)計(jì)的,可見RS232只適合于本地通訊使用。 圖9 單片機(jī)和上位PC機(jī)間的RS485通信方案 RS485總線和單片機(jī)接口硬件的設(shè)計(jì)[8] 在圖9中可以看到,數(shù)據(jù)通信在硬件上采用3線制,將單片機(jī)和PC機(jī)串口(RS232C)的3個(gè)引腳(TXD、RXD、GND)分別連在一起,即將PC機(jī)和單片機(jī)的發(fā)送數(shù)據(jù)線TXC和接收數(shù)據(jù)線RXD交叉連接,兩者的地線相連,而其它信號(hào)線如握手信號(hào)線均不用,采用軟件握手的方式。相應(yīng)的電路如圖11所示。 主控MCU對(duì)DS18B20的每一次完整的操作都應(yīng)遵循上述的流程進(jìn)行操作。Skip ROM(跳過ROM)[CCh]在單點(diǎn)總線系統(tǒng)中,通過此命令允許總線上的主控MCU不提供64 位ROM 編碼而訪問存儲(chǔ)器操作,以此來節(jié)省時(shí)間;如果在總線上存在多于一個(gè)的從屬器件,而且在Skip ROM 命令之后發(fā)出讀命令,那么由于多個(gè)從片同時(shí)發(fā)送數(shù)據(jù)會(huì)在總線上發(fā)生數(shù)據(jù)沖突,漏極開路下拉會(huì)產(chǎn)生線與的效果。如果總線主機(jī)在此命令之后,只要DS18B20 正忙于把緩沖存儲(chǔ)器復(fù)制入EEPROM,它就會(huì)在總線上輸出0; 當(dāng)復(fù)制過程完成之后它將返回1。溫度測(cè)量每2秒進(jìn)行一次,程序流程圖如圖12所示。其優(yōu)點(diǎn)是傳送速度快,缺點(diǎn)是數(shù)據(jù)有多少位,就需要多少根傳輸線,適合于近距離傳輸;串行通信是數(shù)據(jù)的各位按順序一位一位傳送。一個(gè)字符又稱為一幀信息,每個(gè)字符由4個(gè)部分組成:起始位、數(shù)據(jù)位、奇偶檢驗(yàn)位和停止位。(2)波特率。主要用于模式2和模式3。它可作為奇偶校驗(yàn)位(單機(jī)通信),也可以多機(jī)通信中作為發(fā)送地址幀或數(shù)據(jù)幀的標(biāo)志位。TI=1表示“發(fā)送緩沖器已空”,通知CPU可以發(fā)送下一幀數(shù)據(jù)。在模式模式模式3時(shí),若SMOD=1,則波特率提高1倍;若其值為0,則波特率不加倍。 //定時(shí)器1工作在模式2(自動(dòng)重載初值)。 IE=0x90。在發(fā)送或接收數(shù)據(jù)過程中觸發(fā)OnComm事件,通過編程訪問CommEvent屬性了解通信事件的類型,分別進(jìn)行各自的處理。語法:[= value]。InputLen屬性語法包括下列部分:value 整型表達(dá)式,說明Input屬性從接收緩沖區(qū)中讀取的字符數(shù)。常數(shù)值描述如下:EvSend: 發(fā)送事件;EvReceive: 接收事件;EvCTS: cleartosend 線變化;EvDSR: dataset ready 線變化;EvCD: carrier detect 線變化;EvRing: 振鈴檢測(cè);EvEOF: 文件結(jié)束。在設(shè)置好這些屬性后,就可以在“溫度測(cè)量”框圖中點(diǎn)擊相應(yīng)的命令按鈕來操作。性能測(cè)試可用已有的成品溫度計(jì)來同時(shí)測(cè)量比較。在用戶控制軟件和超級(jí)終端中都選擇COM1口作為通信的串口。通過AT89C52控制DS18B20數(shù)字式溫度采集器,利用RS485總線和串行通信實(shí)現(xiàn)數(shù)據(jù)的長(zhǎng)距離傳輸,傳輸電平經(jīng)過232轉(zhuǎn)換后再上傳到上位機(jī)。star=1amp。再次感謝您們的幫助,沒有你們的幫助,完成這篇論文將會(huì)有更大的難度。 //列掃描控制字uchar data temp_data[2]={0x00,0x00}。k++) { Disdata=dis_7[display[k]]。_nop_()。}DQ=1。_nop_()。 //66sval=val/2。_nop_()。 //4usDQ=1。return(value)。 //Skip ROMwrite_byte(0x44)。 display[4]=((temp_data[0]amp。if(!display[2]){display[2]=0x0A。~rfull) { rbuff[rin]=SBUF。 TI=0。((((tin+1)^tout)amp。 rout=++routamp。TL1=0xF3。for(h=0。h++) {scan()。m)。輸出緩存字節(jié)數(shù) = InputModeBinary 39。以下為串口初始化39。從PC機(jī)的RS232接口的DTR(4腳)竊電 = True 39。送開始字符串End Sub
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1