推荐阅读最新更新时间:2024-03-16 16:22
【STM32】DMA基本原理、寄存器、库函数(1)
DMA的基本介绍 01 DMA的基本定义 DMA,全称Direct Memory Access,即直接存储器访问。 DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场过程,通过硬件为RAM和IO设备开辟一条直接传输数据的通道,使得CPU的效率大大提高。 02 DMA的主要特征 每个通道都直接连接专用的硬件DMA请求,每个通道都同样支持软件触发。这些功能通过软件来配置; 在同一个DMA模块上,多个请求间的优先权可
[单片机]
stm32学习笔记之堆栈的理解
1.堆和栈大小 定义大小在startup_stm32f2xx.s Stack_Size EQU 0x00000800 AREA STACK, NOINIT, READWRITE, ALIGN=3 Stack_Mem SPACE Stack_Size __initial_sp ; Heap Configuration ; Heap Size (in Bytes) 0x0-0xFFFFFFFF:8 ; Heap_Size EQU 0x00000800 AREA HEAP, NOINIT, READWRITE, ALIGN=3 __heap_base 2.堆
[单片机]
stm32的学习之存储器和总线架构
四个驱动单元:context-M3内核的D-bus总线和S-bus总线、通用DMA1和通用DMA2。 四个被驱动的单元:内部FLASH(内部山村存储器)、内部SRAM、FSMC、AHB到APB的桥AHP2APBx。 ICode总线是context-M3与内部闪存FLASH指令接口之间的连接的总线,实现指令的预取功能。 DCode总线是将context-M3与内部闪存存储器(FLASH)的数据接口连接起来的总线,实现数据读取。 系统总线(system bus)连接context-M3和总线矩阵,总线矩阵协调着context-M3和DMA间的访问。 DMA总线实现DMA的AHB主控接口道总线接口的连接。 总线矩阵 此总线矩阵协调内
[单片机]
STM32初学笔记4之USART
=========================== 文件分割线 =============================== /** ** 文件名称:BSP_ALIENTEK.H ** 功能描述:ALIENTEK开发板板级支持包声明 ** 硬件平台:STM32F103RBT6 Development Board ** 编译环境:Keil uversion4 IDE ** 版本信息:v0.2 ** 编写作者:唐华明 ** 编写时间:2011.11.26 ** 附加说明:无 ** 修改记录:2011-11-26 将DS0Off() GPIO_SetBits(GPIOD, GPIO_Pin_8)修改为 **
[单片机]
STM32学习笔记之DS18B20
我买得STM32开发小板儿上的外设实在少,连个数码管都没有,显示都得通过串口在超级终端上完成。我又特别懒,就挑了个比较方便的器件DS18B20来玩儿。 DS18B20应该说是学习嵌入式开发的入门级的器件,也是各种开发板的标准配置。因为它所需附加器件少(最多需要一个几K的电阻),而且操作简单方便(主要是IO口的控制时序),非常适合初学者练手。虽然之前学过8位机,但是却没有用8位机控制过DS18B20,心里一直感觉有些遗憾。现在趁着学32位机的机会好好研究研究它。 第一个要说的时GPIO口的配置问题。读写DS18B20要求GPIO是双向的,51单片机没有问题,但是STM32的GPIO口貌似是单向的,不过即使设置为输出口,也可以通过读取
[单片机]
STM32单片机通用定时器的编程设计
一、STM32通用定时器原理 STM32系列的CPU,有多达8个定时器,其中TIM1和TIM8是能够产生三对PWM互补输出的高级定时器,常用于三相电机的驱动,它们的时钟由APB2的输出产生。其它6个为普通定时器,时钟由APB1的输出产生。 下图是STM32参考手册上时钟分配图中,有关定时器时钟部分的截图: 从图中可以看出,定时器的时钟不是直接来自APB1或APB2,而是来自于输入为APB1或APB2的一个倍频器,图中的蓝色部分。 下面以通用定时器2的时钟说明这个倍频器的作用:当APB1的预分频系数为1时,这个倍频器不起作用,定时器的时钟频率等于APB1的频率;当APB1的预分频系数为其它数值(即预分频系数为2、4、8或
[单片机]
深入理解STM32之储存器和总线架构1(基于STM32F411)
本文转载自http://blog.csdn.net/charmingsun/article/details/52258419 官方文档: STM32F411 参考手册 STM32F411 数据手册 Cortex™-M4F 编程手册 STM32 微控制器系统存储器自举模式应用笔记 STM32™ 自举程序中使用的 USART 协议 ARM Cortex™-M Programming Guide to Memory Barrier Instructions 一、系统架构 主系统由 32 位多层 AHB 总线矩阵构成,可实现以下部分的互连: 有关AHB总线和APB总线的更多信息请参考博文: 浅析AMBA规范以及AMBA
[单片机]
stm32在rt-thread上的PWR(电源管理)
Low-power modes有三种Sleep mode、Stop mode、Standby mode,实现如下: void SYSCLKConfig_START(void) { ErrorStatus HSEStartUpStatus; /* 使能 HSE */ RCC_HSEConfig(RCC_HSE_ON); /* 等待 HSE 准备就绪 */ HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus == SUCCESS) { /* 使能 PLL */ RCC_PLLCmd(ENABL
[单片机]