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

正文內(nèi)容

基于can總線的遠程數(shù)據(jù)畢業(yè)設(shè)計論文(編輯修改稿)

2025-07-24 17:35 本頁面
 

【文章內(nèi)容簡介】 器在電壓不足或振蕩器未穩(wěn)定的情況下工作。X5045具有體積小、反應(yīng)速度快,抗干擾能力強、占用I/O口少和編程方便等優(yōu)點,本設(shè)計選用X5045作為看門狗芯片。下邊主要設(shè)計分析單片機的電路連接,具體的分析在后面相關(guān)小節(jié)。如圖所示, ,用于片選TLC0832;,用于控制A/D的時鐘;由于A/D通道選擇和輸出采樣值的時間不同,所以可以把DI、用于通道選擇和逐位把采樣的數(shù)值送89C52,這樣也節(jié)省了單片機端口。TLC0832的CH0和CH1分別和K型熱電偶和AD590的放大電路連接。X5045的CS、SO、SCK、就能通過單片機控制X5045。X5045的RST與上電復(fù)位和手動復(fù)位相或后接89C52的RST;電容CR65構(gòu)成上電復(fù)位電路;R6開關(guān)SWR65構(gòu)成手動復(fù)位電路;當(dāng)任何一個復(fù)位生效時,通過或門就能使單片機復(fù)位。單片機外接12MHz的晶振作為內(nèi)部時鐘源。P2口接鍵盤。由于只使用片內(nèi)存儲器,所以/EA接高電平。P0口與CAN控制器連接。其它電路連接如圖所示。 顯示方式 在工業(yè)顯示技術(shù)中,常用的顯示方式有二極管顯示、LED顯示、LCD顯示、CRT顯示。二極管顯示主要用于報警顯示。而CRT、LCD等由于系統(tǒng)比較復(fù)雜,價格也比較貴,所以目前在工業(yè)中廣泛使用LED數(shù)碼管[7]。LED數(shù)碼管由若干個發(fā)光二極管組成,能顯示出各種字符,常用的器件有7段或“米”字型數(shù)碼管。在系統(tǒng)顯示中,常用到的顯示方法有兩種:一種為動態(tài)顯示,一種為靜態(tài)顯示。動態(tài)顯示,就是單片機定時地對顯示器件進行掃描。在這種方法中,顯示器件分時工作,每次只能有一個器件顯示。但由于人的視覺有暫留現(xiàn)象,所以,仍感覺所有的器件都在顯示。這種顯示的優(yōu)點是使用硬件少,因而價格便宜,線路簡單。但它占用機市時長,只要單片機不執(zhí)行顯示程序,就立即停止顯示。由此可見,這種顯示將使單片機的開銷增大,在工業(yè)控制為主的控制系統(tǒng)中很少使用[7]。靜態(tài)顯示就是在單片機一次輸出模型后,就能保持顯示結(jié)果,直到下次發(fā)送新的顯示模型為止。靜態(tài)顯示電路的最大優(yōu)點就是只要不送數(shù)據(jù),則顯示值不變化。而且單片機不用如動態(tài)顯示那樣不間斷的去掃描,因而節(jié)省了大量機時,使單片機能運行其它的程序[7]。本設(shè)計要顯示的數(shù)據(jù)是0℃~400℃的溫度值和0~30KPa的壓力值,以及熱電偶產(chǎn)生的毫伏電壓值等參數(shù)。根據(jù)顯示的需要,使用5位LED數(shù)碼管串口靜態(tài)顯示電路,數(shù)碼管使用共陰極接法。 串行口靜態(tài)顯示電路 鍵盤 鍵盤接口技術(shù) 鍵盤是若干按鍵的集合,是向系統(tǒng)提供操作人員干預(yù)指令及數(shù)據(jù)的接口設(shè)備。鍵盤可分為編碼鍵盤和非編碼鍵盤兩種類型。前者能自動識別按下的鍵并產(chǎn)生相應(yīng)的代碼,并行或串行方式發(fā)給CPU。它使用方便,接口簡單,響應(yīng)速度快,但需要專用的硬件電路。后者則通過軟件來確定按鍵并計算鍵值。這種方法雖然沒有編碼鍵速度快,但它不需要專用的硬件來支持,因此得到了廣泛的應(yīng)用[7]。在鍵盤設(shè)計時,必須考慮按鍵的確認、重鍵和連擊的處理、按鍵防抖技術(shù)、鍵盤的設(shè)置等問題。在鍵數(shù)較少時,可以使用獨立式鍵盤,即每個按鍵接一根輸入線,各鍵的工作狀態(tài)互不影響。在鍵數(shù)較多時,一般都使用矩陣鍵盤。鍵盤與單片機的I/O口連接時,單片機通過對I/O口進行掃描,而對鍵盤進行掃描的方法又可分為程控掃描法、中斷掃描法和定時掃描法。程控掃描法是由程序控制鍵掃描的方法。定時掃描方式是CPU每隔一定時間(如10ms)對鍵盤掃描一遍。當(dāng)發(fā)現(xiàn)有鍵按下時,便進行讀入鍵盤操作,求出鍵值,并分別做相應(yīng)的處理。當(dāng)對時間要求嚴格時,可以使用中斷掃描法。中斷掃描法就是當(dāng)沒有鍵按下時,CPU不對鍵盤進行掃描,當(dāng)有鍵按下,立即向CPU申請中斷,CPU中斷后,立即轉(zhuǎn)到響應(yīng)的中斷服務(wù)子程序,對鍵盤掃描,并做相應(yīng)的處理。 鍵盤設(shè)置本設(shè)計中由于用到的鍵數(shù)較多,所以使用4*4的矩陣鍵盤,使用軟件去抖。并且單片機對時間的要求不是特別嚴,所以本設(shè)計采樣掃描鍵盤。 鍵盤示意圖,0~9是數(shù)字鍵,.小數(shù)點按鍵,ENTER鍵是確認鍵,HL鍵是更改上下限報警值鍵,KeyLock鍵是鎖鍵盤鍵,Delete鍵是取消鍵,在溫度節(jié)點中,Tspot鍵表示顯示更改折點值,并能更改測溫范圍;在壓力節(jié)點中,Pa鍵用于更改測壓范圍。 KeyLock鍵是鎖鍵盤的,由于鍵盤不是經(jīng)常使用,而使用時必須占用數(shù)碼管顯示按下的鍵,同時也能防止鍵盤誤操作,有必要設(shè)定鎖鍵盤鍵。當(dāng)要使用鍵盤時,則必須首先按下此鍵,表示進入鍵盤處理,此后按下鍵盤的其他鍵值時能在顯示上馬上體現(xiàn)出來,直到再次按下KeyLock鍵,退出,鍵盤處理。盡管KeyLock鍵能防止鍵盤誤操作,但當(dāng)按錯鍵時就退出鍵盤處理,比較麻煩,所以最好有一個Delete取消鍵,用于在各個鍵之間切換,而不退出鍵盤處理。確認鍵的設(shè)置是顯而易見的,各個數(shù)值的確定,功能鍵的確定都要依靠ENTER確認鍵來實現(xiàn)。在實際的工業(yè)現(xiàn)場中,熱電偶由于各種原因造成損壞,必須更換熱電偶,同時也有可能在同一個測溫點要測量的溫度范圍也有可能發(fā)生變化,需要更換不同類型的熱電偶,所以在本設(shè)計設(shè)計的系統(tǒng)中可以在線更改熱電偶的線性化轉(zhuǎn)折點坐標值,在更改熱電偶的兩端折點時也就更改了熱電偶的測溫范圍,這樣,在要更換不同類型的熱電偶或更改熱電偶的測溫范圍時,就可以不用更換系統(tǒng)其它的部分,只要通過鍵盤更改折點就可以了。這樣設(shè)計既減少了系統(tǒng)維護的成本,又有利于系統(tǒng)的維護。所以設(shè)定更改折點值的Tspot鍵。更改上下限報警值在實際的工業(yè)生產(chǎn)中也是經(jīng)常用到的,所以本設(shè)計設(shè)定了HL鍵,用于更改上下限報警值。本設(shè)計通過4*4矩陣鍵盤的8個輸出口與89C52的P2口的8個輸入/輸出口相接,、、 。當(dāng)有鍵按下時,通過單片機對P2口的讀寫操作,就可以確定是否有鍵按下,以及哪個鍵被按下??撮T狗定時器的預(yù)置時間是通過X5045的狀態(tài)寄存器的相應(yīng)位來設(shè)定的。X5045狀態(tài)寄存器共有6位有含義,其中wdwd0和看門狗電路有關(guān),其余位和EEPROM的工作設(shè)置有關(guān)。wd1=0,wd0=0。 wd1=0,wd0=1。 wd1=1,wd0=0;。wd1=1,wd0=1,禁止看門狗工作。X5045在讀寫操作之前,需要先向它發(fā)出指令。 X5045指令及其含義指令名指令格式操作WRE000000110允許寫操作WRDI000000100禁止寫操作RDSR000000101讀狀態(tài)寄存器WRSR000000001寫狀態(tài)寄存器READ0000A8011把開始于所選地址中WRITE0000A8010把數(shù)據(jù)寫入所選地址。X5045芯片內(nèi)包含有一個看門狗定時器,可通過軟件預(yù)置系統(tǒng)的監(jiān)控時間。在看門狗定時器預(yù)置的時間內(nèi)若沒有總線活動,則X5045將從RST輸出一個高電平信號,經(jīng)過微分電路CR3輸出一個正脈沖,使單片機復(fù)位。 看門狗及復(fù)位電路,復(fù)位信號共有3個:上電復(fù)位(CR2),人工復(fù)位(S、RR2)和watchdog復(fù)位(CR3),通過或門綜合后加到單片機RST端。CR3的時間常數(shù)不必太大,有數(shù)百微秒即可,因為這時單片機的振蕩器已經(jīng)在工作。第五章 軟件編程 軟件編程概述軟件設(shè)計部分是本設(shè)計的重點。軟件設(shè)計的主要功能是鍵盤、通信和信號采集的編程及程序的調(diào)試。由于C51語言相對單片機匯編語言具有可讀性強,可移植性強,易學(xué)易用,便于修改維護等優(yōu)點,本設(shè)計采用C51進行下位機傳感器節(jié)點進行軟件編程。上位機部分的監(jiān)測界面使用VB語言編程。本設(shè)計的軟件編程主要是對溫度傳感器節(jié)點和壓力傳感器節(jié)點的采集部分的編程,由于基于CAN總線的遠程數(shù)據(jù)采集系統(tǒng)的節(jié)點間的通信就是和采集部分在一起,所以本章也涉及CAN總線通信程序。通過編寫各功能子程序,實行模塊化編程,這樣能提高編程效率,便于閱讀和修改,本設(shè)計實行模塊化設(shè)計。在本章接下來的小節(jié)中,通過對溫度傳感器節(jié)點和壓力傳感器節(jié)點的算法分析,設(shè)計系統(tǒng)的軟件,源程序見附錄D。 溫度傳感器節(jié)點軟件設(shè)計溫度傳感器節(jié)點主要是分時采集兩路溫度信號,經(jīng)A/D轉(zhuǎn)換后送單片機進行冷端溫度補償及標度變換送顯示,并判斷是否超限,根據(jù)判斷顯示結(jié)果。當(dāng)有鍵盤輸入時,進入鍵盤處理子程序處理鍵盤的輸入,鍵盤主要是更改上、下限,更改溫度標度變換時的折點坐標,在鍵盤更改程序參數(shù)后,調(diào)用數(shù)據(jù)上傳函數(shù)把更改后的參數(shù)傳輸給上位機,以實現(xiàn)各個節(jié)點數(shù)據(jù)信息的同步。在鍵盤鎖開鎖后,只采樣兩路信號后不顯示出來,因為此時鍵盤已經(jīng)占據(jù)數(shù)碼管顯示。通過定時中斷程序把采集的溫度數(shù)據(jù)傳輸?shù)缴衔还?jié)點。MCU初始化主要是對單片機中用到的全局變量的定義,如鍵盤的輸入值、報警值、溫度采樣值的定義及賦初值,也包括用到的端口和一些標志位等的定義和賦初值以及看門狗的初始化。圖中CAN 控制器的復(fù)位,初始化,以及定時器T0、中斷的初始化都是為溫度傳感器節(jié)點與上位機節(jié)點通信做準備。 溫度傳感器節(jié)點主程序流程圖鍵盤掃描處理子程序是本設(shè)計的重點,在鍵盤掃描處理程序中先掃描鍵盤,若有鍵按下,延時10ms,再判斷是否有鍵按下,沒有則退出鍵盤,有則讀取鍵值,并設(shè)置有鍵按下標志位。等待按鍵釋放后,判斷是否是鎖鍵盤鍵按下了,若是則對鎖鍵盤標志位取反,退出循環(huán)。否則繼續(xù)往下執(zhí)行。當(dāng)鎖鍵盤標志位和鍵標志位都為1時,判斷是否是小數(shù)點鍵按下,若是則設(shè)置小數(shù)點標志位并送顯示,否則判斷是否是數(shù)字鍵,要是則調(diào)用數(shù)字鍵處理子程序,要不是則判斷是否是其它功能鍵按下,若是則進入相對應(yīng)的功能鍵處理子程序,處理完后退出鍵盤處理子程序。 溫度鍵盤掃描處理子程序流程圖 在數(shù)字鍵處理子程序中,主要是如何實現(xiàn)的鍵盤輸入數(shù)字的移動方向。初始化后判斷小數(shù)點標志位是否為1,若為1,則求出小數(shù)點后位數(shù)的個數(shù)再加1,賦給變量K,然后把新輸入的數(shù)字除以10的K次方后和原數(shù)值相加后就得到處理后的數(shù)值。若小數(shù)點標志位不為0,則原數(shù)值乘10和新輸入的數(shù)字相加得到處理后的數(shù)值,最后送顯示。子 溫度節(jié)點數(shù)字鍵處理子程序流程圖 更改折點處理子程序流程圖。,當(dāng)按下TSpot鍵時,首先循環(huán)顯示已有的折點的溫度和對應(yīng)的毫伏電壓。然后設(shè)置更改折點標志位SpotFlag=1,以便按下確認鍵后通過判斷SpotFlag的值來更改折點坐標。,當(dāng)按下HL鍵時,更改報警值,首先判斷更改標志位的值,若為0,則使High_Flag=1,當(dāng)按下數(shù)值并按下確認鍵后就能更改上限報警值,使flag1=1,準備下一次按下HL鍵能切換到更改下限報警值,使Low_Flag=0。若為flag1=1則與前面情況相同,同時還有可能出現(xiàn)兩種情況都不是的情況,直接退出。 更改報警值處理子程序流程圖 取消鍵處理子程序流程圖,當(dāng)按下Delete鍵時,對鍵盤的輸入的數(shù)值清零,報警相關(guān)標志位、小數(shù)點相關(guān)標志位清零,只是在改變折點時只對數(shù)值清零,而不對標志位清零,以免造成輸入的混亂。由于鍵盤中有幾個功能鍵,所以在按下確認鍵后首先判斷各功能鍵標志位,若某功能鍵標志位為1,則說明是對該功能鍵進行相關(guān)的操作。,首先進行初始化,判斷是否折點標志位是否為1,若是,再判斷折點更改標志位是否為0,為0說明輸入的數(shù)值是溫度標度變換折線化的折點對應(yīng)的溫度,把它存于折點溫度數(shù)組,若為1則把它存于折點毫伏電壓數(shù)組。 溫度節(jié)點確認鍵處理子程序流程圖當(dāng)輸入的毫伏電壓數(shù)組的數(shù)達到4個時,調(diào)用上傳溫度折點子程序,把鍵盤更改的折點傳輸?shù)缴衔粰C,以保持各節(jié)點的一致性。接著計算各折線段溫度送顯示。然后對相關(guān)標志位清零,退出鍵盤處理子程序。若折點標志位不為1時,接著判斷上限報警標志位是否為1,若為1,更改上限報警值并顯示,接著調(diào)用上傳上限報警子程序上傳上限報警值,最后清除相關(guān)標志位和鍵盤數(shù)值,退出鍵盤處理子程序。若上限報警標志位不為1,再判斷下限報警標志位是否為1,若不為1,退出鍵盤處理子程序,若為1,和上限報警標志位為1進行基本相同的操作,最后推出。溫度傳感器節(jié)點的A/D采樣濾波子程序放在了的定時中斷采樣溫度中,本設(shè)計只給出A/D采樣濾波子程序,通信部分請參照基于CAN總線的遠程數(shù)據(jù)采集系統(tǒng)的通信模塊。 溫度節(jié)點采樣濾波子程序流程圖 溫度節(jié)點中值濾波子程序流程圖由于溫度等信號受環(huán)境的影響比較大,常使采樣值偏離真實值,所以在單片機系統(tǒng)中,常采用多次采集信號構(gòu)成的數(shù)據(jù)系列進行平滑加工,以提高其有用信號在采樣值中所占的比重,這樣能減少干擾,保證可靠行。濾波方法有中值濾波、算術(shù)平均值濾波、加權(quán)平均值濾波、滑動平均值濾波、RC低通數(shù)字濾波、復(fù)合數(shù)字濾波等。本設(shè)計溫度節(jié)點采用的是中值濾波軟件濾波的方法,循環(huán)采樣3次,取中間值作為最終采樣值,這樣就減少了誤差。 溫度節(jié)點A/D采樣子程序流程圖,用到了A/D采樣子程序,先初始化,由于本設(shè)計采用的是TLC0832來進行A/D采樣,查TLC0832的時序圖可知,在片選信號CS=0后要延時一段時間,而且在第4個時鐘時進行通道選擇,第5個時鐘什么也不做,從第六個時鐘的下降沿開始,TLC0832開始往DO輸出口送轉(zhuǎn)換數(shù)據(jù),并且是高位在前,通過讀取DO口的電平信號,再通過a=(a1)|TLC0832DO,就能把DO口的電平狀態(tài)存儲于a中,每次相與后a都左移一位,用來存儲下次DO的電平,8個時鐘后A/D轉(zhuǎn)換結(jié)束,此時A/D采樣結(jié)果就存儲于字符a中,接著CS置1。由第二章分析,本設(shè)計采用軟件補償?shù)姆椒āS蔁犭娕继匦缘睦涠藴囟妊a償公式可知,通過冷端溫度求出冷端溫度的毫伏熱電勢,再和沒有補償?shù)臒犭娕嫉臒犭妱菹嗉樱偷玫搅藢嶋H測量溫度對應(yīng)的熱電勢,從而實現(xiàn)了熱電偶的冷端溫度補償。
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1