【正文】
N oN oN oY e sY e sY e sY e sd a n g w e i + + 。gun=gunrun。} if(jianzhi==19){tuorun=!tuorun。 if(dangwei1=16) {dangwei1=16。} } EEPROM 掉電保護程序 將條帶切割機設置的數(shù)據(jù)儲存在單片機自帶的 EEPROM 內,這樣就可以有掉電保護功能,以免丟失數(shù)據(jù)。//Disable(); //關閉 IAP 功能,清相關的特殊功能寄存器,使CPU 處于安全狀態(tài) BYTE IapReadByte(WORD addr)。然后將設定長度 temper1 劃分為三部分存入;第一部分存放萬位和千位 Byte_program(0x2200,temper1/1000)。由于延時范圍為 0~9,只需一個字節(jié) (0~256)的存儲置即可, Byte_program(0x2800,yanshi)。 Byte_program(0x20xx,temper%10)。 系統(tǒng)上電后數(shù)據(jù)將被讀出temper=Byte_read(0x20xx)*1000+Byte_read(0x20xx)*10+Byte_read(0x20xx)。 報 警 入 口設 定 長 度 = 已 卷 長度 ?滿 盤 開 關 開啟 ?滿 盤 閃 爍蜂 鳴 器 開 、電 機 停 止N oY e sY e sN o報 警 出 口s t a t u s = 3 圖 47 報警程序流程圖 具體程序: {///已卷長度等于設定長度報警 if((temper2==temper1)amp。status=4。temper2++。同時每隔 10ms 對按鍵情況掃描一次,用以判斷是否有按鍵按下或 按下按鍵是否抬起。 count2++。 P2=P2amp。 scan1=P1。 _nop_()。存 儲 數(shù) 據(jù)g u n r u n = = 1 ?T e m p e r 9 9 9 9 9 ?t e m p e r = 0t e m p e r 1 = ?t e m p e r 2蜂 鳴 器 開 、s t a t u s = 3Y e sN oY e sY e sY e sN oN o外 部 中 斷 出 口定 時 中 斷 入 口c o u n t 1 = = 5 0 ?T H 1 T L 1 賦 值 ;c o u n t 1 + + 、c o u n t 2 + +c o u n t 1 = 0 , b j = 0Y e sN oC o u n t 2 = = 1 0 0 ?C o u n t 2 = 0是 否 有 按 鍵 按 下獲 取 鍵 值Y e sY e sN oN o定 時 中 斷 出 口 圖 410 外部中斷 0 流程圖 圖 411 定時中斷 1 流程圖 第 5章 制作調試 制作 本次設計制作過程包括:繪制原理圖、 PCB 圖、焊接等。設計繪制 PCB 前應了解相關元器件的封裝。 然后,圖繪制好之后就是開發(fā)板的制作,制作過程中應根據(jù)所繪的原理圖來連接各個元器件,確保接線網(wǎng)絡準確無誤。布局中,根據(jù)控制實用方便,焊 接清晰方便,外觀明了等原則,使控制器使用起來方便,焊接起來輕松。焊接模塊有問題時,首先檢查連接電路是否正確,如有誤,修改接錯線路。 軟件調試與所選用的軟件結構和程序設計技術有關。所以要一個個子程序分別調試。當這些控制模塊都能良好運行后,就可以開始測試各個模塊之間能否協(xié)同運行,是否會發(fā)生干擾和沖突。 該系 統(tǒng)具有結構簡單、性價比高、使用效率高等特點,靈活的按鍵控制方式來設定功能等參數(shù),增加了 系統(tǒng)的靈活性,對已卷長度采集和顯示、系統(tǒng)狀態(tài)的顯示增加了系統(tǒng)的實用性。單片機原理及其接口技術 [M].清華大學出版社, .. [16] 應小咪 等 .計算機應用教程 [M].上海:上海交通大學出版社, [17] 邊春元 .C51 單片機典型模塊設計與應用 [M].機 械工業(yè)出版社, [18]胡漢才 . 單片機原理及其接口技術 [M]. 北京: 清華大學出版社, 20xx. [19]李廣弟 ,朱月秀 ,冷祖祁 . 單片機基礎 [M]. 北京:北京航空航天大學出版社, 20xx. [20]樓然苗 ,李光飛 . 單片機課程設計指導 [M]. 北京:北京航空航天大學出版社, 20xx. [21]戴仙金 . 51 單片機及其 C 語言程序開發(fā)實例 [M]. 北京:清華大學出版社, 20xx. [22]高慧芳 . 單片機原理與應用技術 [M]. 北京:科學出版社, 20xx. [23]丁元杰 .單片微機習題集與 實驗指導書 .機械工業(yè)出版社, .. [22]霍孟友 . 單片機原理與應用 [M]. 北京 :機械工業(yè)出版社 , . [24]李全利 , 遲容強 . 單片機原理及接口技術 [M]. 北京 :高等教育出版社 , . [25]馬長林 ,陳怡 ,程利民 . 單片機實踐應用與技術 [M]. 北京 :清華大學出版社 , 李朝青 . 單片機原理及接口技術 [M]. 北京:北京航空航天大學出版社, 1994. 畢 業(yè) 設 計 說 明 書 33 [26]陳杰,黃鴻 . 傳感器與檢測技術 [M]. 北京:高等教育出版社, 20xx. [27]王慶利,劉奎,袁建敏 . 單 片機設計標準教程 [M]. 北京:北京郵電大學出版社, 20xx. [28]閆玉德 ,俞虹 . MCS51 單片機原理與應用( C 語言版) [M]. 北京:機械工業(yè)出 版社, 20xx [29]Gourab Sen. Embedded Microcontroller Based DC Motor Control: A Project Based Approach [J]. Embedded Microcontroller Interfacing, 20xx, 83102. [30]Jan Axelson. The Microcontroller Idea Book: Circuits Programs amp。 如果中小企業(yè)都采用全功能數(shù)控系統(tǒng),雖然功能豐富,但成本高,而大量的機械零件需要高速加工制造,需要大量便宜且自動化程度高的加工設備,所以若此套系統(tǒng)能轉化為產(chǎn)品,相信非常適合我國一般的中小型企業(yè)。 第 6章 總結 本設計以 STC89C51 單片機為核心 設計實現(xiàn)條帶切割機部分功能的控制系統(tǒng) ,并設計出部分外圍功能硬件,實現(xiàn)了機床的 低成 本的自動化控制要求。在這階段若發(fā)生故障,可以考慮各子程序在運行時是否破壞現(xiàn)場,緩沖單元是否發(fā)生沖突,零位的建立和清除在設計上是否失誤,堆棧區(qū)域有否溢出,輸入設備的狀態(tài)是否畢 業(yè) 設 計 說 明 書 31 正常等等。如果采用實時多任務操作系統(tǒng),一般是逐個任務。最后如果檢測網(wǎng)絡信號能夠順利傳送,而模塊依然無法正常工作,則檢測各個元器件,看看各器件是否壞掉,及時更換損壞器件。每焊接好一個模塊之后要調試檢查一下能否正常工作,有沒有達到相應的功能要求。本次制作是在萬能板上焊接電路。同時,需要會使用一款電子繪圖軟件,能夠使用它繪制出原理圖, PCB 圖。 首先,繪制原理圖之前所需各模塊電路的原理、連接和組成元器件。0xe0。 P2=P2|0xe0。 _nop_()。amp。 TL0=(6553610000)%256。amp。 外部中斷 0服務流程圖如圖 410 所示, 外部中斷 0 來記錄霍爾傳感器脈沖次數(shù),從而轉化已卷長度,即外部中斷 0 中斷 n次 (n為中斷次數(shù)為 1 米比例系數(shù),可根據(jù)實際具體情況改變 ),系統(tǒng)得出已卷長度增加 1 米,并判斷數(shù)據(jù)是否大于 99999,同時判斷已卷長度是否等于設定長度。(temper10)) status=3 。 報警程序 本系統(tǒng)有兩種情況會發(fā)生報警: ,如果已切帶的長度到達設定長度值,系統(tǒng)自動記憶當前機床速度狀態(tài),并使機床暫時處于停止 運行狀態(tài),蜂鳴器長鳴一聲,表示設定長度已切割完成。 Byte_program(0x2A01,temper2%1000/10)。 然后將已卷總長度 temper 和已卷長度 temper2 同設定長度 temper1 樣分為三部分存入Byte_program(0x20xx,temper/1000)。 第三部分存放個位 Byte_program(0x2202,temper1%10)。//擦除 扇區(qū)畢 業(yè) 設 計 說 明 書 26 IapProgramByte(IAP_ADDRESS+k,xianshi[k])。 表 45 STC89C52RC 單片機內部 EEPROM 詳細地址表 EEPROM 內保存數(shù)據(jù)有本系統(tǒng)需要記憶“已卷長度” “已卷總長度”“設定長度”和“延時時間”四個數(shù)據(jù)及 EEPROM 掉電保護程序。} if(jianzhi==21) if(dangwei11) {dangwei1。tuo=tuorun。 if(dangwei2=31) if(jianzhi==18){ if(dangwei20) {dangwei2。d a n g w e i 1 = 1 6 ? = 1 6N oY e s電 機 控 制 出 口圖 46 電機控制流程圖 畢 業(yè) 設 計 說 明 書 25 具體程序: if(status==0) if(jianzhi==16){ gunrun=!gunrun。 d a n g w e i + ?d a n g w e i ?d a n g w e i 1 ? d a n g w e i t u o r u n = ! t u o r u n 。在滾布筒 /拖布盤停止狀態(tài)下按下“滾布筒停止 /啟動” /“托布盤停止 /啟動”,將啟動滾布筒 /啟動托布盤電機;在滾布筒 /托布盤運行狀態(tài)下按下“滾布筒停止 /啟動” / “托布盤停止 /啟動”,將使?jié)L布筒 /托布盤電機停止轉動;檔位加減控制可以按下 “ ”或“ ”鍵對電機轉速進行升速或降速的調速控制。 /////////////位置 9///////////////// LCD_write(10,temper1/10000)。 /////////////位置 5///////////////// //設定長度數(shù)值 LCD_write(6, temper1%10)。 /////////////位置 1///////////////// LCD_write(2,temper%100/10)。滾布筒檔位顯示為第三行,檔位每加 2,往前升一格;拖布盤檔位顯示為第四行檔位每加 1,往前升一格,最小一格,滿格為 16。根據(jù)此方法如表 所示: 表 42 0~31 位地址對應表 根據(jù)上表采用的方法,得出本系統(tǒng)地址位數(shù)組如下: uchar TAB1[]={0x00,0x04,0x08,0x0C,0x10,0x14,0x18,0x1C,0x20,0x24,0x28,0x2C, 0x30,0x34,0x38,0x3C,0x40,0x44,0x48,0x4C,0x50,0x54,0x58,0x5C,0x60,0x64,0x68,0x6C,0x70,0x74,0x78,0x7C}。由表 42 得出,約定引腳 5( PIN)為地址位開始位,即為地址位 0。一旦 CS 管腳為 0,將出現(xiàn)一個新的工作模式 ID。數(shù)據(jù)模式包括 READ、 WRITE 和 READMODIFYWRITE 操作。 scan2=P2amp。 P1=0x00。0x1f。鍵盤掃描程序用于完成按鍵的判斷、按鍵的去抖動以及按鍵的鍵值處理、存儲,本次設計運用了線反轉法并將掃描程序放入中斷中處理。 或滿盤開關開啟,進入停機狀態(tài),只響應“確定”和“刪除”按鍵;按下 “確定”,滾布筒立即以滿盤時的狀態(tài)動作;如果不想繼續(xù)原先的狀態(tài)切帶加工,按下“刪除”即可,這時機床處于停止狀態(tài)。按下延時鍵,進入延時狀態(tài),可對延時時間進行設定,此時只響應數(shù)字鍵 0~9 和確定鍵。工作狀態(tài)時按下“刪除”鍵或“電機啟?!辨I時,系統(tǒng)進入正常停機狀態(tài)。TL1=(6