- 博客(35)
- 问答 (1)
- 收藏
- 关注
原创 常用数据结构与算法—哈希表
哈希表是根据关键码的值而直接进行访问的数据结构,数组就是一张哈希表。一般哈希表都是用来快速判断一个元素是否出现集合里。
2024-03-18 19:12:47 422 1
原创 常用数据结构与算法—链表
链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思),链表的入口节点称为链表的头结点也就是head。给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。删除链表中等于给定值 val 的所有节点。
2024-03-16 09:46:07 521
原创 嵌入式linux项目介绍与分享-基于 Linux 下 Socket 网络编程的局域网聊天室
本项目是基于 Linux 下 Socket 网络编程的局域网聊天室,实现了账号注册与登录、私聊消息、群发消息、发送离线消息、查看聊天记录、修改昵称密码等功能,并设置管 理员,实现将用户禁言、解禁、踢出聊天室等,采用多线程并发服务器模型处理多个客户端的同时连接和请求,服务器创建并管理用户数据、在线用户数据、聊天数据、离线消息数据等 SQlite 数据库,并提供后台服务,客户端通过 TCP 协议建立与服务器的稳定连接,并通过格式化输入输出实现与用户的交互。
2024-03-13 14:42:14 1815 1
原创 3.12-嵌入式软件实习生-面试记录
链表定义灵活不需要再定义时确定成员变量使用链表可以充分地利用内存空间,在合适的时候可以释放空闲内存在同一个链表上,所有包含链表节点的数据类型不是必须一致的,但是为了正确性和安全性,通常设置相同的数据类型可以将链表节点嵌入到数据结构体中,便于索引该结构体。
2024-03-13 14:27:06 520
原创 嵌入式数据库SQlite3-进阶篇
下面列出了一些有用的 SQLite 内置函数,且所有函数都是大小写不敏感,这意味着您可以使用这些函数的小写形式或大写形式或混合形式。HAVING子句中能够使用三种要素:常数,聚合函数,GROUP BY子句中指定的列名(聚合建), 用having就一定要和group by连用, 用group by不一有having(它只是一个筛选条件用的)大家会看到,前一条语句列出来的是所有的记录,而后一条记录列出来的是name字段中含有“明”的记录,所以说,当我们作字符型字段包含一个子串的查询时最好采用“%”而不用“
2024-03-12 15:11:18 1455 1
原创 嵌入式数据库SQlite3-基础篇
数据在实际工作中应用非常广泛,数据库的产品也比较多,oracle、DB2、SQL2000、mySQL;基于嵌入式linux的数据库主要有SQLite, Firebird, Berkeley DB, eXtremeDB。本文主要讲解数据库SQLite,通过这个开源的小型的嵌入式数据库带领大家掌握一些基本的数据库操作,这些操作在很多系统中都是通用的,可谓学一通百。SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。作者D.RichardHipp。
2024-03-12 11:16:33 1044
原创 嵌入式面经-ARM体系架构-ARM体系结构理论基础
指令能够指示处理器执行某种运算的命令称为指令指令在内存中以机器码(二进制)的方式存在每一条指令都对应一条汇编程序是指令的有序集合指令集处理器能识别的指令的集合称为指令集不同架构的处理器指令集不同(比如ARM与X86)指令集是处理器对开发者提供的接口arm指令集arm指令集:所有指令(机器码)都占有32bit(4字节)存储空间thumb指令集:所有指令(机器码)都占有16bit(2字节)存储空间。
2024-03-11 20:19:58 520
原创 嵌入式面经-ARM体系架构-计算机基础
操作系统的作用:向下管理硬件,向上提供接口(API)应用开发:使用操作系统提供的接口(API),做上层的应用程序开发,基本不用去关内核操作硬件是怎么实现的底层开发:做操作系统本身的开发。
2024-03-11 20:16:05 760
原创 嵌入式面经-linux基础知识
linux内核:内核是操作系统的核心,责管理硬件资源、提供进程调度、文件系统和设备驱动程序等基本功能Shell:是用户与操作系统之间的接口,它接受用户输入的命令,并将其传递给内核执行文件系统:用于存储和组织数据的方式GUN工具集:是一系列的开源软件工具,包括编译器、文本剪辑器、调试器应用程序库:Linux提供了许多应用程序库,如C库、图形界面库用户空间工具:Linux提供了各种实用程序和应用软件,包括shell命令解释器、文本编辑器、网络工具。
2024-03-10 15:28:32 874
原创 嵌入式面经-线程与进程
进程是资源分配的基本单元,它是程序执行时的一个实例,在程序运行时创建线程是程序执行的最小单元,是进程的一个执行流,一个进程可由有多个线程组成。
2024-03-10 15:14:21 828 1
原创 嵌入式面经-linux系统移植
Boot loader:引导加载程序、位于计算机固件和操作系统之间的软件,负责在计算机启动时加载并执行操作系统。其首先会进行硬件初始化,并接管计算机的控制权。然后,它会加载Linux内核到内存中。Linux内核:是操作系统的核心部分,它负责管理计算机的硬件资源和提供各种系统服务。一旦被Boot loader加载到内存中,Linux内核就开始执行,并完成一系列初始化工作,如设置进程调度器、初始化设备驱动程序等。同时,内核还会检测并挂载根文件系统。
2024-03-10 15:08:55 347 1
原创 嵌入式面经-FreeRTOS
优先级继承:当一个互斥信号量正在被一个低优先级的任务持有时, 如果此时有个高优先级的任务也尝试获取这个互斥信号量,那么这个高优先级的任务就会被阻塞。时间片调度:每个任务都有相同的优先级,任务会运行固定的时间片个数或者遇到阻塞式的 API 函数,比如vTaskDelay,才会执行同优先级任务之间的任务切换。抢占式调度:每个任务都有不同的优先级,任务会一直运行直到被高优先级任务抢占或者遇到阻塞式的 API 函数,比如 vTaskDelay。任务和任务,任务和中断之间同步,用二值信号量最合适。
2024-03-10 15:04:17 507 1
原创 嵌入式面经-STM32
PLL锁相环:是一种反馈控制电路,其核心特点是利用外部输入的参考信号来控制环路内部振荡信号的频率和相位,在STM32的时钟系统中,PLL通常用于倍频,通过提高外部晶振的频率,得到满足系统需要的更高频率的时钟信号。LSI是低速内部时钟,同样是RC振荡器,频率为40kHz,提供低功耗时钟。
2024-03-10 14:58:50 802 1
原创 代码随想录-第四章
/ 单链表int val;// 节点上存储的元素// 指向下一个节点的指针ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数通过自己定义构造函数初始化节点。
2023-10-17 16:01:56 86 1
原创 虚拟机连接linux开发板方法
最近在学I.MX6ULL的系统移植,但是开发板连接虚拟机一直有问题连接不上,搜了CSDN上的很多资料,感觉有的写的不全,有的写的很多,最后总结出一个连接方法,亲测可用,而且自己也发现很多需要避坑的地方。现在编辑出来分享给大家。
2023-10-11 16:43:32 1251 3
原创 代码随想录学习笔记-第三章
给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果目标值存在返回下标,否则返回-1。定义左闭右闭区间。
2023-10-10 21:47:08 68 1
原创 VM下安装虚拟机,插入u盘虚拟机不显示,并且“虚拟机->可移动设备->u盘->连接(断开与主机的连接)”是灰色的,解决办法
VM下安装虚拟机,插入u盘虚拟机不显示,并且“虚拟机->可移动设备->u盘->连接(断开与主机的连接)”是灰色的,解决办法
2023-08-24 09:57:03 5245 9
原创 基于小蜜蜂老师代码风格的蓝桥杯单片机第十二届第一次省赛程序代码
PS:本人第十届蓝桥杯单片机省赛第一,熟悉51单片机与STM32的操作与使用,如有关于单片机(51、STM32)的作业、课设、毕业设计皆可询问本人。
2023-07-04 16:15:13 349 5
基于 STM32F103 的智能平衡车设计
2024-03-10
基于STM32F103的蓝牙智能小车项目代码
2024-03-10
询问一个simulink中的原件
2022-07-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人