基于A(yíng)T89S52與PIC16F877A的在線(xiàn)編程控制系統
PIC16F877A部分電路原理如圖3所示。
4 軟件設計
4.1 AT89S52部分
首先執行系統初始化,初始時(shí)鐘,全局變量,定時(shí)器,IO端口,鍵盤(pán)中斷服務(wù)子程序。
然后進(jìn)入MAINLOOP循環(huán)程序,等待接受鍵盤(pán)中斷。如果鍵盤(pán)有輸入動(dòng)作,系統產(chǎn)生鍵盤(pán)中斷,進(jìn)入鍵盤(pán)中斷服務(wù)子程序。
鍵盤(pán)中斷服務(wù)子程序的主要功能是生成命令數據包,并根據用戶(hù)指令處理該命令數據包。
命令數據包的格式如下:
若用戶(hù)確認,則發(fā)送到PIC16F877A執行;
若用戶(hù)取消,則退出鍵盤(pán)中斷服務(wù)子程序,重新進(jìn)入等待狀態(tài)。系統運行流程圖如圖4所示。
4.2 PIC軟件結構
PIC系統初始化后首先按默認參數啟動(dòng)PWM輸出,在啟動(dòng)過(guò)程中不斷地進(jìn)行A/D轉換,將采集到的數據根據PID策略調節PWM的占空比,從而達到調節電機轉速的目的,同時(shí)不問(wèn)斷的監聽(tīng)PSP通道,若收到AT89S52的命令數據包,馬上更新默認啟動(dòng)參數,讓電機以新參數模式運行在新轉速狀態(tài)。
PIC16F877A執行軟件運行流程圖如圖5所示。
5 結 語(yǔ)
利用AT89S52作為主處理器,PIC16F87X作為從處理器,使控制精度大為提高,可達10位PWM精度。AT89S52與PIC16F87X具有在線(xiàn)編程功能,功能齊全,片上資源豐富,可以滿(mǎn)足系統升級要求。隨著(zhù)帶有系統在線(xiàn)編程功能的單片機得到廣泛應用與發(fā)展,ISP技術(shù)成了未來(lái)發(fā)展方向,基于在線(xiàn)編程技術(shù)的控制系統應用也將越來(lái)越廣泛。
評論