首页
学习
活动
专区
工具
TVP
发布

wenzi嵌入式软件

专栏作者
86
文章
115871
阅读量
19
订阅数
keil分散加载文件浅析
分散加载文件(scatter file)是一个文本文件,它的作用是可以用于描述 ARM 链接器生成映像文件所需要的信息。 如果不使用 scatter file 文件来指定,那么 ARM 链接器会按照默认的方式来生成映像文件,但是对于某些应用场景来说,我们希望能够将一些数据放在指定的位置,这个时候,分散加载文件就发挥其作用了。
wenzid
2022-11-11
9330
C++ 序列式容器总结
C++ STL 是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法,关于 STL 呢,下面通过一个系统框图来对其进行一个总结:
wenzid
2021-09-08
8970
C语言库函数 memcpy 和 memmove 的区别
memcpy和memmove都是 C 语言的库函数,相比于 strcpy和 strncpy只能针对于字符类型的数组(),这两个函数可以拷贝其他类型的数组,对于 memcpy和 memmove的区别是什么呢?这里,在 Linux 里通过 man命令查看两个函数的区别,查询的结果如下所示,首先是 memcpy函数的阐述。
wenzid
2021-08-13
3K0
万变不离其宗之I2C总线要点总结
[导读] 前文总结了单片机串口个人认为值得注意的一些要点,本文来梳理一下 I2C 总线的一些要点。这个题目有点大,本文对于 I2C 其实很多地方也没整清楚,只为了与前文形成系列,如果大家有补充欢迎留言。说了些闲话,进入正题吧。
wenzid
2021-08-13
1.9K0
TCP 和 UDP 的区别及流量控制,拥塞控制,快重传,快恢复算法详解
在上一则文章中,对 TCP 的三次握手建立连接和四次挥手释放连接进行了详细地阐述,本节教程针对于 TCP 的其他内容进行讲解,首先是同处于传输层协议的UDP协议,这两者有什么区别与联系呢?
wenzid
2021-08-13
1.5K0
单链表知识详解
在学习数据结构的时候,最开始接触到的一种数据结构就是线性表,对于线性表的定义是:零个或多个数据元素的有限序列,那对于线性表来讲,又分为顺序存储结构和链式存储结构,对于顺序存储结构来说,也就是数组,数组的每个元素之间的地址是连续的;对于链式存储来说,也就是平常所说的链表,链表每个元素之间的地址并不是连续的,而是分散的,他们之间的联系通过结点的 next 指针来建立。本文尽可能地将链表的知识详细地叙述,所涉及的链表类型包括:单链表,双链表,循环链表,每个链表的操作涉及到创建链表,删除链表,插入链表结点,删除链表结点。
wenzid
2021-08-13
3900
使用FreeRTOS要好好理解任务状态机
前面一文利用FreeRTOS点灯,算是将FreeRTOS给跑起来了,要用好RTOS,从黑盒角度去理解一下调度器是怎么工作的是很必要的,当然如果想研究其内部实现原理,可以去读其内部实现代码,但是个人感觉如果是从用的角度,把内核看成黑盒,跳出来梳理一下概念也很有用。
wenzid
2021-08-13
1.1K0
Linux-C编程 / 多线程 / 一个简洁可靠的线程池实现
哈喽,我是老吴,我又来分享学习心得了。另外,为了更好地体现公众号的核心价值观,从本文开始,我会在文末新增分享一些非技术相关的内容,欢迎大家参与讨论。
wenzid
2021-07-20
2K0
Linux进程通信之管道解析
管道是 UNIX系统 IPC的最古老的形式,所有的UNIX系统都提供此种通信。所谓的管道,也就是内核里面的一串缓存,从管道的一段写入的数据,实际上是缓存在内核中的,令一端读取,也就是从内核中读取这段数据。对于管道传输的数据是无格式的流且大小受限。对于管道来说,也分为匿名管道和命名管道,其中命名管道也被叫做 FIFO,下面则分别阐述这两种管道。
wenzid
2021-07-20
1.3K0
MQTT协议,终于有人讲清楚了
大家好,我是小麦,最近做了一个物联网的项目,顺便总结一下MQTT协议。大家都知道,MQTT协议在物联网中很常用,如果你对此还不是很了解,相信这篇文章可以带你入门。
wenzid
2021-07-20
2.4K0
TCP "三次报文握手,四次报文挥手"详解
TCP 中文又被称之为传输控制协议,它是一种面向连接的、可靠的、基于字节流的传输层通信协议。这个特性的解释如下:
wenzid
2021-07-20
1.2K0
RTOS 上微秒级延时方案
一般 RTOS 系统时钟 1KHz 的情况下,thread_sleep() 的最短时间是 1ms。在实时控制中有些情况需要微秒(us)级延时,这该怎么办呢?
wenzid
2021-07-20
4.2K0
说一说 Linux 进程控制
在上一则发表的关于 Linux 的文章中,叙述了 Linux 的相关概念,其中就包括进程的资源,进程的状态,以及进程的属性等相关内容,在本则教程中,将着重叙述 Linux 进程管理的内容,其中就包括 Linux 进程的创建,进程的终止,进程的等待相关内容。
wenzid
2021-07-20
5590
图文详解Modbus-RTU协议
[导读] 大家好,我是逸珺,前面总结了一下RS-485的一些要点,今天来总结一下Modbus-RTU协议,原本想把实现思路也一起发出来,但是感觉太长了,就拆开了。
wenzid
2021-07-20
2.2K0
Linux进程概述
进程是 Linux 事务管理的基本单元,所有的进程均拥有自己独立的处理环境和系统资源。进程的环境由当前系统状态及其父进程信息决定和组成,将某个可执行文件加载到内存中运行,那么就会演变成一个或者是多个进程。(产生多个进程的原因是进程在运行的时候可以再创建新的进程,但是加载的时候只有一个进程),为了更好的理解进程,以我们平时在 Linux 环境下运行一个 C 程序为例进行说明: 代码很简单,hello world:
wenzid
2021-07-20
3.1K0
带你认识一下 ARM Cortex-M 阵营
笔者接触嵌入式领域软件开发已近五年,几乎用的都是 ARM Cortex M 内核系列的微控制器。在这五年期间,感谢 C 语言编译器的存在,让我不用接触汇编即可进行开发,但是彷佛也错过了一些风景,没有领域到编译器之美和 CPU 之美,所以决定周末无聊的休息时间通过寻找资料、动手实验、得出结论的方法来探索 ARM CPU 架构的美妙,以及 C 语言编译器的奥秘。(因为我个人实在是不赞同学校中微机原理类课程的教学方法)。
wenzid
2021-06-21
1.9K0
Linux文件系统解析
在计算机出现之前其实就有文件系统的概念了,此时的文件系统指的是用于管理(存储和检索)纸质文件的系统,而在计算机发明之后,文件系统逐渐指的是管理存储介质的系统,它通过简单的接口给用户,方便用户使用存储设备。
wenzid
2021-06-21
6.8K0
Linux文件系统浅析
在计算机出现之前其实就有文件系统的概念了,此时的文件系统指的是用于管理(存储和检索)纸质文件的系统,而在计算机发明之后,文件系统逐渐指的是管理存储介质的系统,它通过简单的接口给用户,方便用户使用存储设备。
wenzid
2021-06-06
3.1K0
适合具备 C 语言基础的 C++ 教程(十五)
在上一则教程中,叙述了当处于多线程环境下时,智能指针所指向的引用计数可能会因为此导致引用计数出问题,因此,引入了原子操作的相关概念,换句话说,这种操作也被称之为是轻量级指针,那对于这种轻量型指针又会存在什么问题呢?本节内容将着重叙述这个问题。另外需要注意的是,关于最近几次的内容互相之间都是息息相关的,需要结合上下文进行理解,同时,因为涉及到的代码比较多,如果哪里没有说明白的地方,需要下载对应的源代码进行对照分析。好了,接下来,进入本次内容的分享。
wenzid
2021-03-22
4560
与优秀的人一同前行
与优秀的人一同前行,自己也会变得更加优秀,变得更加自律,今天,笔者就推荐几个高质量公众号,非常硬核,希望能够帮助大家在技术中得到更好地提升。
wenzid
2021-03-22
1.1K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档