前言 上一篇暂时结束了定时器的章节,还有一个高级定时器的部分,这个缓一缓吧,先换个片上外设来玩一玩,本文开始介绍STM32F407的又一个片上外设,ADC转换器,细细想来,GPIO的输入、输出、复用、通用都用过了,唯独一个模拟功能还没用过,而本片主角——ADC,一个模拟量数字量转换的片上外设,它的作用就是将GPIO口输入的模拟量转换成CPU内核可以识别的数字量。还是之前的模式,先简单做个概述,然
前言 在之前的所有代码编程的过程中,似乎每次都绕不开一个叫做时钟使能的东西,当时我们是在数据手册上直接看其挂接在那条时钟线上的,那么STM32内部的时钟到底是怎么一个构型呢,本文来对此做一个介绍。 时钟树 老规矩,一个新的名词出现,首先需要搞清楚它是个啥,下图中对时钟树给出了定义,STM32的时钟树是由多个时钟源和时钟分频组成的,为STM32芯片提供各种时钟信号。也就是说,在使用STM32的
8688笔记 模块基本信息 指标 参数 备注 采样率 最大500k 实测32最大开发到将近300k 分辨率 16位 精度 14-15位 大致如此,具体见数据手册 输入范围 (下面列出来 供电 5v 不是±5V 采用方式 单路采样,可以切换 我测试用的是
前言 上一篇介绍了通用定时器的输出比较部分,这一篇再来介绍一下输入捕获的相关内容。 输入捕获的概述 输入捕获,见名知意,就用来对输入信号进行捕获的,说到捕获输入信号,之前介绍过一个叫做外部中断的片上外设,它的作用也是捕获输入;它们的不同在于,外部中断捕获的只是边沿,而定时器的输入捕获,捕获的是信号的时间信息,可以用来测试脉冲宽度、高电平时间、低电平时间等,还可以利用这个输入捕获的功能来获取一
STM32F103+CubeMX+ADC采集直流 前言 本文主要讲解如何使用单片机的内部ADC去采集直流量。需要对ADC和cubemx有一定的使用经历。 所需工具: 开发板:STM32F103C8T6 STM32CubeMX IDE: Keil-MDK ADC简介 ADC(Analog-to-Digital Converter),即模拟-数字转换器,可以将连续变化的模拟
DSP的快捷添加 本人电赛现役选手一名(21年国赛后就退役了),主打模拟方向,经常使用DSP库做FFT等常规数据的处理。以前是跟着学长的教程添加的,奈何这种添加方式相对过于复杂,后来,我通过学习,掌握了一种较为简单的添加方式:通过keil添加。再后来在cubemx的不断探索中,摸索出来了一种更为快捷的添加方式。在此分享给大家。 通过cubemx添加 这个方法我愿意称之为急速。
前言 前面学习了CAN的一些理论知识,他在我们的STM32里面是怎么用的呢前面讲了一些can的知识,在STM32里是什么样的呢 一、CAN外设 1.主控制寄存器CAN_MCR DBF调试冻结:处于程序调试模式才使用。可以设置CAN处于工作模式还是禁止收发状态,禁止收发时仍可以访问接受FIFO中的数据。TTCM时间触发模式:设置CAN的时间触发通信模式。在此模式下,CAN使用它内部定时器产生
测试条件: STM32H7 杜邦线+鳄鱼夹 36M时钟,1.5cycle采样时间 100k采样速度 采集直流SDG 1032X信号发生产生的1V直流 测试过程中,让TIM去触发ADC采集100个点,通过printf打印到出口助手,观察数据,去掉极其个别噪声过大的点(毕竟是鳄鱼夹+杜邦线连接)。然后观察大部分数据的电压波动,找到最大和最小的差值。 注意这里只测量了波动,没有测量
通俗理解什么是ADC 学懂,用熟练之后,从头介绍一些概念时,总是比较困难的。很难站在一个什么都不懂的角度去讲明白一个概念。入之不深,则有浅易之病;出之不显,则有艰涩之患。 建议看完“什么是ADC”后,去实操ADC采集直流。实操结束后再往后看。ADC实际没有这么的简单,深入了解需要去学各种寄存器之间如何协作,信号如何走通。这些概念在后面会有讲解。 什么是ADC 我们在高中物理
问题描述: 最近在调试嵌入式比赛的作品,用单片机同时带动两个7606同步采集的过程中,发现采集8+3路信号的时候,后3路数据不对,当采集8+2路时正常。 查错方案: 处理速度不够 当然首先怀疑是速度不够快,我使用的条件是32k采样率,一次采集至多只能花费32us。DEBUG后,发现,实际上只用了约17us,对于32us的要求来说绰绰有余,说是快很多也毫不过分。我电赛时为了克服HAL库的缓慢
前言 上一篇介绍了关于ADC转换的相关内容,在上一篇中提到了一嘴关于DMA的内容,本文的主角就是DMA(Direct Memory Access,直接内存访问)是一种可以使外设直接访问内存的技术。 DMA概述 之前的所有代码的所有的数据传输都需要CPU参与,也就是由CPU发出指令控制数据的读写。数据量不大的情况还好,但是数据量一大,CPU就会在数据传输上花很多时间,影响系统效率,而使用DMA
前言 本文接着之前的M4系列介绍,对另外一个十分常见的通信总线进行一个介绍,就是IIC总线。 IIC概述 通信特征 首先,还是找个免费劳动力来做一个官方的介绍,下面这一段话非常全面的介绍了IIC的各个特征,用之前提到的通信特征来总结,IIC是一种串行,同步,半双工,板级有线通信。与SPI对比,其少了一个数据线,只有一个数据线,因此只能实现半双工通信。 物理拓扑结构 第二段是描述了I
一、BOOT是什么? 大多数初学者第一次接触BOOT总是对这个词感到不解,从哪冒出一个奇奇怪怪的东西还要接跳线帽,为什么要配置它才能进行串口程序的下载?为什么不正确配置会导致单片机无法正常启动……boot,及物动词,指“通过使操作系统加载到内存中启动计算机”,源自 bootstrap(动词),该动词源自 bootstrap(名词),意为“加载计算机操作系统的固定指令序列”(1953年)。那boot
一、什么是下载电路 单片机的下载电路是指用于将编写好的程序(固件)下载到单片机(微控制器)内部存储器的硬件电路。这个过程通常也被称为编程或烧录。下载电路包括与单片机的调试接口,以及相应的电路设计,确保数据可以稳定、可靠地传输到单片机的闪存或其他类型的存储器中。 二、单片机的“调试接口” 主流的调试接口主要有两种:JTAG(Joint Test Action Group) 和 SWD (Serial
一、什么是时钟信号 时钟信号(Clock Signal)是时序逻辑的基础,用于决定逻辑单元中的状态何时更新,是有固定周期并与运行无关的信号量。时钟信号有固定的时钟频率,时钟频率是时钟周期的倒数。它有只有两个电平,一是低电平,另一个是高电平。高电平可以根据电路的要求而不同,例如 TTL 标准的高电平是 5V。最常见的时钟信号的占空比为 50%,也就是说,高电平和低电平的持续时间是一样的。 STM3
一、复位 (1)什么是单片机的复位 STM32单片机的复位(Reset)是指将微控制器重置到其初始启动状态的过程。复位行为会导致所有运行中的程序终止,并将微控制器的寄存器和功能恢复到初始值。复位过程为程序提供了一个已知的起始状态,从而可以安全地开始或重新开始执行代码。STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。系统复位:当发生以下任一事件时,产生一个系统复位:(
本系列教程,将会从最基础的理论及实践开始,详尽的介绍和分析如何构建STM32F103C8T6最小系统。行文上会将最小系统分为若干模块依次介绍,将详细的分析电路拓扑结构和电路中每一个元器件在电路中的作用及其选型原因。确保读者大大们尿不湿级的享受。学嵌入式,我们一般从单片机学起。学单片机,不能只学软件,硬件知识也要跟上。软硬件相结合的设计,才是真正优秀的设计。 一、什么是最小系统? 最小系统的目的在于
B站账号:小光学嵌入式 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大二学生。 最近开始系统性补习STM32基础知识,规划有:串口通信,Github,Ucos等等。 今天总结一下串口通信之stm32-IIC。 一.原理讲解 请跳转->串口通信————UART、I2C、SPI详解(总结篇从上面的文章中,我们知道IIC的通信方式是:半双工、同步、串口通信。
0x00 往期博文 《Originbot控制器电路分析》 - 古月居 (guyuehome.com) 首先祝大家新年快乐吧,2024辞旧迎新,新年新气象。 0x01 重新了解RDK X3 旭日X3pi产品上市有一段时间了,从去年2023.1到现在2024.1,X3派社区,地平线开发者平台HHP,机器人操作系统tros.bot,包括旭日X3派也更新成了RDK X3 2.0; 但是地平线机器人开发平
B站账号:小光学嵌入式 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大二学生。 最近开始系统性补习STM32基础知识,规划有:串口通信,Github,Ucos等等。 今天总结一下串口通信之stm32-SPI。 感谢你的阅读,不对的地方欢迎指正。 一.原理讲解 请跳转->串口通信————UART、I2C、SPI详解(总结篇从上面的文章中,我们知道SPI
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信