- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 DOCSIS 3.1 Cable Modem 上线流程文档
本文档详细描述 DOCSIS 3.1 Cable Modem (CM) 从冷启动到完全上线的完整流程,用于指导开发人员理解系统工作原理和进行故障排查。
2026-04-15 11:21:46
447
原创 WiFi 驱动实现详解:802.11 协议与 Linux cfg80211 架构(以树莓派为例)
802.11 是 IEEE 制定的无线局域网(WLAN)标准,也就是我们常说的WiFi。│ 802.11 协议家族演进 ││ 1999 年 │ 2003 年 │ 2009 年 │ 2013 年 │ 2019 年 │ 2024 年 │↓树莓派 BCM4345/6支持 802.11ac (WiFi 5), 双频 2.4/5GHz。
2026-04-15 10:53:21
440
原创 UART 入门指南(Linux新手版)
本文介绍了UART(通用异步收发传输器)的基本概念和工作原理。UART是一种串行通信协议,具有异步、全双工、点对点等特点,广泛应用于GPS模块、蓝牙设备、传感器等场景。文章详细解析了UART的信号线定义、数据帧结构、波特率计算等关键技术参数,并提供了硬件接线示意图和常见模块的连接方法。针对Linux新手,还介绍了USB转UART模块的使用和常见芯片类型。通过清晰的图表和示例,帮助初学者快速掌握UART通信的基本原理和实际应用。
2026-04-05 22:33:36
462
原创 GDB 常用命令参考
GDB调试器常用命令速查表,包含启动/退出、运行控制、断点管理、信息查看、调用栈、多线程调试等功能。涵盖基础命令如run、break、print,以及高级功能如观察点、线程调试和程序状态修改。提供典型调试流程示例,包括基础调试、崩溃分析和多线程处理,适合开发者快速查阅常用GDB调试命令。
2026-04-04 21:28:45
80
原创 树莓派 AP 模式作为中继器或子路由器配置
本文详细介绍了在树莓派4B上配置AP模式作为中继器或子路由器的完整过程。主要内容包括:1) 环境配置与软件安装;2) hostapd和dnsmasq的关键配置文件解析;3) 启动/停止脚本实现;4) 常见问题解决方案,如信道不兼容、DHCP失败等。重点强调了虚拟接口uap0的IP地址配置顺序对DHCP服务的影响,以及BCM43455芯片在并发模式下的限制。通过iptables实现NAT转发,最终构建了一个支持WPA2加密的无线AP(SSID:Pi-AP),可为客户端分配192.168.10.x网段IP并提供
2026-04-03 15:24:27
441
原创 I2C 总线入门指南
本文详细介绍了I2C总线协议的技术要点。I2C是一种双线制串行通信总线,采用主从架构,支持多设备连接。文章阐述了I2C的物理层特性、信号定义、数据传输格式和读写操作时序,包括单字节读写和连续读写操作。特别说明了Linux驱动中的I2C使用方法,包括数据结构、API接口和设备树配置。最后提供了关键参数速查表,涵盖地址计算、速度模式、错误码和调试命令等实用信息。全文系统性地讲解了I2C总线的工作原理和实际应用,为开发者提供了全面的技术参考。
2026-04-02 20:37:17
655
原创 排序算法(三)—— 桶排序和计数排序
桶排序、计数排序时间复杂度是线性的O(n),因而也叫线性排序,这两个算法是基于非比较的排序算法,不涉及元素之间的比较。 1. 桶排序(Bucket sort) 桶排序的核心思想是把要排序的数据分组放到桶里,然后再把每个桶里的数据单独进行排序,之后把数据取出,组成的序列就是有序的了。主要应用于处理数值分布比较均匀但是数据量很大的场景。相对来说,我们一般使用的排序算法的时间复杂度在nlog(n)到...
2018-11-03 04:08:36
1332
原创 scrapy框架安装及简单例程
1. 安装scrapy爬虫框架 命令行pip install scrapy . 一般会出现twisted安装失败的信息,原因是没有获取正确的windows版本,这时候到https://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载twisted,打开链接后直接ctrl+F搜索Twisted,下载对应版本,比如我是64位Windows 然后到下载目录cmd执...
2018-09-14 10:05:30
467
原创 排序算法(二)快速排序和归并排序
之所以把归并排序和快速排序放一起,是因为这两种方法其实很类似,两者都是讲数列细分到0或1个单位,但是快排在细分的过程中会将排序做好,而归并排序是先执行细分这个过程,然后把细分的数据有序合并,过程比快排稍微繁琐一点 3.快速排序 快速排序是通过一趟排序将待排数列分隔成独立的两部分,其中一部分记录的新序列比另一份小,则可分别对这两部分继续进行排序,最后整个数列就是有序的。 步骤: 1. ...
2018-08-22 03:12:25
652
原创 排序算法(一)选择排序和冒泡排序
1. 选择排序: 选择排序是一种很简单直观的排序方法,就是在未排序的数据中挑选出最大或者最小的元素,存放到已排序数据的末尾。 简单的讲,就是每次都把最大或者最小的数据挑选出来,然后依次组成新的序列。 假设有数据{1,4,6,8,3,4,0,2,14},要按照从大到小进行排序 那么我们在第一次循环中,从第一个数据‘1’开始比较,最后挑选出最大‘14’,放到数组的第一个索引处,在第二次循环中,...
2018-08-18 03:34:37
1158
原创 TS码流解析(3)PSI/SI解析
3. PSI/SI表 PSI/SI表的构成是:一个表由一个或多个子表构成,表用table_id来标识;不同的子表由table_id和table_id_extension来区分(具有相同的table_id和不同的table_id_extension);一个子表由一个或多个段构成(具有相同的table_id和table_id_extension,不同section_number来区分);每个段由多个...
2018-01-03 08:47:34
4517
原创 TS码流解析(2) Section
2. Section 2.1 Section的概念 一个TS数据包的最大净荷为184个字节,当一个PSI/SI表的字节长度大于184字节时,就要对这个表进行分割,形成段(section)来传送。分段机制主要是将一个数据表分割成多个数据段。在PSI/SI表到TS包的转换过程中,段起到了中介的作用。由于一个数据包只有188字节,而段的长度是可变的,EIT表的段限长4096字节,其余PSI/S
2017-11-28 20:17:45
2815
原创 TS码流解析
实习期间做了一个TS码流解析的项目,总结了一些知识,分享给大家,可能会有写错漏,欢迎指正 1. TS 1.1 TS流与其他流的关系 ES(Elementary Stream): 基本码流,不分段的音频、视频或其他信息的连续码流。 PES(Packetized Elementary Stream):分组的基本码流,将基本码流ES流根据需要分成长度不等的数据包,并加上包头就形成了打包的基本
2017-10-10 19:08:24
4783
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1