stm32cubemx打开头文件路径错误_STM32CubeMX教程GPIO

    分享本文,介绍STM32的GPIO使用。

  • 设置GPIO引脚的输出功能,将对应引脚拉高或拉低输出

  • 初步认识STM32最新的HAL库的使用

  • 用代码实现控制GPIO引脚输出产生周期出1s 占空比为50%的PWM波 

示例详解

    做实验用到的STM32F103C8T6最小系统板,如下图所示。使用STM32cubemx 工具自动产生的配置工程,使用KEIL5编译代码。

f7b95b6b6cca2e881081501f239f4752.png

    最小系统板原理图:

51771a2ecc742e194d0748086bb2ac9d.png

新建并配置工程

5fcd2b3abe215c8743916bec0dde7360.png

    在新弹出的界面中的搜索框中输入 “stm32f103c8” ,并双击右侧栏中列出的STM32F103C8

68ed2a8822e5817a93a66ea9744a567c.png

    弹出如下图所示界面,至此工程创建完成。

    接下来配置工程。

5ea5d6355d6ede4f0aa91f78f3ba53cc.png

    配置系统伏仿真调试接口, 在System Core 目录下单击SYS选项,将其中的Debug选项选为Serial Wire, 此时PA13 PA14引脚会被占用。

    配置STM32 CUBEMX 工程。

5e8e0b67b5b6d0c27f214e857ebc0d14.png

    配置系统时钟源,在System Core 目录下单击RCC选项,将其中的High Speed Clock( HSE )选项选为Crystal/ceramic resona…, 此时PD0 PD1引脚会被占用,配置图如下。

24c77808de5db65fed75e6551506cbd5.png

     配置GPIO PA0引却为输出,在右侧图中单击PA0引脚 ,在出现的选项选框中选择GPIO_Output 选项,选完后在在System Core 目录下单击GPIO选项,在GPIO子项中单击列表中的PA0,可看查看到PA0的详细设置参数,也可以根据需要进行修改,在这里保持默认即可。

cf73e11e3af5d7aacecf67bcf3706cc9.png5a6c23931333be9442978128db2cd222.png

    配置系统时钟树,将工程界面切换到Clock Configureation 界面,完成如下配置。

8bc5f89b85e43b8b19488baa35b3027c.png

    配置代码生成,工程界面切换到Project Manager 界面,在界面左侧单击Project项,将其设置成如下图所示( 设置工程路径在E:\Stm32cubePrj目录,工程名为stm32_gpio, 开发环境为 MDK-ARM v5 )。

264895e7f90920092fbb533bb6d374e6.png

    在界面左侧单击Code Generator项,将其设置成如下图所示。

    只拷贝所需文件到工程,为每个接口生成独立的初始化头文件和源文件,将所有未使用的引脚设为模拟输入。

bb65ef9713d01b654624517dd97e5b34.png

打开工程

    生成代码,单击工程界面中”GENERATE TOOL” 开始生成代码,代码生成后弹出是否打开工程对话框,单击“Open Project”打开创建的工程。

f83ed59a77ee317c869603b08201c96b.png

bcf1253579ccbb752b5633c302e88e6b.png

    在代码工程(MDK/keil)中的 main.c 中 man函数中如下红框中代码:

f4eadeb56386696370b0d4b0a5139b20.png

编译工程

5433b968e7ac93cbabfbbad9af187a7a.png

    烧录代码,在代码工程中单击“Options for Target” 图标,在弹出的窗口中选中“Debug”页,选择相应的烧录工具,本示例所用是jlink工具。

    单击右侧“Setting”按钮,将Port 设为“SW”, 最大速度建议不要超过5M。

    如果仿真调式工具接线过长,可以将最大速度设为100K,这样可以保证烧录成功。

3b3b99a7dc0f0d8eb7aa7b297d5caeac.png

    选“flash Download”页,勾选“Reset and Run”,并确保其它内容如下图所示。

6327eda0fedbf88bf9b8f4652ef25294.png

    设置完上述设置后,便可进行下载操作,将调试仿真工具中的与最小系统板连接好,在工程中点Download 按钮,或按F8快捷键进入下载,下载完成后会出现如下图所示提示信息。

70d4761dae4a904c03136c8063793134.png

    操作GPIO引脚实现周期1S占空为50%的PWM实验完成。

    用示波器逻辑分析工具在PA0引脚可以看到如下图所示波形输出!!

1a8752cbc2290a11a0a7c0bb33aaacdf.png

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值