本文為結合瑞薩e2studio工具,以及CPKCOR_RA8D1B評估板,給大家講述瑞薩RA8D1單片機IO中斷配置實現的方法。
實現簡單的功能:配置一個LED翻轉(亮滅)+一個按鍵(Key)中斷,按鍵按一次,LED翻轉一下。
準備工作
開發RA8D1單片機需要提前安裝好軟件工具,還有準備好RA8板卡以及下載調試器。
1下載安裝集成開發環境
開發瑞薩RA8系列單片機的工具有很多,常見的主要是:
e2studio一站式服務工具
RASC+Keil,或RASC+IAR
推薦大家使用瑞薩官網的e2studio一站式服務工具。這里大家可以參看我之前分享的文章:
瑞薩RA8系列教程 | 瑞薩RA8開發環境搭建,并點亮一個LED
2準備硬件板卡
本教程就使用瑞薩CPKCOR_RA8D1B評估板,這塊板卡集成了J-link,我們只需要用一根線連接電腦即可下載調試。
e2s配置按鍵中斷
e2studio可以理解為包含單片機底層配置工具、編輯器、編譯器、調試器等多種功能為一體的一站式服務工具,和其他一些MCU廠商的“可視化配置工具”類似,只需要動動鼠標,就能快速創建瑞薩單片機軟件工程。
我們這里配置一個LED翻轉(亮滅)+一個按鍵(Key)中斷:按鍵按一次,LED翻轉一下。
1基于e2s快速創建軟件工程模板
打開e2s,文件->新建->瑞薩C/C++項目->Renesas RA:
輸入工程名稱,比如我們輸入RA8D1_KEY:
選擇單片機型號,比如R7FA8D1BHEC:
選擇Non-TrustZone項目工程:
選擇Executable:
選擇【Bare Metal-Minimal】,然后點擊完成,一個項目模板就創建好了。
2配置LED+KEY中斷
在【Pins】選項欄,選中LED引腳,我們這里PA01,配置為輸出模式。
然后,在IRQ欄目下,選中對于的中斷號,我們使用P008作為按鍵中斷,這里就是IRQ12。
在【Stacks】選項欄,新增一個Stack->Input->External lRQ:
然后,設置對應屬性:
3添加代碼實現按鍵中斷功能
這里,我們只需要在自帶的hal_entry.c源文件下添加少許代碼,即可實現按鍵中斷:按鍵KEY按下,LED翻轉。
#include "hal_data.h" FSP_CPP_HEADER void R_BSP_WarmStart(bsp_warm_start_event_t event); FSP_CPP_FOOTER /* 定義LED翻轉 */ #define LED_TOGGLE R_PORT10->PODR ^= 1<<(BSP_IO_PORT_10_PIN_01 & 0xFF) /*******************************************************************************************************************//** ?* main() is generated by the RA Configuration editor and is used to generate threads if an RTOS is used. ?This function ?* is called by main() when no RTOS is used. ?**********************************************************************************************************************/ void hal_entry(void) { ? ? /* TODO: add your own code here */ ? ? //中斷初始化 ? ? R_ICU_ExternalIrqOpen(&g_external_irq12_ctrl, &g_external_irq12_cfg); ? ? R_ICU_ExternalIrqEnable(&g_external_irq12_ctrl); ? ? while(1) ? ? { ? ? } #if BSP_TZ_SECURE_BUILD ? ? /* Enter non-secure code */ ? ? R_BSP_NonSecureEnter(); #endif } /* 按鍵中斷回調函數 */ void key_external_irq_callback(external_irq_callback_args_t?*p_args) { ? ? /* 判斷中斷通道?*/ ? ? if (12 == p_args->channel) { LED_TOGGLE; // 按鍵KEY按下,LED翻轉 } }實現效果: 最后,這樣配置,是不是相對以前那種一步一步移植代碼更簡單?
-
led
+關注
關注
242文章
23562瀏覽量
667986 -
單片機
+關注
關注
6055文章
44788瀏覽量
643370 -
瑞薩
+關注
關注
36文章
22343瀏覽量
87456 -
開發環境
+關注
關注
1文章
237瀏覽量
16932
原文標題:瑞薩RA8系列教程 | 瑞薩RA8單片機IO中斷配置
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
瑞薩RA8D1 CEU介紹與使用說明

瑞薩RA8快速上手指南:Cortex-M85內核瑞薩RA8開發環境搭建 并點亮一個LED

評論