单片机
返回首页

【STM32电机方波】记录1——GPIO基础配置

2018-10-05 来源:eefocus

GPIO库函数:

【STM32电机方波】记录1——GPIO基础配置

GPIO初始化:

typedef struct

 {

 u16 GPIO_Pin;   //选择待设置的GPIO管脚,使用操作符“|”可以一次选中多个管脚

GPIOSpeed_TypeDef GPIO_Speed;   //10MHz 、2MHz、 50MHz

GPIOMode_TypeDef GPIO_Mode;  //输入输出的8种方式

} GPIO_InitTypeDef;

GPIO的缺省初始化值:

GPIO_Pin = GPIO_Pin_All ;

GPIO_Speed = GPIO_Speed_2MHz;

GPIO_Mode = GPIO_Mode_IN_FLOATING

GPIO的输入输出模式:

(1)GPIO_Mode_AIN 模拟输入  应用ADC模拟输入,或者低功耗下省电

(2)GPIO_Mode_IN_FLOATING 浮空输入  浮空输入状态下,IO的电平状态是不确定的,完全由外部输入决定

(3)GPIO_Mode_IPD 下拉输入 IO内部上拉电阻输入

(4)GPIO_Mode_IPU 上拉输入  IO内部下拉电阻输入

   (5)GPIO_Mode_Out_OD 开漏输出 开漏输出就是不输出电压,低电平时接地,高电平时不接地。如果外接上拉电阻,则在输出高电平时电压会拉到上拉电阻的电源电压。这种方式适合在连接的外设电压比单片机电压低的时候

(6)GPIO_Mode_Out_PP 推挽输出  IO输出0-接 GND, IO输出1 -接 VCC,读输入值是未知的

(7)GPIO_Mode_AF_OD 复用开漏输出 片内外设功能(TX1, MOSI, MISO. SCK. SS)

(8)GPIO_Mode_AF_PP 复用推挽输出  片内外设功能(I2C 的 SCL, SDA)


通常有5种方式使用某个引脚功能,它们的配置方式如下:

1)作为普通GPIO输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。

2)作为普通GPIO输出:根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。

3)作为普通模拟输入:配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。

4)作为内置外设的输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。

5)作为内置外设的输出:根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块。



直接由stm32控制电机运动 

主要完成工作:

1、配置keil 5 的mdk环境

2、安装st-link 驱动,更新驱动

3、分别运行4种方波程序控制电机运动,通过控制按钮开关或者电位器变化来对电机进行速度以及方向的调控   

板子及电机运行中:

【STM32电机方波】记录1——GPIO基础配置

4、对“方波无霍尔调速、换向(加电流电压、保护)(3功能键)(电位计调速)”程序进行初步的了解

 

主要存在的问题:mdk版本问题导致程序用stm32f103rc 为芯片 运行成功,但在配置st-link 以及下载烧录过程中此芯片报错,改用stm32f103rb 为芯片配置选择 128kb速度 则烧录运行成功


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • 短波AM发射器电路设计图

  • 带有短路保护系统的5V直流稳压电源电路图

  • 如何调制IC555振荡器

  • 基于ICL296的大电流开关稳压器电源电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章