- 博客(64)
- 资源 (1)
- 收藏
- 关注
原创 ubuntu下调试驱动
对于一个 Linux 驱动程序,一开始可以在 Ubuntu Linux 上做前期开发和测试。对于访问硬件部分也可以在 Ubuntu Linux 用软件进行模拟,切记不能代替真实的环境!当基本开发完成后,就需要在开发板或工程样机上使 用真实的硬件进行测试,当然,最后还需要在最终销售的产品上进行测试。最终测试通过,Linux 驱动才能算真 正开发完成。
2023-03-11 22:22:35
1700
原创 TCP粘包的原因及解决办法
TCP粘包是指发送方发送的多个数据包到接收方后粘连在一起,导致数据包不能完整的提现发送的数据。问题主要还是因为接收方不知道消息之间的界限,不知道一次性提取多少字节的数据所造成的。
2023-03-02 21:58:50
2544
原创 ZigBee组网原理详解
组建一个完整的zigbee网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网和通过已有父节点入网。
2023-02-27 14:55:49
7168
原创 ZigBee基本概念
本文主要介绍zigbee中profile、cluster、attribute、command的概念,以及zigbee的一些基本思想。
2023-02-27 14:23:25
1593
1
原创 Socket编程 | TCP服务器IO模型之非阻塞轮询-4
非阻塞IO通过进程反复调用IO函数(多次系统调用,并马上返回);在数据拷贝的过程中,进程是阻塞的。
2023-02-23 15:57:20
602
原创 Socket编程 | TCP服务器IO模型之并发阻塞(多进程实现)-3
多进程服务器是当客户有请求时,服务器用一个子进程来处理客户请求。父进程继续等待其它客户的请求。这种方法的优点是当客户有请求时,服务器能及时处理客户,特别是在客户服务器交互系统中。
2023-02-22 14:17:12
350
原创 进程内存机制及系统调用机制
一个程序文件(program),只是一堆待执行的代码和部分待处理的数据,他们只有被加载到内存中,然后让 CPU 逐条执行其代码,根据代码做出相应的动作,才形成一个真正“活的”、动态的进程(process),因此进程是一个动态变化的过程,是一出有始有终的戏,而程序文件只是这一系列动作的原始蓝本,是一个静态的剧本。
2023-02-21 14:20:35
1172
原创 Socket编程 | UDP基本编程和API详解
UDP(User Datagram Protocol)用户数据协议,是不可靠的无连接协议。在数据发送前,因为不需要连接,所以可以进行高效率的数据传输。
2023-02-17 11:11:56
482
原创 Socket编程 | TCP服务端阻塞IO模型(多线程)-2
多线程模型主要特点是每个网络请求由一个线程处理,线程内部使用阻塞式系统调用,在线程的职能划分上,可以由一个单独的线程处理accept连接,其余线程处理具体的网络请求(收包,处理,发包).
2023-02-16 11:08:15
333
原创 线程的创建
线程例程指的是:如果线程创建成功,则该线程会立即执行的函数。POSIX线程库的所有API对返回值的处理原则一致:成功返回0,失败返回错误码errno.线程属性如果为NULL, 则会创建一个标准属性的线程,线程的属性非常多,有关线程的属性待研究束。只有当pthread_join()函数返回时,创建的线程才算。
2023-02-15 15:04:20
601
原创 LINUX内核链表
Linux 内核链表的思路把传统链表中的“链”抽象出来,使之成为一条只包含前后指针的纯粹的双循环链表,这样的链表由于不含有特殊的数据,因此它实质上就是链表的抽象表示,类似于一条通用的绳子,在实际应用中只需将这条绳子“嵌入”一个具体的节点当中
2023-02-15 11:17:23
1071
2
原创 Socket编程 | TCP编程基本流程和API详解-1
TCP (即传输控制协议) 是一种面向连接的传输层协议,它能提供高可靠性通信 (即数据无误、数据无丢失、数据无失序、数据无重复到达的通信)。
2023-02-10 15:44:57
700
原创 IOT短距离无线通信技术及本地控制
短距离无线通信技术的范围很广,在一般意义上,它是指集信息采集、信息传输、信息处理于一体的综合性智能信息系统,并且其传输距离限制在一个较短的范围内(通常是几米以内)
2023-02-08 18:26:41
1191
原创 智能硬件的工作原理与发展定位
智能硬件是以平台性底层软硬件为基础,以智能传感互联、人机交互、新型显示及大数据处理等新一代信息技术为特征,以新设计、新材料、新工艺硬件为载体的新型智能终端产品及服务。
2023-02-08 14:56:14
2026
转载 嵌入式以及嵌入式行业的基本信息
从技术实现上讲,嵌入式的产品分为两大类:一类简单的,没有操作系统支持的;一类复杂的,有操作系统的。就目前发展方向看,后一种是趋势。
2023-02-07 15:42:18
994
原创 网络编程基础知识
socket 通信主要用于 应用层和传输层 之间进行数据交互,类似于带有不同类型电器设备适配不同的插排插孔,选择不同的插孔意味着设备将数据流向该插孔,在网络中便是应用层不同的协议适配不同的传输协议,这便是socket编程的名字的由来
2023-02-06 14:06:16
377
原创 STM32--SPI、I2C、CAND等常用通信外设总线概括
STM32常用通信总线 SPI是串行外设接口( Serial Peripheral Interface)的缩写。 SPI,是一种高速的(之前做学传输比特115200 =112k, 而SPI传输速度为10M...
2023-02-02 13:43:58
5089
2
转载 CMake语法介绍
cmake 是一个跨平台、开源的构建系统。它是一个集软件构建、测试、打包于一身的软件。它使用与平台和编译器独立的配置文件来对软件编译过程进行控制。
2023-01-18 16:33:27
2352
原创 字符设备驱动基础
Linux系统中的驱动程序往往是以模块的方式加载进系统中,所以驱动程序编写的第一步是要先进行一个模块的初始化,以及对模块的信息进行描述
2023-01-17 18:13:33
542
2
原创 automake构建makefile文件
GNU Automake是一种编程工具,可以产生供make程序使用的Makefile,用来编译程序。它是自由软件基金会发起的GNU计划的其中一项,作为GNU构建系统的一部分。automake所产生的Makefile符合GNU编程标准。
2023-01-17 17:27:44
410
原创 网卡驱动学习五、hostapd 移植测试
hostapd 是Linux下一款IEEE 802.11 AP创建软件,它可以通过使用一块无线网卡来创建WiFi访问点,将当前的网络共享出来,实现的功能类似于Windows下面的百度WiFi或者360WiFi
2023-01-17 16:36:31
2888
转载 网卡驱动学习四、mac80211概览
mac80211是linux kernel中的一个子系统,它为无线设备soft-MAC/half-MAC提供了分享实施方案,包含MLME和另外一些代码。
2023-01-17 14:48:39
2957
原创 网卡驱动学习二、wext 和 nl80211接口介绍
Linux无线驱动接口有两种标准接口,wext(Wireless Extensions无线扩展接口)和nl80211接口。
2023-01-17 13:56:27
1571
转载 网卡驱动学习三、cfg80211无线配置管理服务
cfg80211:用于对无线设备进行配置管理。cfg80211&nl80211基于消息机制,使用netlink接口。
2023-01-17 13:51:27
2340
原创 ESP32 ESP-IDF 项目文件结构
使用ESP-IDF开发时,项目特指一个目录,其中包含了构建可执行应用程序所需的全部文件和配置,以及其他支持型文件,例如分区表、数据/文件系统分区和引导程序。ESP-IDF 并不是项目的一部分,它独立于项目,通过 IDF_PATH 环境变量(保存 esp-idf 目录的路径)链接到项目,从而将 IDF 框架与项目分离。
2023-01-16 15:43:57
2061
原创 函数指针总结
一个函数总是占用一段连续的内存区域,函数名在表达式中有时也会被转换为该函数所在内存区域的首地址,这和数组名非常类似。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使指针变量指向函数所在的内存区域,然后通过指针变量就可以找到并调用该函数。这种指针就是函数指针。
2023-01-16 15:34:02
288
转载 Samba配置
搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录。现在介绍如何在ubuntu 16.04系统中搭建Samba服务。
2023-01-16 15:11:04
366
SecureCRT工具
2018-12-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅