新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 創(chuàng)建并移植K10 BSP包的具體步驟和方法(三)

創(chuàng)建并移植K10 BSP包的具體步驟和方法(三)

作者: 時(shí)間:2013-09-30 來(lái)源:網(wǎng)絡(luò) 收藏
b(0,0,0); TEXT-INDENT: 0px; PADDING-TOP: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; webkit-text-size-adjust: auto; orphans: 2; widows: 2; webkit-text-stroke-width: 0px">  }

  }

  創(chuàng)建并移植K10 BSP包的具體步驟和方法(三)

  圖7. PE設(shè)置

  MQX4.0中PE的時(shí)鐘初始化代碼在bsp_cm.c文件的void __pe_initialize_hardware(void)函數(shù)中。可以將上述PE生成的代碼直接粘貼在該文件中。調(diào)試可能會(huì)出現(xiàn)系統(tǒng)時(shí)鐘配置錯(cuò)誤。當(dāng)出現(xiàn)此類錯(cuò)誤時(shí),程序可能會(huì)停在圖8所示的dispatch.s文件中的等待中斷的語(yǔ)句cpsid.n i處。這種錯(cuò)誤往往是由于只修改了部分的時(shí)鐘寄存器設(shè)置或者是直接使用其他系列的Kinetis的中的時(shí)鐘配置,而沒(méi)有做相應(yīng)的修改所造成的。例如,直接使用K60 的默認(rèn)時(shí)鐘部分代碼,在的25Mhz外部時(shí)鐘環(huán)境中進(jìn)行調(diào)試就會(huì)出現(xiàn)上述錯(cuò)誤。這里不建議手工書寫代碼或者直接拷貝其他Kinetis系列的不同時(shí)鐘配置的代碼,建議使用PE來(lái)配置生成時(shí)鐘代碼,對(duì)于有錯(cuò)誤的部分PE中會(huì)有相關(guān)的紅色提示符標(biāo)示出來(lái),因此不用擔(dān)心那些時(shí)鐘寄存器配置錯(cuò)誤或被遺漏了。

  創(chuàng)建并移植K10 BSP包的具體步驟和方法(三)

  圖8. dispatch.s代碼

  一般地,在user_config.h配置中,RTC是默認(rèn)使能的,也就是外部的32.768Khz晶振是需要外接的,如果不外接,可以將配置文件user_config.h中的宏定義語(yǔ)句:

  #define BSPCFG_ENABLE_RTCDEV 1 修改為

  #define BSPCFG_ENABLE_RTCDEV 0

  另外由于中不包含USB和以太網(wǎng)的代碼,所以需要將相關(guān)的USB,Ethernet的文件刪除,并將user_config.h頭文件中的宏定義修改為:

  #define RTCSCFG_ENABLE_ICMP 0

  #define RTCSCFG_ENABLE_UDP 0

  #define RTCSCFG_ENABLE_TCP 0

  #define RTCSCFG_ENABLE_STATS 0

  #define RTCSCFG_ENABLE_GATEWAYS 0

  #define FTPDCFG_USES_MFS 0

  #define RTCSCFG_ENABLE_SNMP 0

  #define TELNETDCFG_NOWAIT FALSE

  #define HTTPDCFG_POLL_MODE 0

  #define HTTPDCFG_STATIC_TASKS 0



關(guān)鍵詞: K10 BSP包

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉