基于PROFIBUS-DP協(xié)議模塊的智能執(zhí)行器
2 軟件設(shè)計
對VPC3的軟件操作主要包括兩個部分:VPC3的初始化、主程序和VPC3的中斷處理。主程序和中斷處理流程分別如圖2和圖3所示。
VPC3的初始化程序應(yīng)放在主程序的前面,而中斷處理程序完成CPU對VPC3中斷輸出的響應(yīng)。VPC3上電復(fù)位之后,在正常工作之前必須進行初始化,以配置各個寄存器。中斷處理程序用于處理VPC3發(fā)生的各種事件,這些事件包括新的參數(shù)報文事件、全局控制命令報文事件、進入或退出數(shù)據(jù)交換狀態(tài)事件、新的配置報文事件、新的地址設(shè)置報文事件、監(jiān)測到波特率事件和看門狗溢出事件。
數(shù)據(jù)輸入和輸出處理(輸入、輸出相對于主站而言)及用戶診斷數(shù)據(jù)輸入可以放在應(yīng)用程序主循環(huán)中。在一個應(yīng)用循環(huán)申,由應(yīng)用來刷新輸入BUF中的數(shù)據(jù),保障所有輸入數(shù)據(jù)是最新的更新數(shù)據(jù)。而VPC3在接收到由PROFI-BUS-DP主站傳送的不同輸出數(shù)據(jù)時,會產(chǎn)生輸出標(biāo)志位(同樣位于中斷請求字單元中),CPU通過在應(yīng)用循環(huán)中輪詢該標(biāo)志位來進行接收主站數(shù)據(jù)。對于特定應(yīng)用的診斷信息,需要實時地傳遞到主站。主應(yīng)用程序在應(yīng)用循環(huán)中判斷是否有可用的診斷BUF存在,當(dāng)有空閑BUF時應(yīng)用程序輸入診斷信息,并請求更新。對于實時性要求嚴格的系統(tǒng),應(yīng)采用中斷方式進行輸出數(shù)據(jù)和診斷數(shù)據(jù)處理。
結(jié)語
VPC3芯片的使用方法簡單(與SPC3相似),功能比較完善,可以滿足本通信接口設(shè)計的要求。使用VPC3進行PROFIBUS-DP從站接口的開發(fā),能夠降低開發(fā)難度和開發(fā)成本;使用現(xiàn)場設(shè)備/儀表上配置PROFIBUS-DP接口,可以滿足相關(guān)行業(yè)的需要。
評論