一、概述
本人基于 rt-thread studio 對(duì) N32L40XCL 進(jìn)行I2C測(cè)試。具體表現(xiàn)為使用 N32L40XCL 的 I2C1 (PA4:I2C1_SCL;PA5:I2C1_SDA) 接口驅(qū)動(dòng)四線 I2C OLED 0.96 寸屏幕。解決過(guò)程和遇到的問(wèn)題及其解決方法如下。
二、問(wèn)題及其解決措施
使用DAP-LINK時(shí),無(wú)法下載
解決措施: 手動(dòng)添加PACK包,解決下載錯(cuò)誤問(wèn)題。
具體步驟:copy資料包中的“Nationstech.N32L40x_DFP.1.0.0.pack”到rt-thread stuido軟件安裝位置下,以本機(jī)為參考“D:RT-ThreadStudiorepoExtractDebugger_Support_PackagesRealThreadPyOCD?.1.3packs”。復(fù)制粘貼之后,返回上一級(jí)目錄“D:RT-ThreadStudiorepoExtractDebugger_Support_PackagesRealThreadPyOCD?.1.3”,修改文件“pyocd.yaml”,以記事本方式打開(kāi),添加“ - ./packs/ARM.Musca_A1_BSP.2.0.0-small.pack”
Nations MCU Download Tool V1.2.4下載
需要按照用戶(hù)手冊(cè)文檔,安裝驅(qū)動(dòng)
對(duì)應(yīng)資料包中“.N32L40xxx_V2.1.0.zipN32L40xxx_V2.1.03-用戶(hù)手冊(cè)(UserManual)”
但出現(xiàn)獲取設(shè)備名錯(cuò)誤,希望路過(guò)的小伙伴可以幫忙解決一下!
三、功能硬件接口
引腳定義
I2C1_SCL:PA4
I2C1_SDA:PA5
DAP下載連接
JTMS —> PA13
JTCK —> PA14
RST —> RST
四、使用說(shuō)明
打開(kāi)rt-thread settings,選擇添加軟件包
搜索軟件包,u8g2,選擇中間的組件進(jìn)行添加
添加后,右擊,選擇配置項(xiàng)
添加保存后,進(jìn)行編譯,若無(wú)問(wèn)題,則進(jìn)行下一步。
五、模塊功能的演示
六、代碼講解及鏈接
工程鏈接
#include
#include
#include
#include
#define OLED_I2C_PIN_SCL 4 // PA4
#define OLED_I2C_PIN_SDA 5 // PA5
static void u8g2_ssd1306_12864_sw_i2c_example(int argc,char argv[])
{
u8g2_t u8g2;
// Initialization
u8g2_Setup_ssd1306_i2c_128x64_noname_f( &u8g2, U8G2_R0, u8x8_byte_sw_i2c, u8x8_gpio_and_delay_rtthread);
u8x8_SetPin(u8g2_GetU8x8(&u8g2), U8X8_PIN_I2C_CLOCK, OLED_I2C_PIN_SCL);
u8x8_SetPin(u8g2_GetU8x8(&u8g2), U8X8_PIN_I2C_DATA, OLED_I2C_PIN_SDA);
u8g2_InitDisplay(&u8g2);
u8g2_SetPowerSave(&u8g2, 0);
// Draw Graphics
/ full buffer example, setup procedure ends in _f */
u8g2_ClearBuffer(&u8g2);
u8g2_SetFont(&u8g2, u8g2_font_ncenB08_tr);
u8g2_DrawStr(&u8g2, 1, 18, "U8g2 on RT-Thread");
u8g2_SendBuffer(&u8g2);
u8g2_SetFont(&u8g2, u8g2_font_unifont_t_symbols);
u8g2_DrawGlyph(&u8g2, 112, 56, 0x2603 );
u8g2_SendBuffer(&u8g2);
}
//MSH_CMD_EXPORT(u8g2_ssd1306_12864_sw_i2c_example, i2c ssd1306 software i2c sample);
INIT_APP_EXPORT(u8g2_ssd1306_12864_sw_i2c_example);
使用INIT_APP_EXPORT();函數(shù),對(duì)示例函數(shù)進(jìn)行上機(jī)初始化,進(jìn)行工作。
七、心得體會(huì)
RT-Thread studio對(duì)于外設(shè)接口的開(kāi)發(fā)起到了方便作用,以及在線軟件包的使用和圖形化界面配置,極大的縮短了開(kāi)發(fā)周期。對(duì)于I2C的理解與開(kāi)發(fā)有了一定的理解。該芯片N32L40XCL對(duì)于I2C的設(shè)備模擬支持。
-
驅(qū)動(dòng)器
+關(guān)注
關(guān)注
52文章
8102瀏覽量
145825 -
OLED屏
+關(guān)注
關(guān)注
0文章
162瀏覽量
20810 -
SDA
+關(guān)注
關(guān)注
0文章
124瀏覽量
28085 -
I2C接口
+關(guān)注
關(guān)注
1文章
124瀏覽量
25106 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1261瀏覽量
39840
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論