⭐ 欢迎来到虫虫下载站!
|
📦 资源下载
📁 资源专辑
ℹ️ 关于我们
⭐ 虫虫下载站
🔐
登录
📝
注册
虫虫下载站
专业电子工程师资源平台
📤 上传资源
🏠 首页
📦 资源下载
📁 资源专辑
🔧 热门软件
⭐ 精品资源
🎓 基础知识
📐 电路图
📚 电子书
🔢 在线计算器
🔍 代码搜索
🏠
首页
›
📖 技术阅读
📖
技术阅读
工程师原创文章 · 技术经验分享 · 项目案例解析
📊 共 19889 篇文章
✍️ 原创分享
📚 持续更新
【工具篇】非常好用的在线工具
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!一、写在开头的话大家周末好呀!借这个机会说几点本公众号的规划:1、本公众号推文将在每天的七点半左右进行推送,发得比较早,推文消息可能会被其他公众号给挤掉了,喜欢本公众号内容的朋友记得置顶哟。2、周末是个放松时间,今后周末就不分享技术文章啦。会分享一些...
📅 2023-05-01
阅读全文 →
STM32串口空闲中断接收不定长数据(DMA方式)
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!在使用STM32的串口接收数据的时候,我们常常会使用接收中断的方式来接收数据,常用的是RXNE。这里分享另一种接收数据的方式——IDLE中断(PS:本文的例子运行在STM32F103ZET6上)。一、IDLE中断什么时候发生?IDLE就是串口收到一帧数据后,发生的中断。什么是一帧数据呢?比如...
📅 2023-05-01
阅读全文 →
为什么Linux内核里大量使用goto,而很多书籍却不提倡使用?
关于C语言的goto语句存在很多争议,很多书籍都建议“谨慎使用,或者根本不用”。Linux之父Linus在Linux中大量使用goto,也是在启示着我们可以合理使用goto语句。存在即合理,既然是C语言中的一个知识点,我们还是有必要学会使用。先看一些goto如何用:一、goto的基本语法goto语句有两部分:goto和标签名。标签的命名规则与变量的命名规则...
📅 2023-05-01
阅读全文 →
如何解决source insight中文乱码问题(附软件下载链接)
1、前言之前一直用source insight的3.5版本,最近换了4.0版本的,界面更好看了,也更灵活了。刚开始用,出现了一个问题,文件里的中文全都显示为乱码,如:经过查发现,File菜单栏下有另存为其他编码格式的操作,如:但是这只能修改单个文件的编码,如何修改整个工程所有文件的编码。仔细查找发现,设置工程编码的地方隐藏得挺隐蔽的,在Options-&g...
📅 2023-05-01
阅读全文 →
【RT-Thread笔记】内核对象模型
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!RT-Thread中的对象有哪些?RT-Thread包括了很多不同类型的对象,如线程,信号量,互斥量等。在代码中,这些对象被汇总到一个枚举中(在rtdef.h中):左右滑动查看全部代码>>>enum rt_object_class_type{  ...
📅 2023-05-01
阅读全文 →
易错、经典问题:return不可返回指向栈内存的指针!
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!预备知识:内存的分类C/C++程序占用的内存分为两大类:静态存储区与动态存储区。其示意图如下所示:数据保存在静态存储区与动态存储区的区别就是:静态存储区在编译-链接阶段已经确定了,程序运行过程中不会变化,只有当程序退出的时候,静态存储区的内存才会被系统回收。动态存储区是在程序运行过程中动态分...
📅 2023-05-01
阅读全文 →
数组与指针有哪些区别?
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!前言 数组与指针是不等价的,如:数组名不可以改变,而指向数组的指针是可以改变的。字符串指针指向的字符串中的字符是不能改变的,而字符数组中的字符是可以改变的。求数组长度时,借用数组名可求得数组长度,而借用指针却得不到数组长度。区别一 数组名的指向不可以改变,而指向数组的指针是可以改变的。请看如...
📅 2023-05-01
阅读全文 →
【RT-Thread】线程的基本知识
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!什么是线程?人们在生活中处理复杂问题时,惯用的方法就是分而治之,即把一个大问题分解成多个相对简单、比较容易解决的小问题,小问题逐个被解决了,大问题也就随之解决了。同样,在设计一个较为复杂的应用程序时,也通常把一个大型任务分解成多个小任务,然后通过运行这些小任务,最终达到完成大任务的目的。在裸...
📅 2023-05-01
阅读全文 →
STM32串口IAP分享
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!什么是IAP? IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。在重新编程过程中可以使用任意类型的通信协议,如...
📅 2023-05-01
阅读全文 →
STM32的ISP下载的原理是什么呢?
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!上一篇笔记分享了:STM32串口IAP分享。其中,下载IAP程序是用ISP的方式进行下载。这里的ISP又是什么呢?ISP方式下载程序原理 ISP:In System Programing,在系统中编程在STM32F10xxx里有三种启动方式:以ISP方式下载程序时需要把STM32的BOOT0...
📅 2023-04-30
阅读全文 →
在SRAM、FLASH中调试代码的配置方法(附详细步骤)
聊天界面发送嵌入式大杂烩获取1TB大杂烩资料包STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试。除此之外,SRAM 存储器的写入速度比在内部 FLASH 中要快得多,所以下载程序到SRAM中的速度较快。所以我们很有必要建立两个版本的工程配置,在SRAM中调试程序完毕后,再把...
📅 2023-04-30
阅读全文 →
把notepad++配置成一个能编译C代码的记事本
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!前言 本公众号已经不只一次提过MinGW了,往期关于C语言方面的推文中,示例代码都是用Notepad++来编写,然后用MinGW中的gcc工具来编译。MinGW的配置及使用方法:《使用Notepad++来开发C程序》。MinGW是 Minimalist GNU for Windows 的缩写...
📅 2023-04-30
阅读全文 →
STM32硬件SPI主从通信(附代码)
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!例子说明及框图本例子基于STM32F103ZET6芯片(代码工程可在文末获取),实现SPI1与SPI2的主从通信。其中SPI1配置为主机,SPI2配置为从机,均配置为全双工模式。硬件连接图:其中,我们需要注意的是,SPI的从机不能主动发送数据,只能被动应答数据。本例子的数据交互过程:主机使用...
📅 2023-04-30
阅读全文 →
STM32的复用时钟何时开启呢?
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!STM32的AFIO时钟真的是在开启引脚复用功能的时候开启吗?其实并不是~什么是复用?我们知道,STM32有很多外设,这些外设的外部引脚都是与GPIO共用的。我们可以通过软件来配置引脚作为GPIO引脚还是作为外设引脚。当引脚配置为外设引脚时就叫做复用。如串口默认复用的引脚为:PA9、PA10...
📅 2023-04-30
阅读全文 →
两块STM32之间的SPI主从通信实例(附代码工程)
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!之前分享过的 SPI 通讯实例:《STM32 硬件 SPI 主从通信》,是基于一块 STM32 的两个 SPI 通讯。如果要进行两块 STM32 之间的 SPI 通讯,需要注意一些什么呢?最近因为工作需要,要实现控制板之间的 SPI 通讯。两块 STM32 之间的 SPI 通讯平时用的比较少...
📅 2023-04-30
阅读全文 →
sizeof你真的弄明白了吗?来看看这个例子
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!sizeof基础 在C语言中,sizeof是一个操作符(operator),而不是函数!其用于判断数据类型或者表达式长度(所占的内存字节数)。其有两种表达形式:(1)sizeof(类型说明符)(2)sizeof 表达式我们通常使用第(1)种形式。其返回值类型为size_t,在头文件stdde...
📅 2023-04-30
阅读全文 →
STM32内部FLASH读写操作详解(附代码)
大家周末愉快!本次分享关于STM32内部FLASH的笔记。STM32 芯片内部的 FLASH 存储器,主要用于存储我们代码。如果内部FLASH存储完我们的代码还有剩余的空间,那么这些剩余的空间我们就可以利用起来,存储一些需要掉电保存的数据。本文以STM32103ZET6为例。STM32103ZET6属于大容量产品,其闪存模块组织如下:其主存储器大小为512...
📅 2023-04-30
阅读全文 →
频繁跳槽,这谁顶得住~
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!作为一名95后,没有个两年三跳都要跟不上队伍了~时间过得真快,转眼间三个月就过了,我在新公司转正了。今年六月份,我从原公司辞职了。从世界五百强到小公司、从机器人到芯片、从一座城到另一座城。这一跳让我的思想、工作、生活有了很大的变化,下面写个阶段性的总结,希望对一些后来者在对工作进行选择时有一...
📅 2023-04-30
阅读全文 →
STM32F429的USB是个坑?
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!最近某项目需要用到USB与CAN:拿到这样的需求,我们当然是先得保证通讯正常。于是我找了一个USB例程与一个CAN例程,分别调试验证。经过几番折腾已经保证了USB与上位机能正常通讯了,也能保证了CAN的正常收发(拿了两块开发板做验证)。两头都没有问题了,再加上一些数据处理就差不多完成了。US...
📅 2023-04-30
阅读全文 →
RT-Thread线下培训实例分享:基于i.MX RT1050的云接入
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!我们做技术的不应该只局限于技术的学习,更应该多出去走走看看。上周六(10月26日)去参加了一次RT-Thread的线下培训(免费的),这也是我第一次参加这样子的活动,现场氛围挺好的:培训中有一项动手实践环节,就是使用NXP的i.MX RT1050EVK开发板运行基础网络用例及IOT物联网云用...
📅 2023-04-30
阅读全文 →
基于Linux、C、JSON、Socket的编程实例(附代码)
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间阅读编程笔记!一、前言之前在学习socket编程的时候有分享一个基于控制台的简易天气客户端的实现,当时提供的是window下的代码,最近有几位小伙伴问有没有Linux版本的。现在就分享Linux版的代码,有需要的朋友自己下载:链接:https://pan.baidu.com/s/1wiJmdlqTwCxvJ...
📅 2023-04-30
阅读全文 →
手册在手,bug不再有,分享一个超级强大的软件
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!手册在手,bug不再有。今天给大家分享一个超级强大的软件——Zeal。Zeal是一个开源的基于Qt5设计的编程手册管理软件,可以在Linux,MacOS和Windows上使用。目前已经支持196种编程文档:官网下载链接:https://zealdocs.org/从官网可以下载软件安装包进行安...
📅 2023-04-30
阅读全文 →
这两个C运算符你可能没用过,但却很有用~
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!接上篇笔记我们分享的是RTT的PIN设备驱动:【RT-Thread笔记】IO设备模型及PIN设备,其中用到PIN驱动框架中的pin_mode函数来设置引脚的模式:void rt_pin_mode(rt_base_t pin,rt_base_t mode);这里的引脚编号pin需要和芯片的引脚...
📅 2023-04-30
阅读全文 →
【RT-Thread笔记】PIN设备中断实验
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!通用I/O的特性 通用I/O口主要特性如下:1、输入输出模式可控制。(1)输出模式一般包括:推挽、开漏、上拉、下拉。引脚为输出模式时,可以通过配置引脚输出的电平状态为高电平或低电平来控制连接的外围设备。(2)输入模式一般包括:浮空、上拉、下拉、模拟。引脚为输入模式时,可以读取引脚的电平状态,...
📅 2023-04-30
阅读全文 →
C语言、嵌入式位操作精华技巧大汇总
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!最近有点忙,好久没分享笔记了~今天分享关于位操作的一点小笔记。一、位操作简单介绍 首先,以下是按位运算符:在嵌入式编程中,常常需要对一些寄存器进行配置,有的情况下需要改变一个字节中的某一位或者几位,但是又不想改变其它位原有的值,这时就可以使用按位运算符进行操作。下面进行举例说明,假如有一个8...
📅 2023-04-30
阅读全文 →
ARM Cortex-M 系列 MCU错误代码自动追踪库的使用经验分享
大家在用STM32的时候有没有遇到过HardFault的问题呢:之前有一段时间被这个问题困扰了很久,下面针对这个问题做个小总结。现象还原:在debug模式下进行仿真调试,全速运行再停止运行,程序会跑到 HardFault_Handler函数中,产生 HardFault,即硬错。其产生的原因大概有如下几类:(1)数组越界操作;(2)内存溢出,访问越界;(3)...
📅 2023-04-30
阅读全文 →
【RT-Thread笔记】临界区问题及IPC机制
什么是临界区? 在多线程实时系统中,多个线程操作/访问同一块区域(代码),这块代码就称为临界区。例如一项工作中的两个线程:一个线程从传感器中接收数据并且将数据写到共享内存中,同时另一个线程周期性的从共享内存中读取数据并发送去显示,下图描述了两个线程间的数据传递:如果对共享内存的访问不是排他性的,那么各个线程间可能同时访问它,这将引起数据一致性的问题。例如,...
📅 2023-04-30
阅读全文 →
分享一份超棒的LittlevGL GUI资料~
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!之前有一些读者朋友让我多写一些GUI使用的笔记,由于时间很有限,暂时写不动。这不,给大家找来了一份关于LittleVGL这一款GUI的资料。LittleVGL简介 LittleVGL 是一个用C语言编写的、开源的GUI库,移植简单方便。LittleVGL 自带了丰富的控件:窗口、按键、标签、...
📅 2023-04-30
阅读全文 →
对FLASH进行分区管理,更好地存储我们的数据~
什么是分区管理 FLASH分区管理是怎么一回事呢?我们可以以个人电脑来做类比,我们的电脑通常都分有很多个盘符:这些都是我们硬盘的分区,我这里装了两块硬盘,512GB的机械硬盘+128GB的固态硬盘,共分C~H六个分区,我这里的C盘和H盘是固态硬盘,其它盘符是机械硬盘:分区是为了方便我们对我们的资料进行管理,各个分区互不影响,比如格式化某个分区只会删除这个分...
📅 2023-04-30
阅读全文 →
分享一个很酷的上位机软件~
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!本次分享一个很酷的上位机软件——伏特加。伏特加简介 伏特加是一款通用的数据调试工具,它让图形化调试变得像串口调试一样简单。通过打印字符串,或者发送十六进制数字的方式,就能完成数据的可视化操作。并且拥有强大的实时统计功能,以往需要保存数据转移到Matlab才能进行直方统计,频谱分析,有了伏特加...
📅 2023-04-30
阅读全文 →
首页
« 上一页
637
638
639
640
641
642
643
644
645
下一页 »
末页
🔐 用户登录
×
加载中...
加载登录表单中...
🎁
免费注册送10积分
×
加载中...
加载注册表单中...
🔑 找回密码
×
加载中...
加载表单中...
🔐
需要登录
×
🔒
登录后即可使用!
🎁
新用户注册立即送10积分
积分可用于下载资源,免费获取优质技术资料
🚪
退出登录
×
👋
确认要退出登录吗?
退出后需要重新登录才能下载资源