1、基本的GPIO配置,注意,因为需要用到普通IO口作为中断输入口,因此是用了IO口德复用功能,因此必须打开RCC_APB2Periph_AFIO时钟,负责复用IO无效。2、IO口复用功能映射3、嵌套中断向量配置调试发现这几句话是必须
1 __set_PRIMASK(1);//关总中断23 /************4 **********/5 __set_PRIMASK(0);//开总中断
一、使用复用功能(AF)时,要对端口位配置寄存器进行编程。1)对于复用的输入功能,配置必须为上拉/下拉或者浮空;2)对于复用输出功能,配置必须为复用功能输出模式(推挽,开漏)。对于双向复用功能,必须配置为复
一、RCC_AHBPeriphClockCmd函数其中RCC_AHBPeriph的取值范围:二、RCC_APB2PeriphClockCmd函数其中RCC_APB2Periph的取值范围:GPIOx[0-15]、高级定时器TIM1,TIM8,高速SPI1,高速异步通信USART1,ADC1,ADC2
在MDK环境下,终于将3.90版本的UCGUI移植到STM32下了,在网上看到的都是例程代码,很少看到有关于在STM32下移植UCGUI的教程方法,为了方便大家,特写此移植方法,大家可以借鉴(有错误之处,望大家指点出来共同讨论!
我们经常会使用STM32 ADC功能测试外部电压,在一些精度不高的场合,我们一般就用3.3V作为参考电压来计算测到的电压值。不过,这种情况很少见,可能只有单片机学习板才会这样使用。因为我们使用的3.3V稳压芯片,很少有
Systick :系统心跳定时器,提供系统节拍裸机程序中可作为独立的延时定时器用途:1.产生操作系统的时钟节拍2.便于不同处理器之间程序移植SysTick定时器被捆绑在NVIC中,异常号153.作为一个闹铃测量时间用于测量时间,但当
1.不要太相信stm32内部的IO上下拉,必要的话,在外部接上下拉电阻。2.当把JTAG的IO口当成普通IO口来使用时,要先禁止JTAG。即:要使用到PB3、PB4、PA13、PA14、PA15时,要先禁止JTAG。在库函数中,调用一下函数:GPIO
一、wm_redraw.c移植我在上一篇笔记中讲过如何将ucGUI移植到STM32上开发裸机程序。在本篇笔记中分析一下wm_redraw.c的移植及源码。首先打开移植好的ucGUI工程文件,然后将ucGUI\\Sample\\GUI目录下WM_Redraw.c文件中的
以stm32的TIM2作为例,将其配置成为普通的定时器,计时时间到即触发中断。1:对定时器的基本配置先声明一个定时器配置用的结构体变量TIM_TimeBaseStructure,具体可以参考STM32提供的TIM库TIM_TimeBaseStructure.TIM
对于STM32来说软件复位有两种方式:1)采用官方自带的软件库在官方软件库的stm32f10x_nvic.c 文件里 直接提供了 系统复位的函数/********************************************************************************
当SYSCLK等于72M,APB1等于36MAPB2等于72M时,定时器的时钟为72M。注意图中这句话:如果APB1/APB2预分频器=1则频率不变,否则频率x2。如果此时,APB1分频2,则PCLK1的外部时钟为36M,此时的定时器时钟x2为72M;APB2分
Ⅰ、写在前面学习本文之前可以查看我前面的文章:STM32CubeMX介绍、下载与安装STM32CubeMX使用方法及功能介绍STM32CubeMX新建工程+基本IO配置过程本文接着前面STM32CubeMX文章结合USART实例,讲述关于STM32CubeMX新建
今天在写SysTcik_Handler()这个中断函数时,总是报错,明明在开头定义的全局变量extern u16 ntime,(ntime--写在stm32f10x_it.c的systick中断函数中)但是编译时总是报错,百度之后才有了解决方法,之前也注意到过e
指针的定义:自己总结为,指针是用来存放某种类型变量的地址的变量 比如 unit8 * p = 0x5555 5555 指针p 表示用来存放 unit8类型变量的地址的变量 *指针是变量 *指针是存放地址的变量 *指针是存放某种类
对于keil的启动代码(针对STM32F042),添加 备注 和 自己的理解;******************** (C) COPYRIGHT 2014 STMicroelectronics ********************;* File Name : startup_stm32f042.s;* Author : MCD
对STM32任何模块使用前都要对其初始化、首先就是初始化外设时钟,可以简单看系统时钟章节关于外设时钟,看数据手册如下:看门狗由独立内部40M时钟驱动,所以不需要我们在初始化时钟配置寄存器。 读数据手册可
在许多帖子里看到许多人在使用I2C设备时,都是使用模拟的I2C,因为ST为了规避专利而把它设计得很难用!本人今天也尝试了一下官方生成的I2C,使用的是CUBEMX生成的I2C,在生成后也遇到了一些小问题,在这里贴出来,为
STM32 DAC简介大容量的STM32F103具有内部DAC,战舰STM32选择的是STM32F103ZET6属于大容量产品,所以是带有DAC模块的。STM32的DAC模块(数字/模拟转换模块)是12位数字输入,电压输出型的DAC。DAC可以配置为8位或12位模
主要参考: startup_stm32f10x_hd.s, stm32f10x_exti.h, stm32f10x_exti.c,另外,这里说的外部中断是相对于M3内核之外的,主要是外设中断如:如I/