本文來源電子發燒友社區,作者:xcs101, 帖子地址:https://bbs.elecfans.com/jishu_2243648_1_1.html
點亮一個LED效果(開發板體驗視頻,詳見作者原文鏈接內容)
今天入門南京中科微CSM32RV20開發板,講講如何開展設計,邁出第一步,建立工程,點亮LED,做個記錄,方便后面學習,與大家共同探討。
一、需要用到的外設
1、一個IO口
查看電路圖,開發板上有一個RGBLED燈,使用其中一個引腳PA8,對應藍燈。
GPIO 是用戶可配置的通用 IO,每一個 GPIO 口都可以獨立配置成輸入輸出、外設復用功能或模擬功能。GPIOA0~15 對應 PA0~PA15,GPIOB0~13 對應PB0~PB13。
二、工程建立
根據該鏈接建立一個空白的工程
https://mp.weixin.qq.com/s/El8-GMhWRSGGQWrMXCVcBA
首先安裝軟件,設置為中文;
新建一個工程:
]
三、程序設計
1.使用到的函數
復制代碼
GPIO_MODEx可設置為:輸入模式、輸出模式、復用模式和模擬模式
GPIO模擬配置原理圖
復制代碼
2.GPIO其他函數
復制代碼
3.修改DEMO里的程序
查看建立的模板程序,在里面找到Chapter 5 GPIO Test Init的代碼段,將第一句修改如下,設置PA8引腳的GPIO模式
復制代碼
修改PA8引腳電平翻轉程序,實現100ms電平翻轉
復制代碼
修改主程序里while循環電平翻轉程序,實現500ms電平翻轉
復制代碼
按下Ctrl+F9,完成程序編譯完成的程序在工程文件的default文件夾里的elf文件。
四、燒錄程序
使用CSM-ISP燒錄程序, 同樣在這條鏈接里面就可以找到相關介紹:https://mp.weixin.qq.com/s/El8-GMhWRSGGQWrMXCVcBA
五、總結
本次建立工程,很是順利,代碼風格跟STM32的HAL庫比較像,上手很快,后續再對其他外設進行使用,完成項目設計。
三、程序設計
1.使用到的函數
- void GPIO_MODE_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_MODEx) //GPIO 模式
GPIO_MODEx可設置為:輸入模式、輸出模式、復用模式和模擬模式
GPIO模擬配置原理圖
- #define GPIO_MODE_INPUT 0x00000000UL
- #define GPIO_MODE_OUTPUT 0x00000001UL
- #define GPIO_MODE_AF 0x00000002UL
- #define GPIO_MODE_ANALOG 0x00000003UL
- void GPIO_Toggle(GPIO_TypeDef *GPIOx,uint8_t PINx);//GPIO 翻轉
2.GPIO其他函數
- void GPIO_MODE_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_MODEx); //GPIO 模式
- void GPIO_OutType_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_OTYPEx); //GPIO 輸出模式
- void GPIO_InType_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_ITYPEx); //GPIO 輸入模式
- void GPIO_PULL_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_PULLx); //GPIO 上拉
- void GPIO_OutSpeed_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_SPEEDx); //GPIO 壓擺率
- void GPIO_AF_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_AFx); //GPIO 復用模式
- void GPIO_EXIT_MODE_Init(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_EXIT_MODEx); //GPIO 中斷模式
- void GPIO_INTER_enable(GPIO_TypeDef *GPIOx,uint8_t PINx); //GPIO 中斷使能
- void GPIO_INTER_disable(GPIO_TypeDef *GPIOx,uint8_t PINx); //GPIO 中斷關閉
- void GPIO_Write(GPIO_TypeDef *GPIOx,uint8_t PINx,uint32_t GPIO_PinState); //GPIO 輸出
- uint8_t GPIO_Read(GPIO_TypeDef *GPIOx,uint8_t PINx); //GPIO 讀輸入
- void GPIO_Toggle(GPIO_TypeDef *GPIOx,uint8_t PINx);//GPIO 翻轉
- void GPIO_EXIT_Init_case1(GPIO_TypeDef *GPIOx, uint8_t PINx); //檢測高電平
- void GPIO_EXIT_Init_case2(GPIO_TypeDef *GPIOx, uint8_t PINx); //檢測低電平
- void GPIO_EXIT_Init_case3(GPIO_TypeDef *GPIOx, uint8_t PINx); //檢測上升沿
- void GPIO_EXIT_Init_case4(GPIO_TypeDef *GPIOx, uint8_t PINx); //檢測下降沿
- void EXIT0_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT1_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT2_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT3_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT4_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT9_5_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void EXIT15_10_IRQHandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));
- void CAW_IRQhandler(void) __attribute__((interrupt("SiFive-CLIC-preemptible")));//載波檢測中斷函數
- void CAW_Init(void);//載波檢測配置
3.修改DEMO里的程序
查看建立的模板程序,在里面找到Chapter 5 GPIO Test Init的代碼段,將第一句修改如下,設置PA8引腳的GPIO模式
- ///----Chapter 5 GPIO Test Init-----------------------------------------
- GPIO_MODE_Init(GPIOA,PIN8,GPIO_MODE_OUTPUT); //GPIO 模式
修改PA8引腳電平翻轉程序,實現100ms電平翻轉
- for(uint8_t i=0;i<10;i++)
- {
- GPIO_Toggle(GPIOA,PIN8); //GPIO 翻轉
- Delay32M_ms(100);
- }
修改主程序里while循環電平翻轉程序,實現500ms電平翻轉
- while(1)
- {
- Delay32M_ms(500);
- GPIO_Toggle(GPIOA,PIN8);
- }
按下Ctrl+F9,完成程序編譯完成的程序在工程文件的default文件夾里的elf文件。
四、燒錄程序
使用CSM-ISP燒錄程序, 同樣在這條鏈接里面就可以找到相關介紹:https://mp.weixin.qq.com/s/El8-GMhWRSGGQWrMXCVcBA
五、總結
本次建立工程,很是順利,代碼風格跟STM32的HAL庫比較像,上手很快,后續再對其他外設進行使用,完成項目設計。
出廠程序效果(開發板體驗視頻,詳見作者原文鏈接內容)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
IO
+關注
關注
0文章
448瀏覽量
39148 -
開發板
+關注
關注
25文章
5039瀏覽量
97406 -
調試器
+關注
關注
1文章
304瀏覽量
23738 -
南京中科微
+關注
關注
0文章
60瀏覽量
743 -
CSM32RV20
+關注
關注
0文章
40瀏覽量
216
發布評論請先 登錄
相關推薦
【敏矽微ME32G070開發板免費體驗】開箱+點燈+點亮OLED
了
官方也提供了很多示例工程供參考,覺得麻煩可以直接拷貝一個工程修改下就能開發需要的功能了
由于是 ARM 內核,可以使用 J-LINK、D
發表于 12-19 00:25
【敏矽微ME32G070開發板免費體驗】+ADC測試與LED點亮
,還必須設置魔術棒,如圖所示:
由圖可見可以識別仿真器和開發板,編譯下載,進入在線調試界面;
可以看到工程啟動了8個通道的ADC轉換,結
發表于 12-16 19:00
【敏矽微ME32G070開發板免費體驗】\\+Lora通信終端產品開發項目
需求評估產品性能。
一.開發板申請之路—聽我娓娓道來
2024年11月19日早,電子發燒友論壇微信公眾號發文,標題為《新品體驗!敏矽微ME32G070
發表于 12-15 18:26
RISC-V 使用J-Link調試RV-STAR
J-Link調試器和RV-STAR開發板,且在Nuclei Studio中運行和調試應用程序。
關于Nuclei Studio IDE下載安裝、編譯和
發表于 12-14 17:47
【敏矽微ME32G070開發板免費體驗】介紹、環境搭建、工程測試
【敏矽微ME32G070開發板免費體驗】介紹、環境搭建、工程測試
敏矽微電子有限公司 是一家以安徽為總部的,面向全球的芯片設計公司,致力于成為全球領先的微處理
發表于 12-12 14:29
常用在工業控制系統上的MCU芯片資料:CSM32RV20
CSM32RV20是一款基于RISC-V核的低功耗MCU芯片。 內置RISC-V RV32IMAC內核(2.6CoreMark/MHz); 蕞高32MHz工作頻率; 內置4kB的SRAM; 內置8B
【RA-Eco-RA0E1-32PIN-V1.0開發板試用】使用 RASC 建立 Keil 工程、燒錄測試
【RA-Eco-RA0E1-32PIN-V1.0開發板試用】使用 RASC 建立 Keil 工程、燒錄測試
使用瑞薩官網提供的 RASC 即智能配置工具軟件,生成 Keil
發表于 11-09 12:52
【RA-Eco-RA0E1-32PIN-V1.0開發板試用】配置開發環境和編寫一個點燈程序
的開發板搭載芯片RA系列,其余可直接不選
再下一步這里可以直接勾選一個擴展語言包,如果什么都不選默認是英文,目前有日文、簡體中文、繁體中文可供選擇,下圖勾選的為簡體中文語言包,除了語言
發表于 08-25 01:16
散熱第一步是導熱
進一步提高產品的使用壽命。
產品型號有多種規格可選擇(導熱系數1.0~5.0W/m.K)。
合肥傲琪電子的導熱硅脂、導熱硅膠片還應用于對芯片、主板、功率管(MOS)、變壓器、模塊、PCB板、鋁基板
發表于 08-06 08:52
[文章] 【xG24 Matter開發套件試用體驗】點亮一個LED
Matter LED 燈開發套件、Matter 兼容的智能家居控制中心(如 HomePod mini、Google Nest Hub)。
對比設備: 51單片機開發板、配套的LED燈
發表于 07-26 15:12
【核桃派1B 開發板試用體驗】0基礎小白該如何玩轉LINUX開發板
變成了吃灰神器!為了讓大家更好的入門LINUX開發板,我做了以下流程圖,并通過這篇帖子跟大家一起了解下具體的“玩法”!
拿到核桃派1b開發板的第一步,你應該訪問官網(網址:http
發表于 01-02 16:32
評論