久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Atmega128嵌入式控制器的設計

基于Atmega128嵌入式控制器的設計

作者: 時間:2014-01-07 來源:網絡 收藏

  CAN總線接口如圖4。SJA1000的AD0~AD7連接到的PC口,CS連接到的PG3。PG3為0時CPU片外存儲器地址選中SJA1000,CPU通過地址可對SJA1000執行讀/寫操作。SJA1000的RD、WE、ALE與的引腳相連,INT接Atmega128的PE7,Atmega128可通過中斷方式訪問SJA1000。

基于Atmega128嵌入式控制器的設計

(5)與PC機的串行通信

  考慮到智能控制節點要接收從RS232串口來的數據,因而采用了Atmega128的串行口進行中斷接收,所用的引腳是PE0、PE1。通過MAX232進行數據傳輸。
(6)脈沖輸入脈沖輸出

  由于輸入信號的多樣性,增加了PI/PO部分。
3MicroC/OS—II的移植

  MicroC/OS—II移植到Atmega128上,需要修改OS_CPU.H,OS_CPU_A.S和OS_CPU_C.C三個與其相關的文件。其中OS—CPU.H主要完成的是數據類型、堆棧單位、堆棧增長方向的定義。相關的數據類型定義:

  typedefunsignedcharBOOLEAN;

  typedefunsignedcharINT8U;//無符號8位數

  typedefsignedcharINT8S;//帶符號8位數

  typedefunsignedintINTI6U;//無符號l6位數

  typedefsignedintINTl6S;//帶符號l6位數

  typedefunsignedlongINT32U;//無符號32位數

  typedefsignedlongINT32S;//帶符號32位數

  typedeffloatFP32;//單精度浮點數

  堆棧單位的定義:

typedefunsignedcharOS_STK;//堆棧入口寬度為8位

  狀態寄存器的定義:

  typedefunsignedcharOS_CPU_SR;//定義狀態寄存器為8位

堆棧增長方向的定義:

  #defineOS_STK_GROWTH1;//堆棧由高地址向低地址增長

  0S_CPU_C.C文件主要包括任務堆棧初始化和實現操作系統規定的幾個Hook函數。其中移植需要的Hook函數如下:

  OSTaskCreateHook();OSTaskDelHook()

  OSTaskldleHook();OSTaskStateHook()

  OSTaskSwHook();oSTCBInitHook()

  OSTimeTickHook()



評論


相關推薦

技術專區

關閉