cube作为stm32的一种时钟配置工具,省去了keil里面复杂的配置工作,是节省时间提高效率的必备工具。因为大家从一开始使用就会被STM32的配置刁难到,但是这些问题总是猝不及防,要是能一下配置好,当真是极好的。话不多说,先开始建立工程。
第一步:打开cube,进入如下界面。
点击File->new project,
这时候就可以根据你要用的板子选器件了,可以通过点击上面的MCU selector,board selector选项来切换筛选选项。我一般使用STMF103的板子,所以直接点击到右下角,滚动滚轮就可以选择。这里选择STM103VET6进行建立工程。选择STM32F103VETx,双击。或者选中点击Start project进入如下界面。
界面主要包括三个部分:Pinout&Configuration(引脚配置),Clock Configuration(时钟配置),Project Manager(项目管理)和Tools(工具)。
首先使用外部时钟可用:点击System Core->RCC,在高速外部时钟(HSE)里面下拉选择Crystal/Ceramic Resonator(晶体/陶瓷谐振器),低速里面也选择这一个,就可以在时钟树里面选择外部时钟了。(不选这个的话,时钟树里面只能选内部时钟,看个人需要)。
然后在左边选择对应的功能就可以进行设置了。这里以使用时钟3(TIM3)的3、4通道输出PWM波来进行配置。点击Timer进入时钟,点击TIM3出现如下界面:
点击channel3会出现一个下拉菜单,点击 PWM Generation CH3即可,通道四也一样。
这里时钟设置需要与时钟配置配合,先点击进入时钟配置。
这样就配置成了APB1 和APB2都为72M的时钟了。
下面进行PWM配置。
自动装载值为一个PWM周期的值,预分频值和分频值是用来改变计数的频率的。
频率=72M/预分频值/分频值
一个PWM周期的长度(s)=自动装载值*频率
设置完成之后,进入项目管理,如下所示;点击左面的Project,
然后点击Generate Code生成项目。
生成成功!打开工程,可以看到如下画面:
进入main
点击编译,下载即可。
可以看到大概为1.43V,由于单片机引脚电压不准,大概为一半。