9.STM32中对SysTick_Init()函数和Delay_us()的理解

发布者:delta14最新更新时间:2019-09-21 来源: eefocus关键字:STM32  SysTick_Init()函数  Delay_us() 手机看文章 扫描二维码
随时随地手机看文章

STM32中对SysTick_Init()函数(sysTick_Config()、TimingDelay_Decrement()自定义)和Delay_us()的理解:

实验:3个LED灯以500ms的频率闪烁。



关键字:STM32  SysTick_Init()函数  Delay_us() 引用地址:9.STM32中对SysTick_Init()函数和Delay_us()的理解

上一篇:8.STM32中对ADC1_Config()函数的理解(自定义)测试ADC转换电压值
下一篇:error: #5: cannot open source input file "core_cm3.h": No such file or directory

推荐阅读最新更新时间:2024-11-17 16:38

STM32 位域与联合体结合优化操作
1、位域 详细介绍参考文章:位域 位域可以实现在信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。 例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。 为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。 所谓“位域”是把一个字节中的二进位划分为几 个不同的区域, 并说明每个区域的位数。 每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。 2、联合体 在进行某些算法的C语言编程的时候,需要使几种不同类型的变量存放到同一段内存单元中。 也就是使用覆盖技术,几个变量互相覆盖
[单片机]
STM32 GPIO 寄存器的配置
配置每组IO口的寄存器:(每一组一套寄存器) 1、两个32位的配置寄存器;GPIOx_CRL,GPIOx_CRH 2、两个32位的数据寄存器:GPIOx_IDR,GPIOx_ODR 3、一个32位置位/复位寄存器:GPIOx_BSRR 4、一个16位的复位寄存器GPIOx_BRR 5、一个32位的锁定寄存器GPIOx_LCKR 详解 : CRL和CRH控制IO口,是四个位控制一个口,所以要两个32位的来控制16个口 1、GPIOx_CRL:端口配置低寄存器: 每个口由四位控制,为MODE+CNF联合配置,具体模式在下图中。(输入要与输入对应,输出也要与输出对应) 具体对应输入输出配置表(对上图的详解): 2、GPIOx_
[单片机]
<font color='red'>STM32</font> GPIO 寄存器的配置
STM32上创建链表并实现LCD滚动显示串口消息
在实现STM32开发ESP8266的时候发现ESP8266串口发送的消息行数很多, 如果使用普通的数组来存储消息需要大量的存储开销, 并且数据的显示也会损耗MCU的处理速度, 故而实现对消息的传输装入一个可以动态拓展, 并且具有灵活的调用形式的容器. 链表理所当然成为首选. 关于C语言链表的相关操作本文不再详细叙述, 若有需求请移步网址:https://blog.csdn.net/morixinguan/article/details/68951912先学习链表后再来学习在STM32创建链表. 首先粘贴STM32上链表.c文件的代码: //////roll_display.c的代码 #include roll_di
[单片机]
在<font color='red'>STM32</font>上创建链表并实现LCD滚动显示串口消息
stm32中断配置(NVIC)
内嵌向量中断控制器:Nested Vectored Interrupt Controller (NVIC) NVIC优先级结构体定义: typedef struct { uint8_t NVIC_IRQChannel; /*! Specifies the IRQ channel to be enabled or disabled */ uint8_t NVIC_IRQChannelPreemptionPriority; /*! 主中断优先级范围:0-16 */ uint8_t NVIC_IRQChannelSubPriority; /*! 从优先级 范围:0-16 *
[单片机]
STM32启动过程解析-2.02固件库启动文件分析
启动过程也许平时开发的时候不用太多关注,但是了解一下有助于我们加深对芯片工作过程的理解。 相对于ARM上一代的主流ARM7/ARM9内核架构,新一代Cortex内核架构的启动方式有了比较大的变化。ARM7/ARM9内核的控制器在复位后,CPU会从存储空间的绝对地址0x000000取出第一条指令执行复位中断服务程序的方式启动,即固定了复位后的起始地址为0x000000(PC = 0x000000)同时中断向量表的位置并不是固定的。而Cortex-M3内核则正好相反,有3种情况: 1、 通过boot引脚设置可以将中断向量表定位于SRAM区,即起始地址为0x2000000,同时复位后PC指针位于0x2000000处; 2、 通过boo
[单片机]
一种经典的STM32 ADC多通道转换详细解析
STM32ADC多通道转换 描述:用ADC连续采集11路模拟信号,并由DMA传输到内存。ADC配置为扫描并且连续转换模式,ADC的时钟配置为12MHZ。在每次转换结束后,由DMA循环将转换的数据传输到内存中。ADC可以连续采集N次求平均值。最后通过串口传输出最后转换的结果。 程序如下: #include“stm32f10x.h”//这个头文件包括STM32F10x所有外围寄存器、位、内存映射的定义 #include“eval.h”//头文件(包括串口、按键、LED的函数声明) #include“SysTickDelay.h” #include“UART_INTERFACE.h” #include #defineN50//每通道
[单片机]
一种经典的<font color='red'>STM32</font> ADC多通道转换详细解析
STM32使用不同的晶振需修改的代码
第一步,打开stm32f10x.h,将 #define HSE_VALUE ((uint32_t)8000000) /*! Value of the External oscillator in Hz */ 修改为: #define HSE_VALUE ((uint32_t)12000000) /*! Value of the External oscillator in Hz */ 第二步,打开system_stm32f10x.c,修改PLL参数,将 /* PLL configuration: PLLCLK = HSE * 9 = 72 MHz */ RCC- CFGR &= (uint
[单片机]
STM32串口下载方式简单总结
这里简单说明一下一键下载电路的原理,我们知道, STM32 串口下载的标准方法是 2 个步 骤: 1, 把 B0 接 V3.3(保持 B1 接 GND)。 2, 按一下复位按键。 通过这两个步骤,我们就可以通过串口下载代码了,下载完成之后,如果没有设置从 0X08000000 开始运行,则代码不会立即运行,此时,你还需要把 B0 接回 GND,然后再按一 次复位,才会开始运行你刚刚下载的代码。所以整个过程,你得跳动 2 次跳线帽,还得按 2 次 复位,比较繁琐。而我们的一键下载电路,则利用串口的 DTR 和 RTS 信号,分别控制 STM32 的复位和 B0,配合上位机软件(mcuisp),设置: DTR 的低电平复位, RTS
[单片机]
<font color='red'>STM32</font>串口下载方式简单总结
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved