目录
Part 1:Pinout & Configurations->Categories->System Core
Part 2:Clock Configuration(时钟树)
〇、常用快捷键
Ctrl+7 按行注释/取消注释 Ctrl+shift+/ 按块注释 Ctrl+shift+\ 按块取消注释
Alt+/ 代码自动提示 Ctrl+B Build All
一、基本操作(示例)
1.创建新项目
(1)file->New->STM32 Project
(2)Part Number Search->输入G474RE->选择STM32G474RE->选择MCU型号STM32G474RE->Next
(3)项目名称及路径(路径设定一次后都用default就行)->Finish
2.相关配置(在ioc文件中)
Part 1:Pinout & Configurations->Categories->System Core
(1)配置RCC(Reset and Clock Control)
->RCC,在右侧的RCC Mode and Configuration中,点击下拉High Speed Clock(HSE)->进行选择(例如Crystal/Ceramic Resonator,外部晶振)
(2)配置SYS
->SYS,在右侧的SYS Mode and Configuration中,点击下拉Debug,选择Serial Ware(SW模式)
(3)选择引脚功能
例如配置引脚PA5为GPIO输出:在Pinout View窗口查找框输入“PA5”->点击界面中闪动的引脚PA5->在选项中点击选择GPIO_Output
(4)GPIO模块配置
->GPIO,点击右侧的PA5,出现与引脚PA5有关的GPIO配置
Part 2:Clock Configuration(时钟树)
(1)在Input Frequency框中,输入24(即外部晶振为24MHz)
(2)在PLL Source MUX中选择HSE
(3)Sytem Clock MUX中选择PLLCLK
(4)在HCLK(MHz)框中,输入170(即170MHz)
(5)最后回车,系统自动按照所配置的选项,自动配置相关的PLLM、PLL、和AHB Prescaler中的参数。
注:一定要回车!!!
part 3:Project Manager
Project、Code Generator、Advanced Settings,目前不要修改,保留默认设置即可
part 4:生成代码(方式3选1)
①点击菜单栏中的保存
②或点击Project->Generate Code
③快捷键:Alt+K
3.编程、调试
(1)在Porject Explorer界面,TestGPIO(当前project)->Core->Src->main.c
(2)启动Debug Configurations:
①点击项目TestGPIO,右键鼠标选择Debug As->Debug Configurations;或者点击菜单栏上Run->Debug Configurations
②STM32 Cortex-M C/C++ Application->TestGPIO Debug->Main,刷新其中的项目,确认右侧为Debug\TestGPIO.elf
③->调试器,调试探头:ST-LINK(ST-LINK GDB server),接口:SWD
(3)调试:先暂停,而后点击Windows->Show View->SFRs,可以查看MCU内各模块内寄存器
二、配置GPIO中断(示例)
(1)Project Explorer界面,TestGPIO->Debug->TestGPIO.ioc文件,进入到项目配置中
(2)保持原来testGPIO项目的RCC、SYS、时钟树的设置不变
(3)配置PC13为外中断引脚功能:
Pinout&Configuration,在Pinout View窗口,点击PC13引脚配置为外中断引脚
(4)配置PC13外中断参数:
Pinout & Configurations->Categories->Systerm Core->GPIO,
点击GPIO Mode and Configuration中的PC13,出现与引脚PC13有关的配置;
点击下拉GPIO Mode中PC13,选择External Interrupt Mode With Falling edge detection(用下降沿作为中断源信号),其他使用默认配置即可
(5)设置NVIC:
Pinout & Configurations->Categories->Systerm Core->NVIC,
勾选NVIC Mode and Configuration中EXTI Line[15:10] interrupt的Enalbled(使能该中断),并设置Preemption Priority 为1(抢占优先级别为1),其他设置保持默认
三、配置UART串行通信(示例)
(1)配置RCC、SYS、时钟的设置同上
(2)Pinout & Configurations->Categories->Connectivity>LPUSART1,
在LPUSART1 Mode and Configuration中,Mode选择Asynchronous(异步串行方式),修改波特率为115200,其他选用默认设置(8位数据,1位停止位,无校验),此时PA2、PA3自动配置为LPUART1_TX、LPUART1_RX;若没有,请手动完成配置