stm32

1 GPIO

  0:说明在加入文件stm32f4xx_gpio.c    ##### How to use this driver #####

  1 打开时钟 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);

  2 如果选择寄存器操作 -〉计算地址,直接对地址进行赋值操作

  3 函数库操作   GPIO_InitTypeDef GPIO_InitStruct;

  4 函数库提供的操作属性和方法    

    属性

void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)
GPIO_TypeDef* GPIOx
取值范围:GPIOA~K

uint32_t GPIO_Pin;
GPIO_Pin_0~15  定位对应的引脚

GPIOMode_TypeDef GPIO_Mode;
配置对应引脚模式
GPIO_Mode_IN GPIO_Mode_OUT GPIO_Mode_AF GPIO_Mode_AN

GPIOSpeed_TypeDef GPIO_Speed;
配置对应GPIO口翻转速度
GPIO_Speed_2MHz GPIO_Speed_25MHz
GPIO_Speed_50MHz GPIO_Speed_100MHz

GPIOOType_TypeDef GPIO_OType;
配置对应GPIO 端口输出类型
GPIO_OType_PP 推挽
GPIO_OType_OD 开漏

GPIOPuPd_TypeDef GPIO_PuPd;
配置对应GPIO 端口上拉下拉
GPIO_PuPd_UP 上拉
GPIO_PuPd_DOWN 下拉
GPIO_PuPd_NOPULL 浮空

GPIO_Init(GPIOF, &GPIO_InitStruct);

方法:

GPIO_SetBits(GPIOF, GPIO_Pin_9|GPIO_Pin_10); 设置高电平

GPIO_ResetBits(GPIOF, GPIO_Pin_8); 设置低电平

Bit_RESET |Bit_SET == GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_3) 取GPIO端口电平状态是否为低或高

2 NVIC

3 TIME

4 UARE

5 ONE WIRE

6 PWM

7 ADC

8 LCD

9 XPT

10 UCOSiii移植

11 定时器

12 蓝牙

13 陀螺仪

时间: 12-01

stm32的相关文章

关于STM32 __IO 的变量定义

这个_IO 是指静态 这个 _IO 是指静态 volatile uint32_t 是指32位的无符号整形变量uint32_t 是指32位的无符号整形变量: 搞stm32这么久了,经常看到stm32里面库文件里面有用"_IO"定义的变量,查过一下当时记住了,过段时间又给忘记了.所以才特意的写一个博文来记住. volatile volatile 类型是这样的,其数据确实可能在未知的情况下发生变化.比如,硬件设备的终端更改了它,现在硬件设备往往也有自己的私有内存地址,比如显存,他们一般是通过

stm32中字节对齐问题

ARM下的对齐处理   from DUI0067D_ADS1_2_CompLib 3.13 type  qulifiers 有部分摘自ARM编译器文档对齐部分  对齐的使用:  1.__align(num)     这个用于修改最高级别对象的字节边界.在汇编中使用LDRD或者STRD时     就要用到此命令__align(8)进行修饰限制,来保证数据对象是相应对齐.     这个修饰对象的命令最大是8个字节限制,可以让2字节的对象进行4字节     对齐,但是不能让4字节的对象2字节对齐.  

CRC32 of Ether FCS with STM32

Everyone knows that STM32F1xx, STM32F2xx, STM32F4xx have a hardware unit with a polynomial CRC32 0x04C11DB7. And he, in general, work. But only a checksum for some reason does not coincide with that calculated softvarno. The Google usually 2 types of

使用stm32开发 USB_CAN 适配器测试

USB_CAN 适配器测试例程 采用CDC透传模式 一.简介 CAN总线无处不在,在设计开发中,到处需要用到CAN总线调试工具,本工具可以作为CAN的基础测试工具,用于监听CAN总线,或测试CAN数据收发.测试时,可以用两个板子,对接起来测试.即可实现如下介绍的功能. 二.接线图示意       三.开发测试环境 兼容系统:XP.WIN7 测试系统:XP 32bit(已验证) 开发工具:MDK 4.54 MCU型号:STM32F107VC(3.5版本固件库) 测试软件:stc-isp-15xx-

毕业设计——基于STM32的音乐播放器设计(一)

基于STM32的音乐播放器设计, 源代码下载地址:http://download.csdn.net/detail/cxp2205455256/8334021      SD卡文件下载地址:http://download.csdn.net/detail/cxp2205455256/8334089 电路图下载地址:文件太大了,上传不了....... 以下是截图: 1.硬件电路 2.软件主界面 3.音乐播放器界面 4.音乐定时播放界面 5.音乐列表界面 6.日历功能界面 9.温度功能界面 10.计算器

Jlink V7在MDK下使用Cortex-M3-Jlink模式开发STM32的说明

Jlink V7在MDK下使用Cortex-M3-Jlink模式开发STM32的说明 开发环境:STM32F103RB(128K Flash 20K RAM)+MDK3.50+JLINK V7(v4.04) mdk3.50 新增一种cortex-ms-Jlink调试模式,可以很好地支持Jlink.Jlink-SWD调试,无RDI需要按复位的缺点.烧写速度比RDI慢一些. 1 软件安装 1.1 安装Segger jlink V4.04驱动 安装在c:\Program Files\SEGGER\JL

stm32 IO模式

stm32的每个IO口都有8种可配置模式,整理如下,便于日后查阅: 模拟输入(0x0),用于ADC. 浮空输入(0x4). 下拉输入(0x8),用作输入口,额外设置ODR=0(默认). 上拉输入(0x8),用作输入口,额外设置ODR=1. 推挽输出(0x3),用作输出口. 开漏输出(0x7). 推挽复用功能(0xe),使用IO口的第二功能. 开漏复用功能(0xb). 只有在输出模式下,需要配置输出速率(10MHz.2MHz.50MHz). AF - Alternate Function,复用.

stm32高级定时器的应用——spwm

用过stm32定时器的朋友都知道,定时器的CCR寄存器,可以用来配置PWM的输出,但同样也可以用来配置spwm.废话不多说,直接上代码. 首先,你得考虑一下几个因素: 1.同步调制还是异步调制.  2.载波比N设置为多少 3.spwm计算法 4.prescaler和period的值 5.改变CCR还是改变ARR 下面是程序的大致情况: 1.使用同步 2.载波比设置为N = 360 3.采用对称规则采样法 4.通过中断时实改变CCR的值 5.使用stm32f429,它的高级定时器时钟频率为180M

STM32初学Keil4编译时出现 Error:Failed to execute 'BIN40/Armcc'

一种是在系统开始--运行里输入cmd,查看armcc状态.详情见推文: http://blog.csdn.net/hicui/article/details/7350805(笔记记录,请勿见怪) 都没有问题的话,那么可以尝试: 在keil里的菜单栏依次选择Project->Manage->Components,Environment andBooks(CEB)(或者直接点击工具栏的图标), 然后在CEB里选择Folders/Extensions标签页,在RealView Folder里选择ke

STM32 寄存器库和固件库

寄存器和固件库开发的差别和联系 固件库就是函数的集合,固件库函数的作用是向下负责与寄存器直接打交道.向上提供用户函数调用的接口(API). 在 51 的开发中我们经常的作法是直接操作寄存器,比方要控制某些 IO 口的状态,我们直 接操作寄存器: P0=0x11; 而在 STM32 的开发中,我们相同能够操作寄存器: GPIOx->BRR = 0x0011; 这样的方法当然能够,可是这样的方法的劣势是你须要去掌握每一个寄存器的使用方法.你才干正确使用 STM32,而对于 STM32 这样的级别的