基于MPC860與STl6C6 5 4的串行通信設計
2 系統軟件設計
2.1 操作系統
Vxworks是由WRS(Wind River System Ine.)公司開(kāi)發(fā)的一套具有微內核、高性能、可伸縮的實(shí)時(shí)操作系統,支持廣泛的網(wǎng)絡(luò )通信協(xié)議,支持32位的CPU,包括Intel公司的x86、MIatorola公司的68k和PoweerPC、MIPS、ARM,并能夠根據用戶(hù)的需求進(jìn)行組合;同時(shí)WRS公司還提供了優(yōu)秀的實(shí)時(shí)操作系統開(kāi)發(fā)工具Tornado。Tornado是一整套強有力的交叉開(kāi)發(fā)工具,它能夠支持幾乎所有的工作平臺和目標處理器,所提供有工具可用于所有目標機,并具有兩種調試模式(系統模式和任務(wù)模式),能夠輕松給Vxworks操作系統添加刪除各種通信協(xié)議,能夠支持目標機和宿主機的如以太網(wǎng)、串行線(xiàn)路、在線(xiàn)仿真等通信選項,其機制和功能都是基于C/C++語(yǔ)言,任務(wù)、中斷、通信都提供了統一的API接口。這些特性為編寫(xiě)應用程序和設備驅動(dòng)提供了極大便利。Tornado目前已發(fā)展到6.O及更高板本。本設計開(kāi)發(fā)工具是Tornado 2.0。
在Vxworks下,設備驅動(dòng)可以嵌入到內核隨系統一起啟動(dòng),也可以作為加載模塊在系統啟動(dòng)后運行。前一種需要修改內核,需要熟悉內核結構和運行方式,這實(shí)現比較困難:而后一種比較簡(jiǎn)單,與編寫(xiě)一般的應用程度類(lèi)似。本設計采用后者。
2.2 STl6C*程序設計
定義消息結構MSG_STRUCT和串口接收UART_RECE_STRUCT數據結構:

系統啟用收發(fā)2個(gè)任務(wù),初始化STl6C*后,實(shí)現收發(fā)數據流程如圖4所示。

3 結論
在詳細分析MPC860和STl6C6 5 4元件性能參數的基礎上,介紹了具體的開(kāi)發(fā)實(shí)例。硬件采用MPC860連接STl6C6 5 4,軟件采用VxWorks系統,雙任務(wù)驅動(dòng)STl6C6 5 4進(jìn)行串口收發(fā)通信,該實(shí)例已在TornadoⅡ2.0_2版本上通過(guò)調試,單通道連續收或發(fā)5字節實(shí)驗,1秒20次無(wú)丟失包。該實(shí)例已成功應用于某型網(wǎng)絡(luò )設備開(kāi)發(fā)中。
評論