新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ColdFire單片機在 Clinux上的應用

        ColdFire單片機在 Clinux上的應用

        ——
        作者:飛思卡爾半導體 時間:2007-01-26 來源:《世界電子元器件》 收藏

        coldfire系列處理器介紹

        飛思卡爾32位處理器分為powerpc系列、coldfire系列以及dragonball系列等。coldfire系列是重要的組成部分之一,它可以應用于工業控制、儀器儀表、民用產品、網絡產品等領域。coldfire系列具有很好的性價比,它的價格從2美金到20美金不等。coldfire系列處理器擁有許多開發工具并為使用者提供了一些現成的解決方案,這使得使用者能夠快速地開發出自己的應用產品。

        本文引用地址:http://www.104case.com/article/20916.htm

        coldfire處理器有v2核和v4核之分,52系列為v2核架構,54系列為v4架構。下面以v2核為例介紹其性能:

        v2核擁有變長的risc指令集;有2個獨立的流水線;用3個長字的fifo緩沖區將流水線彼此分離;32位的內部地址總線支持4gb的線性地址空間;32位數據總線;16個用戶可用的32位通用寄存器;它支持高級語言結構的優化等許多性能。

        mcf527x系列主要有mcf5270到mcf5275處理器,它主要適用于遠程監控、數據安全加密設備、以太網集線器、家用路由器等產品。其主要特點是: v2 coldfire內核,在166mhz時鐘頻率下可具有159mips的處理能力;32 32位的增強型乘法累計單元以及硬件的除法器;具有8kb或16kb字節的可配置指令/數據高速緩存;具有豐富的外設接口;封裝形式分為196管腳的bga和256管腳的bga封裝。

        mcf523x系列產品主要有mcf5232、mcf5235等,它的最大特點是增加了增強型的時序處理單元(etpu)。該功能特別適用于網絡通信安全的產品。它也是其v2 coldfire內核結構。

        mcf547x系列和mcf548x系列產品的主要特點是使用第四代增強型coldfire內核(v4e)。它們特別適用于工具自動化、流程控制、機器人、醫療儀器等。

        除了上述處理器外,飛思卡爾coldfire系列還包括最早得到使用的mcf5272處理器,集成了以太網媒體接入控制器(mac)和網絡應用軟件的mcf5282處理器,以及集成外設和增強型乘法累加器的mcf5249處理器等。


        clinux應用程序開發

        目前所使用的coldfire編程環境主要有兩種,下面以mcf5249開發板為例,介紹 clinux的運行與運用。

        clinux應用程序開發

        1. 建立宿主機開發環境

        開發時使用宿主機上的交叉編譯、匯編及鏈接工具形成可執行的二進制代碼,然后把可執行文件下載到目標機上運行。

        clinux的硬件開發環境主要有宿主機和目標板。宿主機建議安裝redhat9.0版,目標板可選用mcf5249、5282、5272等。宿主機和目標板之間的連接可以采用并口線、串口線或者直連的網線。

        2. 開發模式

        首先在宿主機(pc機)上調試通過后,再移植到目標板上。這種方式下可以使用gdb調試工具。移植主要涉及到函數庫問題以及改動makefile以適應不同的目標板。通常采用直接在目標板上進行開發的模式。將宿主機和目標板通過串口線相連,在宿主機上運行minicom作為目標板的顯示終端,掛載宿主機硬盤,直接在目標板上調試應用。
        直接在目標板上調試應用程序的方法有以下三種:

        (1)打印串口。這是嵌入式系統最常用的調試手段,簡單而實用、有效。

        (2)使用log記錄文件。

        (3)gdb調試。

        clinux驅動程序開發

        clinux驅動程序開發從應用開發概念層次上看可分為上、中、下三層,最下層為硬件,中間層為嵌入式操作系統、最上層為應用程序。硬件層和嵌入式操作系統之間依靠驅動程序來連接,而嵌入式操作系統與應用程序之間通過調用來實現。

        linux下,驅動程序是靠設備驅動程序來實現的,linux將不同的設備分歸為三類:字符設備、塊設備和網絡設備。字符設備中常見的有串口、顯示器、打印機等;塊設備中常見的有硬盤、磁盤、光盤等;網絡設備一般為各種網絡接口。


        clinux應用實例

        基于 clinux的qspi數據采集

        串行外圍接口(spi)是飛思卡爾公司提出的同步串行外設接口,它允許cpu與各種外圍接口器件以串行方式進行通信、交換信息。qspi模塊提供隊列傳輸性能的串行外圍接口。

        從 qspi結構上看,qspi模塊有7個信號引腳,其中4個是片選信號。它有80個字節的qspi ram。它的控制邏輯與內部總線相連。隊列控制區與地址寄存器相連。4個外圍設備片選信號用于選擇哪一個外部器件與qspi通信。片選信號只作簡單的片選,但可通過外部4~16譯碼器來控制多達15個端口。

        對于32位coldfire處理器可以采用三種方式控制qspi(以mcf5249為例),它們分別是:

        1、裸機方式,即不需要 clinux的支持,直接mcf5249的qspi寄存器進行設置。

        2、在 clinux中直接設置qspi寄存器,以用戶應用程序的方式控制qspi操作。

        3、以 clinux驅動形式加入qspi控制程序,同時為用戶提供qspi接口。用戶通過所提供的接口對qspi進行設置控制。
        本文的數據采集方案是第3種方法。

        基于 clinux的usb數據存儲

        基于 clinux的usb數據存儲結構如圖1所示,其中mcf5249開發板作為usb host端,u盤作為存儲介質,可以實現數據靈活的存儲與移動。

        clinux中的usb驅動主要模塊為:



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 蓬安县| 灵石县| 马公市| 南郑县| 砀山县| 楚雄市| 车险| 工布江达县| 仙游县| 乌拉特后旗| 枣阳市| 溧阳市| 九龙城区| 屏山县| 九江市| 漾濞| 罗源县| 平山县| 溧水县| 双柏县| 滨海县| 忻城县| 吐鲁番市| 新邵县| 紫阳县| 伽师县| 敦化市| 鲁山县| 金堂县| 蓬溪县| 白银市| 紫云| 门源| 沙田区| 昌江| 饶平县| 广昌县| 涿鹿县| 迭部县| 原阳县| 朔州市|