自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 IPC进程间通信 —— 信号

前面几篇的TCP、UDP协议的socket主要为跨设备进行数据交换的网络通信,而本篇则将介绍单机系统内多进程间协作的进程间通信IPC(),由于IPC主要分为管道,消息队列,信号量,共享内存,信号,套接字(绑定本地ip),因此本篇主要对单工的信号进行详解。

2024-10-09 15:56:39 319

原创 S/C模型(下),利用UDP、TCP协议和多线程、多路复用实现server的局域网搜索响应与定向实时通信连接

在正式开始server构建流程之前,先介绍c语言的预定义宏这一优化功能,虽然现在的代码和流程量不足以完全发挥它的性能,甚至没必要使用,但当工程量复杂起来它的作用就越发重要,在后期的日志系统我们也会更加频繁的见到它。那么预定义宏是什么呢?预定义宏是编译器在编译过程中自动定义的特殊标识符,它们提供了关于编译环境、编译时间、文件信息等的内置信息,无需#define而可以直接使用,这些宏通常用于调试、日志记录、条件编译等场景函数名称 : errorposition功能描述 : 在报错时调用,打印报错的具体信息。

2024-09-20 19:29:12 986

原创 S/C模型(上),利用UDP广播,TCP协议和多线程实现client的局域网设备搜索与实时通信连接

至此,S/C模型的Client部分就完成了,那么为什么要选用UDP来进行设备搜索呢?因为UDP不需要建立连接和确认(可类比TCP的三次握手),且能以点对多发送广播数据,使设备搜索变得简单,快速而高效。那为什么要选用TCP来进行数据通信呢?因为TCP 保证了数据包的完整可靠和有序交付,如果数据包丢失,TCP 会重新发送丢失的数据包,确保数据按顺序、完整无误地到达目的地。最后多线程的作用又是什么呢?

2024-09-06 16:49:05 617 1

原创 调用GPIO引脚与SDK的sample代码实现开发板的音频录制与播放

GPIO是通用输入/输出引脚(General Purpose Input/Output)的缩写,是嵌入式系统中的一种常见引脚类型。GPIO的作用是允许CPU与外部设备进行通信,实现数据的输入和输出。通常情况下,这些引脚是可编程的,可以在软件层面上配置它们的功能。GPIO在嵌入式系统中的作用类似于PC上的USB接口或串口本篇主要介绍了如何调用GPIO引脚与SDK的sample代码实现开发板的音频录制与播放,还利用gpio进行了简单的LED灯测试。

2024-08-07 15:37:02 1014

原创 自动生成依赖与自动删除除了指定文件外的所有文件

make后修改的依赖文件ma.d内容展示:效果展示(修改头文件,更新机制依旧触发): 代码展示(不完美):效果展示(保留hello.c和Makefile):如何进行多目录自动查找、自动生成依赖的编译?为什么上述自动删除除了指定文件外的所有文件的代码没能删除'新建 'DOC Document.doc' 和 '新建 PPT Presentation.ppt' ?如何使代码完美?

2024-08-01 10:05:57 296

原创 一个示例代码包含所有类型变量,并注解各类型变量的内存存放区域及特性

【代码】一个示例代码包含所有类型变量,并注解各类型变量的内存存放区域及特性。

2024-07-31 16:38:35 117

原创 利用makefile实现多目录编译的三种方式

本篇主要讲了利用makefile实现多目录编译的三种方式,属于较为基础的部分,其实我本来还想写自动生成依赖部分的,奈何我实力有限,自己也一知半解,有兴趣可以去试一下。对于刚接触makefile的新手来说,我这边推荐一个写的非常好的教程网站,这是真大佬其中 自动生成依赖 部分也是从他这儿看到的,大家去他那边学的话应该能收获更多。

2024-07-30 15:12:42 646

原创 利用交叉编译链在开发板运行程序

本篇主要交叉编译链的配置和使用的大体流程,其中也遇到了因为动态链接库错误而导致运行失败的问题,好在都迎刃而解。我们主要还是要了解开发板的各种配置,以及我们在编译代码时的指令没必要为图方便简写,有时一些大错误也往往是简写不当造成的。

2024-07-29 20:37:06 1150

原创 利用tftp实现开发板与Linux服务器的文件传输

本篇主要介绍了如何利用tftp实现开发板与Linux服务器的文件传输。其中要注意的点便是守护进程配置文件的下划线不要忘了,当然还有别输错了其中的WiFi账号密码,其次便是Busybox的tftp语法与Bash上的语法有些差异,用习惯Bash的tftp可能需要时间适应一下。最后留个问题,如何只用服务器的tftp对开发板进行文件传输呢?( ̄_, ̄ )

2024-07-29 11:32:04 1135

原创 USB转串口设备实现PC端与开发板连通

本文主要讲解了USB转串口设备实现PC端与开发板连通的过程以及一些会遇到的问题,其中要注意的点便是杜邦线的收发引脚连接要对应以及串口的端口号,波特率等各种基础属性也要对应。

2024-07-26 17:47:41 1686

原创 映射网络驱动器实现windows与Linux文件传输

本文主要讲了Samba的安装和网络驱动器的映射,其中要注意的点便是两系统的防火墙都可以关闭,然后便是window和Linux表示路径用的斜杠与反斜杠的区别,不要弄混了。sudo ufw status #查看防火墙状态sudo ufw disable #关闭防火墙还有如果共享文件夹不能打开或创建文件,大多是权限问题,找到Linux相应路径chmod 777就好。流程如此, 但实际上仍会因为设备的不同遇到各种问题,到时就再找相应解决办法吧。

2024-07-25 22:04:28 472

原创 VS code远程连接Linux服务器/本地虚拟机并实现免密登录

在学习或工作的初期,我们往往要登录远程服务器/虚拟机的终端来进行操作,但每次启动Xshell/VMware进入终端后还要再启动xftp进行文件传输,最后再VS code来启动编写代码,这一套对于我们新手来说就显得很多余,而且每次登录远程终端还要再输入一遍密码就挺烦的,那么能不能利用VS code远程连接Linux服务器/本地虚拟机并实现免密登录呢?当然可以。

2024-07-21 21:44:35 1303

原创 将两个有序顺序表合并为一个新的有序顺序表,并由函数返回结果顺序表。

【代码】将两个有序顺序表合并为一个新的有序顺序表,并由函数返回结果顺序表。

2023-12-04 21:15:55 102

原创 删除顺序表最小元素

题目:从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位置由最后一个元素填补,若顺序表为空,则显示出错误信息并退出运行。

2023-11-16 17:29:08 159 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除