当前位置:   article > 正文

国产单片机系列:上海灵动微电子MM32使用笔记_灵动微 adc

灵动微 adc

上海灵动微电子MM32使用笔记


微信公众号:雍正不秃头,回复MM32模板获取本章内容下载链接。


         ~~~~~~~~         原本项目上使用了STM32F031F6P6这一款单片机,奈何ST的芯片疯涨所以换了国产灵动微电子的MM32F031F6P6,随笔分享一下使用该芯片的一些注意事项。


我以MM32F031系列单片机为例,说一下使用情况。

这款国产单片机兼容ST同型号,ST的最高到48M主频,而MM的最高能到72M。

在灵动官网下载的示例程序系统时钟源是通过system_MM32F031x4x6_q.c中的宏选择的,如下图:

  • SYSCLK_FREQ_HSE:选择为外部高速时钟,默认是8M
  • SYSCLK_HSI_48MHz选择为内部时钟(这一款单片机的默认内部时钟就是48M,跟ST不同)
  • SYSCLK_HSI_72MHz选择并配置时钟为内部72M

如果是使用的是外部时钟8M,官方示例程序是没有倍频到48M的,所以系统时钟就是8M,如果你需要倍频到48M,使用我这个函数替换掉原来的即可:

static void SetSysClockToHSE(void)
{
	/* 使能HSE */
	RCC->CR |= RCC_CR_HSEON;
	
	/* 等待HSE准备就绪 */
	while(!(RCC->CR & RCC_CR_HSERDY));
	
	/* 启用预取缓冲区并设置闪存延迟 */
	FLASH->ACR = FLASH_ACR_PRFTBE | FLASH_ACR_LATENCY_1;
	
	/* 设置HCLK时钟分频为1分频 */
	RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV1;
	
	/* 设置PCLK1时钟分频1分频 */
	RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV1;
	
	/* 设置PCLK2时钟分频1分频 */
	RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1;
	
	/* 设置HSE作为PLL输入时钟 */
	RCC->CFGR |= (1 << 16);
	
	/* 设置HSE不分频输入PLL */
	RCC->CFGR &= (~(1 << 17));
	
	/* 设置PLL倍频6倍到48M */
	RCC->CR &= (~(1 << 26));
	RCC->CR |= (5 << 26);            // PLLDN = 5
	RCC->CR &= (~(1 << 20));         // PLLDM = 0
	
	/* 使能PLL */
	RCC->CR |= (1 << 24);
	
	/* 等到PLL就绪 */
	while(((RCC->CR & (1 << 25)) == 0));
	
	/* 设置PLL输出作为系统时钟 */
	RCC->CFGR &= (~RCC_CFGR_SW);
	RCC->CFGR |= RCC_CFGR_SW_1;
	
	/* 等待系统时钟切换就绪 */
	while(((RCC->CFGR & (RCC_CFGR_SW_1 << 2)) == 0));
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44

还一个问题是我使用ST-LINK的SWD模式下载程序时,第一次下载成功,但是无法下载第二次,并且程序没有运行,按住复位、下载程序、瞬间松开复位,执行这三个步骤才可以下载,后来我换成了DAP仿真器,没有上述问题。

我还准备了一个工程模板,如下图:

工程模板下载链接可关注本文首的公众号。


ends…

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/658829
推荐阅读
相关标签
  

闽ICP备14008679号