CC2541 程式編譯錯誤——Warning[w52]
阿新 • • 發佈:2018-12-23
開啟 CC2540_MINIDK 巨集定義後,
INT_HEAP_LEN=3000 HALNODEBUG OSAL_CBTIMER_NUM_TASKS=1 POWER_SAVING HAL_AES_DMA=FALSE HAL_LCD=FALSE HAL_LED=TRUE CC2540_MINIDK HAL_UART HAL_UART_DMA=1 HAL_UART_ISR=0 HCI_UART_BR=3 HAL_KEY=TRUE編譯出現警告: Warning[w52]: More than one definition for the byte at address 0x6b in common segment INTVEC. It is defined in module "hal_uart" as well as in module "hal_key"
問題出現原因:
1. 定義了串列埠 uart,而且是中斷模式,中斷向量使用了 P0 口
2. 定義了按鍵功能 key,並且使用了中斷模式,中斷向量同樣使用了 P0 口
3. 所以問題就是 P0 口的中斷定義了兩次
問題解決方案:
1. 改變 uart 的 I\O 口,換成 P1 口
2. 改變 Key 的 I\O,換成 P1、P2 口
3. 如果 I\O 不能更改,那就刪掉一箇中斷函式,在兩外一箇中斷函式中判斷具體是 uart 還是 Key 的中斷,分別處理中斷