芯源半导体CW32
直播中

yinwuqing

11年用户 2390经验值
擅长:MEMS/传感技术,嵌入式技术,接口/总线/驱动
私信 关注

【CW32饭盒派开发板试用体验】环境搭建与点灯

前段时间项目有点紧,今天周末,咱来一起体验一下使用CW32饭盒派的简单快速入门吧。由于笔者之前没有使用武汉芯源的MCU,个人习惯使用Keil开发,因此需要安装基于CW32饭盒派的板间pack支持包,这文件在哪里找呢?其它官方已经给我们打包好了,具体移步:
https://www.whxy.com/support/filelist/13选择“CW32F030_StdPeriph_Lib”进行下载。附件这里提供一下:
*附件:CW32F030_StandardPeripheralLib_V1.6.zip

然后将压缩文件解压出来,在“cw32f030-stdperiph-lib\IdeSupport\MDK”目录下即有我们需要的pack支持包。
*附件:WHXY.CW32F030_DFP.1.0.3.zip

这里我们可以直接双击pack文件进行安装,也可以通过Keil工具进行导入安装。
导入pack支持包.png
选择是.png

接下来需要我们进到Keil安装的目录下,找到如下“Keil5\Pack\WHXY\CW32F030_DFP\1.0.3\Flash”路径下的.FLM文件,这个文件如果没有拷贝到“Keil5\ARM\Flash”路径下,待会选择下载算法则不会在Keil中显示出来。

接下来我们以点灯为例,首先我们得知道板上的LED的管脚与MCU连接的情况。《MDIY32底板原理图》中可以找到,三盏LED均是低电平有效。
LED原理图.png

我们简单构建一个基于GPIO口的工程,部分参考代码如下:

#include "main.h"

void GPIO_Configuration(void);
void RCC_Configuration(void);

void Delay(__IO uint32_t nCount)
{
    /* Decrement nCount value */
    while (nCount != 0)
    {
        nCount--;
    }
}
	
int main()
{
	uint32_t i;
	RCC_Configuration(); 
	GPIO_Configuration();
	while(1)
	{
		  PA07_TOG();Delay(0x5FFFF);
		  PA08_TOG();Delay(0x5FFFF);
   		  PC13_TOG();Delay(0x5FFFF);
       }
}

void RCC_Configuration(void)
{
  RCC_HSI_Enable(RCC_HSIOSC_DIV6);
  RCC_HCLKPRS_Config(RCC_HCLK_DIV1);
  RCC_PCLKPRS_Config(RCC_PCLK_DIV1);
  
  RCC_PLL_Enable(RCC_PLLSOURCE_HSI, 8000000, 8);   
  
  __RCC_FLASH_CLK_ENABLE();
  FLASH_SetLatency(FLASH_Latency_3);   
    
  RCC_SysClk_Switch(RCC_SYSCLKSRC_PLL);
  RCC_SystemCoreClockUpdate(64000000);	
}


void GPIO_Configuration(void)
{
        GPIO_InitTypeDef GPIO_InitStruct;
	__RCC_GPIOB_CLK_ENABLE();
	__RCC_GPIOC_CLK_ENABLE();
	__RCC_GPIOA_CLK_ENABLE();

  GPIO_InitStruct.IT = GPIO_IT_NONE; 
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pins = GPIO_PIN_7|GPIO_PIN_8;
  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
  GPIO_Init(CW_GPIOA, &GPIO_InitStruct);
  GPIO_InitStruct.Pins = GPIO_PIN_13;
  GPIO_Init(CW_GPIOC, &GPIO_InitStruct);
  GPIO_WritePin(CW_GPIOA,GPIO_PIN_7|GPIO_PIN_8,GPIO_Pin_RESET);
  GPIO_WritePin(CW_GPIOC,GPIO_PIN_13,GPIO_Pin_RESET);
}

笔者使用的Keil版本为V5.38.0.0,默认使用编译器的版本为:compiler version 6。编译完成后,将官方提供的WCHLINK仿真器正确连接到核心板上。《WCH-Link使用说明V1.0》文档中有提到,该仿真器可支持基于ARM的MCU下载与调试,同时也支持基于RISC-V的MCU下载与调试,具体详情可参阅该文档。
*附件:WCH-Link使用说明V1.0.pdf
管脚定义.png
WCH-Link正面.jpg

WCH-Link背面.jpg

由于CW32饭盒派是一款基于CW32F030C8T6的ARM系列的MCU,因此使用WCH-Link时,无需将TX与GND短接。首次连接需要等电脑自动安装相适应的驱动,如果自动安装不能成功,可安装在本地的“DapLinkSer”文件夹的exe文件,笔者的电脑能够自动安装驱动,这里就不再赘述。

实物连线如下图所示:
实物连线.jpg

选择相应的下载算法:
选择下载算法.png

算法.png

程序下载完成后,闪灯效果如下视频。

闪灯

更多回帖

发帖
×
20
完善资料,
赚取积分