工程創建 目前RT-Thread Studio尚未支持恩智浦FRDM-MCXA153開發板BSP,需要從gitee下載最新的主線,通過scons命令創建工程。下載好主線源碼后,在rt-threadsp xpmcxmcxafrdm-mcxa153 目錄下打開scons環境,配置IIC驅動和SSD1306 OLED。
I2C配置
恩智浦FRDM-MCXA153開發板板載的mikroBUS socket預留一個IIC接口,具體可以從針腳圖看到下圖紅框處的針腳。

NXP MCXA153引入了一個Flexcomm概念,每個Flexcomm接口可通過軟件選擇作為USART、SPI或I2C接口。此處只需要在menuconfig中選擇I2C0即可。

1. 因為FRDM-MCXA153的BSP目前只有pin和Uart的驅動,需要增加drv_i2c.c文件,直接從已有的BSP(如N947)拷貝過來,同時修改baud、clock_attach_id、clock_div_name初始化值:

2. 修改 pin_mux.c 文件中的 BOARD_InitPins 函數,添加I2C0的復位和引腳初始化代碼:

同時加上I2C0的SDA SCL針腳初始化代碼:



SSD1306 OLED配置
在menuconfig中選擇enable SSD1306,并且設置好I2C bus name,I2C的地址默認是0x3c無需修改:

上述內容設置好之后,選擇保存。分別執行下述2個命令:

打開生成的Keil工程并編譯程序:

I2C測試
下載固件到FRDM-MCXA153開發板并重置系統
在串口終端中,應該看到類似以下的輸出:

1. 使用 list device命令查看已注冊的設備:

2. 運行SSD1306 OLED演示程序:

如果一切正常,在連接的OLED顯示屏上可以看到RT-Thread的logo:

I2C驅動實現細節 以下是 drv_i2c.c 文件的關鍵部分: 




這個驅動實現了I2C主機傳輸功能,支持讀寫操作,并使用了NXP SDK提供的LPI2C驅動。
結論
通過以上步驟,我們成功在RT-Thread MCXA153上實現了I2C驅動,并驗證了其功能。這為進一步開發基于I2C的應用(如OLED顯示)奠定了基礎。在實際應用中,可根據需要來調整I2C的配置參數,如波特率、地址等,以適應不同的I2C設備。
希望這個指南能夠幫助您在RT-Thread MCXA153上成功實現I2C應用!
參考資料 1. RT-Thread文檔: https://www.rt-thread.org/document/site/ 2. NXP MCXA153參考手冊 3. RT-Thread I2C設備驅動文檔
通過近幾期的深度介紹,我們一同領略了MCXA153 RTT的強大功能與廣泛應用潛力!
MCXA153 RTT技術盛宴來襲,精彩不容錯過!
MCXA153 RTT技術盛宴-探索GPIO的無限可能
深度探索恩智浦FRDM-MCXA153上的RT-Thread實踐指南-玩轉ADC
快跟上!恩智浦FRDM-MCXA153 RT-Thread實踐指南4_FLASH
恩智浦FRDM-MCXA153 RT-Thread實踐指南5-SPI
相信您已對如何在RT-Thread MCXA153上開發應用有了更深入的理解,如有任何疑問或建議,都歡迎隨時在RT-Thread社區論壇上留言。 讓我們共同推動技術進步,共創美好未來!
-
恩智浦
+關注
關注
14文章
6095瀏覽量
147092 -
IIC
+關注
關注
11文章
309瀏覽量
40631 -
I2C總線
+關注
關注
8文章
417瀏覽量
63353 -
RT-Thread
+關注
關注
32文章
1613瀏覽量
44817 -
FRDM
+關注
關注
1文章
21瀏覽量
5411
原文標題:快來查收!FRDM-MCXA153 RT-Thread開發實戰(六):I2C總線開發與應用
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
恩智浦亮相RT-Thread 20周年開發者大會
智能門鎖:基于RT-Thread與FRDM-MCXA156的多外設嵌入式實踐 | 技術集結
FRDM i.MX 9平臺選型指南:FRDM i.MX 9系列開發平臺解析
【直播預告】 玩轉智能控制:NXP FRDM-MCXA346 新品直播來了!| 問學直播
NXP新品FRDM-MCXA346 RT-Thread 評測活動開放,下周四新品直播預約!| 社區活動
【RA-Eco-RA6M4開發板評測】I2C使用
AT32F403A 移植RT-thread時SPI DMA和I2C DMA 沖突怎么解決?
【用戶答謝】RT-Thread攜手恩智浦,邀您共筑開源生態,贏專屬好禮!| 社區活動
恩智浦MCU教程 基于MCUXpresso和FRDM-MCXA346的RT-Thread Nano移植
【直播預告】RT-Thread攜手NXP硬核實戰,解鎖MCX微控制器的AI落地秘籍 | 問學直播
【RA-Eco-RA4M2開發板評測】RT-Thread上驅動I2C溫濕度傳感器
基于RT-Thread的I2C(軟件) 實踐 | 技術集結
恩智浦FRDM-MCXA153 RT-Thread開發實戰(六):I2C總線開發與應用
評論