小麦大叔
这个作者很懒,什么都没留下…
展开
-
实时和非实时操作系统有什么区别?
为满足实时性与可靠性,车辆。原创 2023-11-23 12:34:25 · 1375 阅读 · 0 评论 -
提高嵌入式程序可靠性的7个常用技巧
成为一个正式的嵌入式主板开发工程师,是一个艰辛的过程,需要开发人员维护和管理系统的每个比特和字节。从规范完善的开发周期到严格执行和系统检查,开发高可靠性嵌入式系统的技术有许多种。今天给大家介绍7个易操作且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕获异常行为大有帮助。1、用已知值填充ROM嵌入式软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微...原创 2023-12-13 18:00:30 · 899 阅读 · 0 评论 -
C语言这个基础知识点,还有很多人不清楚
点击上方选择“置顶/星标公众号”福利干货,第一时间送达一、C语言内存分区C语言内存分区示意图如下:1. 栈区栈区介绍栈区由编译器自动分配释放,由操作系统自动管理,无须手动管理。栈区上的内容只在函数范围内存在,当函数运行结束,这些内容也会自动被销毁。栈区按内存地址由高到低方向生长,其最大大小由编译时确定,速度快,但自由性差,最大空间不大。栈区是先进后出原则,即先进去的被堵在屋里的最里面,后进去的在...原创 2024-03-26 18:03:27 · 220 阅读 · 0 评论 -
基础知识 | hex文件格式详解
hex文件格式总结什么是hex文件?文件格式指令类型(Record type)校验和:04 02B0 00 92020008 AE:04 0000 05 08000135 B9:00 00...原创 2020-07-04 11:11:00 · 24421 阅读 · 1 评论 -
轻松入门C语言实现有限状态机FSM
有限状态机是一种数学模型,用于描述系统在不同状态之间转换的行为。它可以看作是一个状态集合、转移集合和事件集合的组合。系统通过响应事件来改变当前状态,并根据当前状态来确定下一个可能的状态。在嵌入式系统中,有限状态机通常用于建模控制系统、通信协议、用户界面等方面。通过将系统的不同操作和行为抽象为状态,我们可以更好地组织和理解系统的逻辑。在这个例子中,我们定义了三种交通灯状态(红灯、黄灯、绿灯)和两种事件(定时器到期、按钮按下)。原创 2023-12-14 16:59:30 · 1417 阅读 · 1 评论 -
什么是单片机?聊聊它的历史
1946年2月15日,第一台电子数字计算机 ENIAC问世,这标志着计算机时代的到来。ENIAC 是电子管计算机,时钟频率虽然仅有 100 kHz,但能在1s 的时间内完成 5000 次加法运算。与现代的计算机相比,ENIAC有许多不足,但它的问世开创了计算机科学技术的新纪元,对人类的生产和生活方式产生了巨大的影响。在研制 ENIAC 的过程中,匈牙利籍数学家冯·诺依曼担任研制小组的顾问,并在方案的设计上做出了重要的贡献。原创 2023-11-21 13:00:00 · 1767 阅读 · 0 评论 -
快速搭建MQTT测试环境,手把手详细教程
如何快速搭建一个MQTT协议的测试环境,这里要合理地使用现有的工具,其实很简单,下面我们开始介绍。原创 2023-08-07 15:23:44 · 3639 阅读 · 0 评论 -
STM32的CAN总线调试经验分享
本文简单介绍了在STM32F407上的CAN总线调试过程,解决了一个数据接收的问题,简单整理了一下调试的过程和思路。原创 2023-03-21 20:49:36 · 10404 阅读 · 4 评论 -
CAN总线显性电平和隐性电平详解
程CAN 传输的两条信号线被称为 和。通电状态:(2.5V)(2.5V)或 (3.5V)、(1.5V);断电状态:CAN_H、CAN_L 之间应该有 60~62 欧电阻值,两个120 欧分别在仪表模块和后控模块中,并联后是 60 欧姆左右。CAN总线使用差分信号传输数据,这意味着每个信号线都有一个相反的信号线。这种设计可以提高抗干扰能力,从而保证数据的可靠性。和信号是互补的,也就是说,它们的电压值总是相反的。CAN总线上的信号是差分信号,这意味着数据是通过CAN_H和CAN_L信号之间原创 2023-03-20 18:35:15 · 18653 阅读 · 2 评论 -
OPC协议学习笔记
OPC协议就是上位机和PLC之间的一个桥梁,一种通讯协议原创 2022-10-24 20:33:27 · 4801 阅读 · 0 评论 -
嵌入式通用学习路线整理
合适很多人原创 2022-05-15 11:45:00 · 8301 阅读 · 3 评论 -
轻量级单片机命令行交互项目,全部开源
nr_micro_shell正是为满足这一需求,针对资源较少的MCU编写的基本命令行工具。虽然RT_Thread组件中已经提供了强大的finsh命令行交互工具,但对于ROM、RAM资源较少的单片机,finsh还是略显的...原创 2022-05-21 11:45:52 · 1475 阅读 · 0 评论 -
这种项目,最好别接!
知己知彼,百战不殆原创 2022-06-06 11:45:45 · 1116 阅读 · 0 评论 -
开发项目事半功倍,一款开源的stm32驱动库大集合
这个库里包含了很多常用的外设驱动及常用器件的驱动:USART、I2C、SPI、ADC、DAC、RTC、USB、PWM、ILI9341、MPU6050等。原创 2022-05-30 11:45:33 · 3121 阅读 · 0 评论 -
又一开源神器,值得收藏学习!
大家好,我是小麦。今天给大家推荐一个不错的Qt开源项目支持传统的串口调试助手的基本收发功能,同时可以刷新大量的数据而不卡顿支持保存接收的数据支持最大200条可编辑指令的设置,并用于多条发送支持定时器发送支持换行符替换时间戳功能支持较多的中文编码格式值得注意的是支持Linux简单的串口调试支持加载csv表格数据到200条可编辑指令支持部分窗口配置的保存和重启恢复(前提是你不会删除配置文件)支持自定义协议,IMU姿态显示支持虚拟串口示波器进入下载界面,这里支持两种风格,和;这是软件两种不同的主题,通常我喜欢暗黑原创 2022-06-13 11:45:20 · 1919 阅读 · 1 评论 -
Modbus协议简易入门教程
大家好,我是小麦,以前写过一篇文章是关于modbus协议的,只是简单地做了一下介绍,这次对于modbus RTU协议进行了深入的学习。背景介绍modbus rtu之前,我们可以了解到,Mo...原创 2021-12-27 12:12:00 · 7326 阅读 · 0 评论 -
芯片在显微镜下,有哪些不为人知的秘密?
大家好,我是小麦,又到周五了,今天我们一起看看,显微镜下的芯片艺术。什么是芯片艺术?芯片艺术,也称为硅艺术、芯片涂鸦或硅涂鸦,是指内置于集成电路(也称为芯片或 IC)中的微观艺术作品。由于...原创 2021-12-24 12:12:00 · 4081 阅读 · 1 评论 -
CAN总线简易入门教程
点击加入技术交流群文章目录什么是CAN总线?物理层差分信号连接方式CAN节点CAN协议如何寻址?帧类型数据帧远程帧错误帧过载帧消息时序以及同步位时序波特率消息过滤器如何配置?总结参考大家好,我是小麦,最近在调试一个CAN总线的设备遇到一些问题,简单总结一下。本文会对CAN总线进行简单介绍,CAN的硬件链路层,协议层,以及调试的一些心得。什么是CAN总线?Controller Area Network,简称CAN或者CAN bus) 是一种功能丰富的串行总线标准,最早的CAN控制芯片在奔驰车上应用并量原创 2021-12-01 18:33:50 · 17822 阅读 · 6 评论 -
已经学过51单片机,如何进阶?我来教你
单片机开发新手如何进阶?原创 2021-11-18 08:47:43 · 5152 阅读 · 9 评论 -
推荐一个直接用于项目开发的PID库!很好用,很稳定
关注、星标公众号,不错过精彩内容大家好,我是小麦。最近有朋友问到有没有现成的C语言PID库。当然有了!现在我就准备给大家安利一下了。一般同学会去某度上搜,看到各种各样版本的PID示例,或者...原创 2021-08-09 21:20:50 · 8434 阅读 · 17 评论 -
你需要知道RTOS应用程序设计的5个技巧
大家好,我是小麦,今天聊一下RTOS应用程序设计的五个实践技巧。我在编写RTOS应用程序的过程中,经常会遇到这些困难,包括正确确定系统中有多少任务、如何设置优先级、协调任务行为、避免常见陷阱,有时只是为了让应用程序正常工作!如今,近三分之二的嵌入式系统使用 RTOS,而且随着系统的时序要求变得越来越复杂,这个数字只会随着时间的推移而增加。在今天的文章中,我们将研究设计基于 RTOS 的应用程序的五个最佳实践技巧。任务分解首先我们可以遵循的第一个最佳实践技巧就是使他们的 RTOS 应用程序开发成功,是使原创 2021-07-14 20:10:53 · 2488 阅读 · 5 评论 -
MQTT协议,终于有人讲清楚了
大家好,我是小麦,最近做了一个物联网的项目,顺便总结一下MQTT协议。大家都知道,MQTT协议在物联网中很常用,如果你对此还不是很了解,相信这篇文章可以带你入门。mqtt协议1 MQTT协...原创 2021-07-05 19:36:00 · 134681 阅读 · 76 评论 -
BLDC驱动入门最简教程
大家好,我是小麦,前段时间,接手做了一个项目,是基于BLDC的无感方波驱动的一个产品,在这里顺便总结和分享一下BLDC的驱动原理。首先什么BLDC?**BLDC(brushless DC electric motor)**全称是无刷直流电机,这里就不得不说一下有刷直流电机,然后带着问题再看什么是直流无刷电机。有刷直流电机发明于 19 世纪,现在应用仍然很普遍,相比较于无刷直流电机,它的结构更加简单,通常电机内部结构的组件都包括转子和定子;转子就是旋转的;定子就是固定的;然后其中一个可能是永磁原创 2021-07-01 15:55:14 · 5401 阅读 · 3 评论 -
一个超赞的开源串口虚拟示波器项目,玩起来!
大家好,我是小麦,趁着今天休假,给大家推荐一个开源的串口虚拟示波器项目,可以实时显示串口传输的数据,非常直观,当然也可以做二次开发,非常的灵活。基本功能双击放大项目地址:https://g...原创 2021-04-30 18:30:00 · 4338 阅读 · 19 评论 -
写了这么多年代码,开源协议你确定自己真的知道吗?
大家好,我是小麦,今天和大家分享一些开源协议的知识。这些协议缩写词在各种代码、文档中随处可见,比如GPL、BSD、MIT、Mozilla、Apache和LGPL等等。github新建仓库时协议选择这么多协议,我们了解的有多少呢?作为一名专业的嵌入式系统开发人员,了解这些开源协议是一种基本素养,特别是当你自己要开源一些东西的时候该如何选择开源协议就变得非常重要了!下面对常见的几种做一下简单的介绍。开源协议的作用开源协议规定了你在使用开源软件时的权利和责任,也就是规定了你可以做什翻译 2021-04-28 08:29:13 · 1044 阅读 · 0 评论 -
一款超级好用的虚拟示波器软件
前言大家好,我是小麦在往期的文章中,曾经介绍过PWM,SPWM,还有SVPWM的实现,另外还有PID输入输出的时间响应;对不同滤波算法的测试,这些如果只通过单纯的数据就变得十分的不直观;这...原创 2021-03-10 08:35:00 · 8351 阅读 · 14 评论 -
编码器基础知识大扫盲
如何测量旋转量和旋转速度?在我们的日常生活中,周围有各种精密仪器和电子设备。比如家用电器,工业机器人以及其他一些机器,这些设备的基本配置如下。检测设备运动和状态的传感器;控制器根据传感器的信号进行判断和处理;根据控制器处理的信息移动设备的执行器;为了快速,准确地控制这些设备,必须检测设备的运动状态。因此,使用称为编码器的传感器来检测旋转角度,移动距离和旋转/移动速度。那么什么是编码器呢?什么是编码器?编码器是对旋转角度和线性位移进行编码的传感器。检测旋转的编码器称为旋转编码器,检原创 2021-02-22 18:03:55 · 5515 阅读 · 1 评论 -
到底什么是串级PID?
什么是串级PID?什么是串级PID?顾名思义就是两个串起来的PID,下面是一个双闭环的例子,外环是位置环,内环是速度环,最终的执行器是电机,电机输出产生了速度和位置;具体框图如下图所示;当然执行器也可以是四轴飞行器,整体过程如下:我们在外环给定相应的位置高度,外环PID的输出就是内环PID的期望值;内环PID的输出将产生相应的油门大小,最终飞行器会产生上升的速度;内环反馈值为速度,控制相应的速度达到外环所需的速度期望值;最终外环达到期望的位置;可能这里比较抽象,好吧,下面继续细化一下硬件原创 2021-02-20 17:48:19 · 7489 阅读 · 1 评论 -
开源飞控的现状
无人机能被快速普及,很大程度上是得益于开源飞控的发展,因为困扰着无人机发展的关键设备是自动驾驶仪。那么,开源飞控是什么?又是如何发展过来的?在纷繁复杂的无人机产品中,四旋翼飞行器以其结构简单、使用方便、成本低廉等优势,最先进入了大众的视线。但是,这种飞行器对飞行控制能力的要求是最高的,因此它刺激了大批基于MEMS传感器的开源飞控的出现。如何定义开源开源(Open Source)的概念最早被应用于开源软件,开放源代码促进会(Open Source Initiative)用其描述那些源码可以被公众使用的原创 2021-02-19 08:15:26 · 7561 阅读 · 1 评论 -
曲终人散!再见AD!
前言解释一下每次拖更一段时间,都会写一下前言,解释一下拖延的原因;大部分是因为懒,但是这次确实不是;前段时间看志辉大神的视频(当然了,我也是百万粉丝中的其中一个);视频很多,就是看完也让我产生了很多想法的那种;然后想Copy一下,自己简单实现一下;最开始的想法是想复制一个轮子,简单学习一下就好;但是想得太多之后,发现自己想做的是这样的轮子;在最后做成了箱子;言归正传因为我很早就接触过Altium Designer,所以一定程度上还是可以熟练使用这个软件的;但是传闻开源的Kicad不原创 2021-01-07 10:04:28 · 3894 阅读 · 3 评论 -
深入浅出H桥驱动电路
什么是H桥?H桥是一个比较简单的电路,通常它会包含四个独立控制的开关元器件(例如MOS-FET),它们通常用于驱动电流较大的负载,比如电机,至于为什么要叫H桥(H-Bridge),因为长得比较像字母H,具体如下图所示;这里有四个开关元器件Q1,Q2,Q3,Q4,另外还有一个直流电机M,D1,D2,D3,D4是MOS-FET的续流二极管;开关状态下面以控制一个直流电机为例,对H桥的几种开关状态进行简单的介绍,其中正转和反转是人为规定的方向,实际工程中按照实际情况进行划分即可;正转通常H桥用来驱动原创 2020-12-30 08:03:45 · 6537 阅读 · 1 评论 -
SD卡的SDIO模式/SPI模式设计扫盲
SDSD卡(secure digital card)是SD卡协会开发的低成本,非易失性存储卡格式(相比较于RAM,SD卡掉电数据不丢失);随着本世纪电子技术的高速发展,对于这种中等型号,节能、节省空间的存储器设备的需求一直在快速增长;SD卡具有SDHC的速度等级,范围为2级(以2 MB / s的速度运行),4级(以4MB / s的速度运行),6级(以最高6 MB / s的速度运行)和10级(以最高的速度运行) 10 MB /秒 SDXC卡以“超高速”类运行,并以最高30 Mb/s的速度运行。还有视频原创 2020-12-28 12:28:45 · 13885 阅读 · 9 评论 -
PID系统稳定性和零极点的关系
背景PID是十分优美的控制算法,在工业控制应用地十分广泛,有的时候,无需知道系统模型的情况下,只要调整参数P、参数I和、参数D就可以到达期望的控制效果;不过之前一直停留在把系统当作黑盒的方式进行调试,根据系统的时间响应判断是否达到期望的效果;以前参与无人机研发的时候,我们遇到一个问题,外部的扰动会把飞控激励起来造成机身的振动;要解决掉的话,如果调飞控,又会对云台造成影响,最终航拍效果不太好;我们尝试了很多工程方法,花了大量时间,都无法解决;这个项目看样子是要黄了;后来飞控负责人和云台负责人激烈原创 2020-12-27 20:45:36 · 4581 阅读 · 0 评论 -
我的单片机成长之路
谁给你的勇气?原创 2020-12-22 18:57:45 · 2479 阅读 · 5 评论 -
SPWM基本原理详解(图文并茂+公式推导+C程序实现)
SPWM简单实现原创 2020-12-09 08:29:20 · 119570 阅读 · 36 评论 -
详解舵机的基本原理以及控制方法
文章目录什么是舵机?伺服控制硬件连接舵机规格SG90MG90SMG996R总结什么是舵机?舵机是伺服电机的一种,伺服电机就是带有反馈环节的电机,我们可以通过伺服电机进行精确的位置控制或者输出较高的扭矩;舵机也叫也叫 RC 伺服器,通常用于机器人项目,也可以在遥控汽车,飞机等航模中找到它们。类似舵机这样的伺服系统通常由小型电动机,电位计,嵌入式控制系统和变速箱组成。电机输出轴的位置由内部电位计不断采样测量,并与微控制器(例如STM32,Arduino)设置的目标位置进行比较;根据相应的偏差,控制原创 2020-12-05 08:23:47 · 45218 阅读 · 11 评论 -
SPI协议详解(图文并茂+超详细)
先说串口因为之前写过一篇UART,通用串行异步通讯协议,UART的相关资料因为UART没有时钟信号,无法控制何时发送数据,也无法保证双发按照完全相同的速度接收数据。因此,双方以不同的速度进行数据接收和发送,就会出现问题。如果要解决这个问题,UART为每个字节添加额外的起始位和停止位,以帮助接收器在数据到达时进行同步;双方还必须事先就传输速度达成共识(设置相同的波特率,例如每秒9600位)。传输速率如果有微小差异不是问题,因为接收器会在每个字节的开头重新同步。相应的协议如下图所示;如果您注意到原创 2020-11-03 01:23:31 · 286610 阅读 · 102 评论 -
当心!别又踩了大小端的坑
程序运行在内存中,计算机中的最小存储单位是Bit,即1和0的二进制,它可以识别的机器码就是以二进制形式存储的;内存由多个存储单元组成,每个存储单元都有一个唯一的数字地址字节可寻址内存。每个存储位置可以包含固定数量的二进制数字。在大多数的现代计算机上,地址的最小数据的长度为8位,称为字节(1 Byte = 8 Bit);一般计算机中用户程序直接访问的地址是虚拟内存的地址,操作系统内核会根据用户程序访问的虚拟地址,找出页表中对于的物理地址,最终寻址到所需要的数据原创 2020-10-28 20:33:55 · 3441 阅读 · 0 评论 -
I2C协议靠这16张图彻底搞懂(超详细)
I²C(Inter-Integrated Circuit),中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,是由飞利浦公司在1980年代初设计的,方便了主板、嵌入式系统或手机与周边设备组件之间的通讯。由于其简单性,它被广泛用于微控制器与传感器阵列,显示器,IoT设备,EEPROM等之间的通信。原创 2020-10-20 20:34:47 · 72110 阅读 · 17 评论 -
UART协议快速扫盲(图文并茂+超详细)
快速了解一下UART原创 2020-10-14 21:51:18 · 32810 阅读 · 12 评论