推荐阅读最新更新时间:2024-03-16 15:42
stm32中DMA基本使用
DMA有什么用? 直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。 有多少个DMA资源? 有两个DMA控制器,DMA1有7个通道,DMA2有5个通道。 数据从什么地方送到什么地方? 外设到SRAM(I2C/UART等获取数据并送入SRAM); SRAM的两个区域之间; 外设到外设(ADC读取数据后送到TIM1控制其产生不同的PWM占空比); SRAM到外设(SRAM中预先保存的数据送入DAC产生各种波形); 还有一些目前还搞不清楚的。 DMA可以传递多少数
[单片机]
STM32中断优先级彻底讲解
看了一早上资料终于把STM32中断优先级搞懂了, 现在与大家分享: 一:综述 STM32 目前支持的中断共为 84 个(16 个内核+68 个外部), 16 级可编程中断优先级 的设置(仅使用中断优先级设置 8bit 中的高 4 位)和16个抢占优先级(因为抢占优先级最多可以有四位数)。 二:优先级判断 STM32(Cortex-M3)中有两个优先级的概念 抢占式优先级和响应优先级,有人把响应优先级称作'亚优先级'或'副优先级',每个中断源都需要被指定这两种优先级。 具有高抢占式优先级的中断可以在具有低抢占式优先级的中断处理过程中被响应,即中断嵌套,或者说高抢占式优先级的中断可以嵌套低抢占式
[单片机]
STM32 I/O的耐压问题,中断问题
STM32 I/O的耐压问题 STM32 I/O的耐压问题 STM32并不是如手册所言,绝大部都是耐5V电压的,具体的要参考数据手册——我就是轻信了网络上话,犯错误了。 STM32f103c8的I/O耐压分布是这样的: 1~19 :3.3V 20~22 :5.0V 23~24 :3.3V 25~34 :5.0V 35~36 :3.3V 37~40 :5.0V 41 :3.3V 42~43 :5.0V 44 :3.3V 45~46 :5.0V 47~48 :3.3V 非5V耐压I/O,输入5V时,有很多种方法。简单的可以通过分压。
[单片机]
基于STM32的传感器接口模块的设计
0 引言 物联网将会是未来很长一段时间内IT产业的发展趋势,一个完整的物联网系统的构成或产业链的划分,目前业界比较统一的观点基本都认为应该包括三个层面:末端设备或子系统、通信连接系统、以及管理和应用系统。即Device-设备、Connect-连接和Manage-管理。由于数字整合的需求日益增长,对作为感知层核心组成元素的传感器数据融合提出了更高要求。如何将传感器连入网络成为一个尤其重要的问题。
传感器通过接口模块接入到相应网络。传感器通过信号接口连接到接口模块,节点以相应的适配模块接收和处理传感器输出信号,并将传感器原始数据转换为网络用户可以识别的信息,最后通过网络通信接口连接到上位机或者任何网络。 传
[嵌入式]
STM32待机模式唤醒测试以及独立看门狗测试
环境: 主机:WIN7 开发环境:MDK4.23 MCU:STM32F103CBT6 说明: 在上篇文章中http://blog.csdn.net/jdh99/article/details/7369844,进行了一些STM32待机模式的测试.其中关于如何在再次启动时判断是否是待机模式没有进行测试.另外上篇文章有个问题,闹钟中断在待机模式下是进入不了的. 本文进行了独立看门狗IWDG测试,以及待机模式更详细的测试. STM32中,复位分为3种: 1.系统复位:外部复位,WWDG,IWDG,SW复位,低功耗管理复位.除复位标志寄存器RCC_CSR不被复位,全部都被复位 2.电源复位:上电/掉电复位
[单片机]
stm32的IAP学习
几乎所有的同类书籍都介绍综合性的应用示例如 万年历 + 温度显示 + 闹钟响铃 + 计时表 这样的一个实时时钟范例或 STM32 + 音频解码 + 大容量存储方案 这样的MP3播放器范例。这些综合性实例的目的在于引领读者进行综合性实验,达到把单片机的基础模块整合运用的目的。这些实例普遍存在一种共同点,即 练手 意义要大于 实用 的意义。本文将讲述一个STM32的综合性应用示例,该示例将涉及到STM32微控制器的时钟系统、GPIO、定时器、中断系统、异步串口以及内置可编程flash等设备的应用,作为一个综合性实验的同时还具有很强的 实用 意义。这个示例就是STM32的IAP方案。 IAP,全称是 In-Application
[单片机]
STM32固件库实现led亮灭闪烁和音频发生器设计
概述 本文使用STM32F10X,软件为Keil uVision5,仿真软件Proteus 8 Professional 电路图 实现代码 学习笔记 8个led 电路图 8个led亮灭实现代码 实现代码 //8¸öledÈ«ÁÁÈ«Ãð #include stm32f10x.h int main() { GPIO_InitTypeDef star; //配置开启GPIO时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); //设置GPIO输出模式 //stm32F1提供了4种输出模式(推挽输出、开漏输出 、复用推挽输出 、复用开漏输出)和3
[单片机]
stm32专题七:EXTI(一)外部中断/事件控制器框图
stm32的每一个GPIO都可以产生中断,这些中断由EXTI这个外设管理。EXTI读取GPIO引脚的电平变化,然后交给NVIC。 外部中断EXTI的结构框图,标号20表示类似的信号线路有20根 共有20根输入线,其中EXTI0~EXTI15为GPIO引脚,每个GPIO的相同Pin(如Pin0)都接在一起,结构如下 总结如下 这些输入线由寄存器AFIO_EXTICR(外部中断配置寄存器)来控制,其中AFIO_EXTICR0管理EXTI0~EXTI3,AFIO_EXTICR1管理EXTI4~EXTI7,依此类推。 外部中断的检测过程: 当检测到上升沿/下降沿时,如果我们设置了软件中断事件寄存器EXTI_WSIE
[单片机]