CH32V208開發(fā)板
CH32V208系列是基于32位RISC-V設(shè)計的無線型微控制器,配備了硬件堆棧區(qū)、快速中斷入口,在標準RISC-V基礎(chǔ)上大大提高了中斷響應(yīng)速度。搭載V4C內(nèi)核,加入內(nèi)存保護單元,同時降低硬件除法周期。片上集成2Mbps低功耗藍牙BLE 通訊模塊、10M以太網(wǎng)MAC+PHY模塊、USB2.0全速設(shè)備+主機/設(shè)備接口、CAN控制器等。

WCH-LINK燒錄器
WCH-Link 模塊可用于沁恒 RISC-V 架構(gòu) MCU 在線調(diào)試和下載,也可用于帶有 SWD/JTAG 接口的 ARM內(nèi)核 MCU 的在線調(diào)試和下載。同時帶有一路串口,方便調(diào)試輸出。目前有四種 WCH-Link 包括 WCH-Link、WCH-LinkE、WCH-DAPLink 和 WCH-LinkW

開發(fā)環(huán)境
MounRiver Studio可以支持沁恒全系列的RISC-V芯片,支持工程管理、開發(fā)、下載、調(diào)試等功能,當前版本為1.8.5。
具體安裝教程可參考RISC-V單片機集成開發(fā)環(huán)境(IDE) MounRiver Studio軟件介紹(一)_mounriver studio漢化_MounRiver_Studio的博客-CSDN博客
資料下載
CH32V208開發(fā)板 相關(guān)資料、原理圖、例程可在https://www.wch.cn/products/CH32V208.html下載
WCH-Link燒錄器 相關(guān)資料可在https://www.wch.cn/products/WCH-Link.html下載
MounRiver Studio(IDE)可在http://mounriver.com/download下載
LED點燈操作
下面我們來進行點亮led燈的操作,查看原理圖可知 CH32V208開發(fā)板上的led小燈并未與芯片的引腳相連(看了半天才發(fā)現(xiàn)),所以我們使用杜邦線將LED1與PA0相連。

下面我們來進行代碼的編寫
打開MounRiver Studio創(chuàng)建一個項目

更改項目名、然后選擇芯片型號、最后點擊finish完成項目的創(chuàng)建

創(chuàng)建完成后會出現(xiàn)一個工程文件夾,我們寫的代碼主要在User文件夾中

而后我們創(chuàng)建一個led.h和led.c文件,在User文件夾上右鍵 選擇New-File,創(chuàng)建你需要的文件(一定要加文件后綴.h或.c)


創(chuàng)建完成后即可編輯我們的代碼,代碼如下
led.h
#define __LED_H__
#include "ch32v20x_conf.h"
void led_init();
#endif //__LED_H__
led.c
/*
led_init:初始化LED燈 GPIO PA0
*/
void led_init()
{
//初始化結(jié)構(gòu)體
GPIO_InitTypeDef GPIO_InitStruct;
//使能GPIOA時鐘
RCC_APB1PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
//GPIO配置
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; //推挽輸出
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0; //PA0
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; //50Mhz
//初始化PA0
GPIO_Init(GPIOA, &GPIO_InitStruct);
}
main.c
#include "led.h"
int main(void)
{
//初始化LED
led_init();
while(1)
{
Delay_Ms(1000); //延時1s
GPIO_SetBits(GPIOA, GPIO_Pin_0); //關(guān)閉led
Delay_Ms(1000); //延時1s
GPIO_ResetBits(GPIOA, GPIO_Pin_0);//打開led
}
}