收到板子有一些时间了,今天才来点灯,先经验分享出来。
开发平台:MounRiver Studio
开发板:沁恒的CH32V208W
开发板版本:V1.4
下面开始测评,分享的内容是环境的搭建,分享原理图,操作IO,分享串口打印功能等。
1、环境的搭建:
先下载软件与补丁: MounRiver Studio
安装软件时就一直下一步就完事了,我是什么都没有更改。
上图中有更新补丁的方法。
2、原理图:
LED1与LED2连接在PA0 PA1上,这里我用杜绑线连接。
3、代码:
GPIO初始化:
GPIO_InitTypeDef GPIO_InitStructure = {0};
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
串口:使用的是PA9 PA10
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef USART_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
主函数
printf("CH32V208\r\n")
printf("GPIO Toggle LED Blink\r\n")
Delay_Ms(250)
GPIO_WriteBit(GPIOA, GPIO_Pin_0, (i == 0) ? (i = Bit_SET) : (i = Bit_RESET))
GPIO_WriteBit(GPIOA, GPIO_Pin_1, (j == 0) ? (j = Bit_SET) : (j = Bit_RESET))
4、输出结果:
5、点灯:
6、视频:
16e7a4dee7fda903cd94c27538d5abd1
|