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

正文內(nèi)容

基于51單片機的碎紙機控制系統(tǒng)本科畢業(yè)設計(編輯修改稿)

2025-07-16 13:10 本頁面
 

【文章內(nèi)容簡介】 速鍵)為速度調(diào)節(jié)按鍵,當在緊急情況出現(xiàn)或者時間緊張時,可以按下S3鍵,切換碎紙機工作速度,使碎紙機快速切碎文件。S4為復位鍵,按下S4能夠使單片機控制系統(tǒng)重新啟動,重新開始。 按鍵編號與對應功能表按鍵編號 功 能按鍵S1 急停按鈕按鍵S2 刀具切換按鍵S3 速度切換按鍵S4 系統(tǒng)復位 第四章 碎紙機控制系統(tǒng)軟件設計由于C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,易學易用因此,碎紙機控制系統(tǒng)軟件全部采用高級語言C語言編寫。編程軟件為Keil C51編譯器。 單片機C語言簡介隨著單片機開發(fā)技術(shù)的不斷發(fā)展,目前已有越來越多的人逐漸使用高級語言來進行軟件開發(fā),其中以C語言為主。C語言由早期的編程語言BCPL(Basic Combined Programming Language)發(fā)展演變而來。1970年美國貝爾實驗室的Ken Thompson根據(jù)BCPL語言設計出B語言,并用B語言編寫了著名的UNIX操作系統(tǒng)。1972~1973年。目前,絕大多數(shù)的處理器開發(fā)板使用C語言編寫例程,C語言發(fā)展非常迅速,成為最受歡迎的語言之一,主要因為它具有強大的功能。歸納起來C語言具有如下特點:C語言具有結(jié)構(gòu)化控制語句。結(jié)構(gòu)化語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦阌诰S護及調(diào)試。C語言既有高級語言的特點,又具有匯編語言的特點。它即可以像匯編語言一樣對位、字節(jié)和地址這些計算機基本工作單元進行操作。又能像其他高級語言一樣,編寫出不依賴于特定的計算機硬件的程序,用C語言編寫的源程序具有很好的移植性。C語言功能齊全、生成代碼質(zhì)量高。C語言具有各種各樣的數(shù)據(jù)類型,并引入了指針概念,可使程序效率更高。用C語言編寫的程序,編譯后一般只比有豐富經(jīng)驗的匯編編程人員所編寫的匯編程序效率低10%~20%。 Keil C51軟件簡介Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。運行Keil軟件需要WIN9NT、WIN2000、WINXP等操作系統(tǒng)。如果使用C語言編程,那么Keil幾乎就是不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也能夠事半功倍。Keil是目前最流行的MCS51系列單片機的開發(fā)軟件,由美國Keil Software公司出品。通過Keil軟件的集成開發(fā)環(huán)境(uVision)對C語言源程序進行編譯,對目標模塊和庫模塊進行鏈接以產(chǎn)生一個目標文件,生成HEX文件,然后下載到單片機中。 C51軟件進行程序調(diào)試的界面。 Keil C51進行程序調(diào)試的界面 碎紙機控制系統(tǒng)軟件組成碎紙機控制系統(tǒng)主要由系統(tǒng)主控制程序、溫度檢測程序、數(shù)碼管顯示程序等模塊組成。單片機上電之后首先就會控制三個三個傳感器對各個信號進行檢測,當檢測到文件,并且厚度合適,而此時溫度也在工作范圍之內(nèi),單片機將會啟動默認的刀具進行條狀碎紙,如果此時接到命令加快速度或者改變刀具,單片機將進行相應動作,如果單片機檢測到文件存在,但是只要有厚度超標、溫度超標任意一個出現(xiàn),單片機將控制碎紙機,使之不工作,當沒有文件送入時,碎紙機也不會工作,但是此時處于待機狀態(tài),當待機時間超過一定時,單片機將自動切斷電源,最大限度的節(jié)省電能。單片機不間斷的掃描按鍵和傳感器輸出信號,一旦檢測到信號輸入,則啟動碎紙機恢復待機狀態(tài),需要進行碎紙時,單片機可以迅速的啟動碎紙機在主電機進行碎紙。上電待機光電檢測默認中速過載報警默認選刀具1高速碎紙刀具組合2條狀碎紙開始粉末碎紙開始刀具選擇溫度檢測厚度檢測合適過熱報警開啟風冷厚度檢測自動斷電文件送入厚度超標溫度過高條狀沫狀返回待機沒有文件 碎紙機控制系統(tǒng)程序軟件流程圖 碎紙機控制系統(tǒng)主控制程序碎紙機控制器要負責檢測文件的存在、檢測文件是否過載、檢測電機溫度,然后要控制刀具選擇、速度選擇、控制報警系統(tǒng)和風冷系統(tǒng),還要控制兩個數(shù)碼管顯示當前電機溫度,碎紙機控制系統(tǒng)主控制程序部分如下,雙斜杠后面為注釋。void main(){ int gewei,shiwei。 P1=0。 P3=0。 // 關閉數(shù)碼管 SanRe = 0。 // 關閉散熱系統(tǒng) BaoJing = 0。 // 關閉報警器 StopOut = 0。 // 關閉電機 SuDuOut = 0。 // 速度切換輸出關閉 DaoJuOut = 0。 // 刀具切換輸出關閉 while(1) { read_temp()。 // 讀取溫度 gewei = tvalue%100/10+0。 shiwei = tvalue%1000/100+0 。 P3=table[shiwei]。 //顯示十位數(shù) P1=table[gewei]。 // 顯示個位數(shù)/************************溫度測量結(jié)果處理**************************/ if(tvalue300) // 當溫度高于30度時 { SanRe=1。 // 開啟風冷散熱 if(tvalue320) // 當溫度高于32度時 { BaoJing = 1。 // 開啟報警器 } else { BaoJing = 0。 // 關閉報警器 } } else { SanRe = 0。 // 關閉風冷散熱 BaoJing = 0。 // 關閉報警器 }/**************************刀具切換判斷*****************************/ if(DaoJuIn == 0) //如果刀具切換按鍵按下 { DaoJuOut= ~ DaoJuOut。 //切換刀具 } else { 。 }/**************************速度切換判斷*****************************/ if(SuDuIn == 0) //如果速度切換按鍵按下 { SuDuOut= ~ SuDuOut。 //改變切削速度 } else { 。 }/***********當有合適的文件送入,并且溫度正常時,開啟電機碎紙*************/ if( ((GuangD1==0)||(GuangD2==0))amp。amp。(tvalue360) ) //任意光電傳感器檢測到文件 { StopOut = 1。 // 開啟電機 } else { StopOut = 0。 // 關閉電機 } delay1ms(200)。 // 延時一下,給溫度傳感器緩沖時間 }} 溫度檢測程序設計中使用的溫度傳感器為DS18B20,該傳感器為獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊,測溫范圍 -55℃~+125℃,℃。支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,最多只能并聯(lián)8個,實現(xiàn)多點測溫,如果數(shù)量過多,會使供電電源電壓過低,從而造成信號傳輸?shù)牟环€(wěn)定。工作電源: 3~5V/DC ,在使用中不需要任何外圍元件, 測量結(jié)果以9~12位數(shù)字量方式串行傳送;不銹鋼保護管直徑 Φ6 ,適用于DN15~25, DN40~DN250各種介質(zhì)工業(yè)管道和狹小空間設備測溫。DS18B20的初始化步驟:(1) 先將數(shù)據(jù)線置高電平“1”。  ?。?) 延時(該時間要求的不是很嚴格,但是盡可能的短一點) (3) 數(shù)據(jù)線拉到低電平“0”。   (4) 延時750微秒(該時間的時間范圍可以從480到960微秒)。  ?。?) 數(shù)據(jù)線拉到高電平“1”。  ?。?) 延時等待(如果初始化成功則在15到60毫秒時間之內(nèi)產(chǎn)生一個由DS18B20所返回的低電平“0”。據(jù)該狀態(tài)可以來確定它的存在,但是應注意不能無限的進行等待,不然會使程序進入死循環(huán),所以要進行超時控制)。  ?。?) 若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時,其延時的時間從發(fā)出的高電平算起(第(5)步的時間算起)最少要480微秒。  ?。?) 將數(shù)據(jù)線再次拉高到高電平“1”后結(jié)束。void ds1820rst() /*ds1820復位*/{ unsigned char x=0。 DQ = 1。 //DQ復位 delay_18B20(4)。 //延時 DQ = 0。 //DQ拉低 delay_18B20(100)。 //精確延時大于480us DQ = 1。 //拉高 delay_18B20(40)。 } DS18B20讀操作步驟:(1)將數(shù)據(jù)線拉高“1”。  ?。?)延時2微秒。   (3)將數(shù)據(jù)線拉低“0”。   (4)延時3微秒。  ?。?)將數(shù)據(jù)線拉高“1”。  ?。?)延時5微秒。  ?。?)讀數(shù)據(jù)線的狀態(tài)得到1個狀態(tài)位,并進行數(shù)據(jù)處理。  ?。?)延時60微秒。uchar ds1820rd()/*讀數(shù)據(jù)*/{ unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 //給脈沖信號 dat=1。 //第一個數(shù)據(jù)保存在最高位 DQ = 1。 //給脈沖信號 if(DQ) dat|=0x80。 delay_18B20(10)。 } return(dat)。}DS18B20溫度的讀?。篋S18B20在出廠時以配置為12位,讀取溫度時共讀取16位,還需要判斷正負。前5個數(shù)字為符號位,當前5位為1時,讀取的溫度為負數(shù);當前5位為0時,讀取的溫度為正數(shù)。16位數(shù)字擺放是從低位到高位。read_temp()/*讀取溫度值并轉(zhuǎn)換*/{ uchar a,b。 ds1820rst()。 ds1820wr(0xcc)。 //*跳過讀序列號*/ ds1820wr(0x44)。 //*啟動溫度轉(zhuǎn)換*/ ds1820rst()。 ds1820wr
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1