问题描述: 最近在调试嵌入式比赛的作品,用单片机同时带动两个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
B站账号:小光学嵌入式 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大二学生。 最近开始系统性补习STM32基础知识,规划有:串口通信,Github,Ucos等等。 今天总结一下串口通信之stm32-USART。 一.原理讲解 请跳转->串口通信————UART、I2C、SPI详解(总结篇 二.USART和UART的区别 UART:universa
引言 在微控制器编程中,PWM(脉冲宽度调制)是一种重要的技术,它可以用于模拟模拟信号,控制LED亮度,驱动电机,以及生成音频信号等。ESP32是内置了一个高级LEDC(LED PWM Controller)硬件,用于产生高精度的PWM信号。本文将详细介绍ESP32的LEDC功能,包括其工作原理,编程方法,以及应用实例。 LEDC基础 LEDC是ESP32特有的一个硬件PWM控制模块。与传统的PW
一、概念介绍 1.1什么是单片机的启动流程 单片机的启动流程指的是单片机从上电或复位后到开始执行用户代码的一系列初始化步骤。不同的单片机的启动流程有其特定的细节,但大多数单片机的启动流程都遵循一个通用的模式。通用启动流程: 上电或复位:当单片机接通电源或被复位时,启动流程开始。复位可以是软件触发的,也可以是通过复位引脚进行的硬件复位。 执行内置启动代码:单片机首先执行存储在内部 ROM 中的固件
ODDR原语 例化模板: ODDR #( .DDR_CLK_EDGE("OPPOSITE_EDGE"), // "OPPOSITE_EDGE" or "SAME_EDGE" .INIT(1'b0), // Initial value of Q: 1'b0 or 1'b1 .SRTYPE("SYNC") // Set/Reset type
起因 因为在学习PID算法,程序里并不能很好的展示调参效果,于是使用VOFA+,伏特加上位机软件来调试PID,可以很好的展示各个数据的直观曲线形式,特别适合数据变化较大的数据进行直观显示。 我们在下位机(单片机里进行调节参数),在上位机里查看数据变化的曲线,根据曲线进行动态调节参数,从而达到我们的目的 本文以调节PID位置式,以PID速度环闭环调试参数为例,来给大家带来如何使用VOFA+软件
串口-RAM-VGA系列知识分享:(0)串口通信实现-串口接收(1)VGA成像原理与简单实现(2)VGA显示板级验证(3)VGA显示-多分辨率输入(4)串口发送+RAM+VGA传图 前言 本文使用串口发送模块发送数据存储到RAM中,通过RAM读取数据传输图片给TFT显示屏。 提示:以下是本篇文章正文内容,下面案例可供参考 一、结构总体设计 1.UART_RAM_TFT总体设计草图
硬知识PWM(脉冲宽度调制)摘自百度百科。 基本原理控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等但宽度不一致的脉冲,用这些脉冲来代替正弦波或所需要的波形。按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。(SPWM)例如,把正弦半波波形分成N等份,就可把正弦半波看成由N个彼此相连的脉冲所组成的波形。这些脉冲宽度相等,都等于 π/n ,
目录 源码 FFT.c FFT.h 使用方法 效果 其他部分的代码 main.c 普中51-单核-A2STC89C52Keil uVision V5.29.0.0PK51 Prof.Developers Kit Version:9.60.0.0 算法来自FFT算法的使用说明与C语言版实现源码 —— 原作者:吉帅虎 速度更快的版本见C语言实现的FFT与IFFT
Windows 10 20H2Proteus 8 Frofessional v8.9 SP2Keil uVision V5.29.0.0PK51 Prof.Developers Kit Version:9.60.0.0 新建工程 设置名称和路径 下一步 下一步 选择系列、控制器和编译器 双击MCU设置主频 调试 这里以点灯为例 在Proteus中编写程序 编辑源文件 /* Main.c fi
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信