发布时间:2022-08-18 18:56
硬件环境
正点原子Linux开发板(ALIENTEK I.MX6U ALPHA V2.2)
底板+核心板(EMMC版)+7寸RGB屏1024*600'
软件环境
VirtualBox
Ubuntu
学习计划
开始于2022/03/12
第一步,看完所有的视频教程并做好记录
正点原子Linux视频教程_B站
正点原子资料下载中心_opendev
视频教程目录
视频 | 选集 | 时长 | 时长 |
---|---|---|---|
【第一期】手把手教你学Linux之Ubuntu入门篇 | 20 | 8小时58分 8秒 | 0天 8小时58分 8秒 |
【第二期】手把手教你学Linux之ARM(MX6U)裸机篇 | 76 | 39小时57分 2秒 | 1天15小时57分 2秒 |
【第三期】手把手教你学Linux之系统移植和根文件系统构建 | 56 | 29小时23分22秒 | 1天 5小时23分22秒 |
【第四期】手把手教你学 Linux之驱动开发篇 | 146 | 69小时44分38秒 | 2天21小时44分38秒 |
一共298集视频,总时长148小时 3分10秒,即6天 4小时 3分10秒
正点原子【第一期】手把手教你学Linux之Ubuntu入门篇
视频 | 选集 | 时间 |
---|---|---|
P1 | 第1讲 开发电脑的选择 | 22:35 |
P2 | 第2讲 VMware软件安装和虚拟机创建 | 29:36 |
P3 | 第3讲 Ubuntu操作系统的安装 | 32:13 |
P4 | 第4讲 Ubuntu初次体验 | 27:25 |
P5 | 第5讲 虚拟机连接USB设备 | 09:21 |
P6 | 第6.1讲 Ubuntu终端操作与Shell命令1 | 30:41 |
P7 | 第6.2讲 Ubuntu终端操作与Shell命令2 | 29:41 |
P8 | 第7讲 Ubuntu软件安装 | 31:15 |
P9 | 第8讲 Ubuntu文件系统结构 | 18:21 |
P10 | 第9讲 Ubuntu下的磁盘管理 | 36:17 |
P11 | 第10讲 Ubuntu下压缩与解压缩 | 33:58 |
P12 | 第11讲 Ubuntu用户与用户组 | 22:50 |
P13 | 第12讲 Ubuntu文件权限管理 | 23:13 |
P14 | 第13讲 Linux连接文件 | 20:33 |
P15 | 第14讲 vim编辑器 | 22:00 |
P16 | 第15讲 Linux C编程 | 23:55 |
P17 | 第16讲 make工具和Makefile的引入 | 28:12 |
P18 | 第17讲 Makefile基本语法 | 33:47 |
P19 | 第18讲 shell脚本入门 | 33:11 |
P20 | 第19讲 shell脚本条件判断、函数和循环 | 29:04 |
正点原子【第二期】手把手教你学Linux之ARM(MX6U)裸机篇
视频 | 选集 | 时间 |
---|---|---|
P1 | 第1.1讲 开发环境搭建 | 28:15 |
P2 | 第1.2讲 交叉编译器的安装 | 13:44 |
P3 | 第2讲 vscode软件的安装与使用 | 34:39 |
P4 | 第3讲 I.MX6U-ALPHA开发板简介 | 26:08 |
P5 | 第5讲 I.MX6U芯片简介 | 35:52 |
P6 | 第6.1讲 汇编LED驱动实验-原理分析 | 35:31 |
P7 | 第6.2讲 汇编LED驱动实验-汇编基本语法 | 28:07 |
P8 | 第6.3讲 汇编LED驱动实验-驱动编写 | 30:55 |
P9 | 第6.4讲 汇编LED驱动实验-编译程序 | 22:45 |
P10 | 第6.5讲 汇编LED驱动实验-烧写bin文件到SD卡中并运行 | 27:43 |
P11 | 第7.1讲 IMX启动方式-启动设备的选择 | 36:06 |
P12 | 第7.2讲 IMX启动方式-IVT表和BootData详解 | 31:17 |
P13 | 第7.3讲 IMX启动方式-DCD数据详解 | 20:40 |
P14 | 第8.1讲 C语言版本LED驱动实验-实验原理分析 | 26:53 |
P15 | 第8.2讲 C语言版本LED驱动实验-程序编写与验证 | 39:57 |
P16 | 第9.1讲 模仿STM32驱动开发实验-实验程序编写 | 31:43 |
P17 | 第9.2讲 模仿STM32驱动开发实验-主函数编写与下载验证 | 18:10 |
P18 | 第10.1讲 NXP官方SDK使用实验-SDK移植 | 25:42 |
P19 | 第10.2讲 NXP官方SDK使用实验-程序编写验证 | 36:59 |
P20 | 第11.1讲 BSP工程管理实验-工程整理与程序编写 | 31:16 |
P21 | 第11.2讲 BSP工程管理实验-编写测试通用Makefile | 34:04 |
P22 | 第12讲 蜂鸣器实验 | 25:29 |
P23 | 第13.1讲 按键输入实验-实验程序编写 | 32:42 |
P24 | 第13.2讲 按键输入实验-驱动验证与调试 | 14:26 |
P25 | 第13.3讲 按键输入实验-通用GPIO驱动编写与验证 | 24:43 |
P26 | 第14.1讲 主频和时钟配置实验-时钟树详解 | 38:06 |
P27 | 第14.2讲 主频和时钟配置实验-主频修改 | 41:16 |
P28 | 第14.3讲 主频和时钟配置实验-8路PLL和8路PFD时钟设置 | 20:02 |
P29 | 第14.4讲 主频和时钟配置实验-其他时钟源设置 | 44:10 |
P30 | 第15.1讲 GPIO中断实验-Cortex-A中断原理 | 41:50 |
P31 | 第15.2讲 GPIO中断实验-6U中断向量表的编写 | 35:05 |
P32 | 第15.3讲 GPIO中断实验-6U复位中断服务函数的编写 | 23:13 |
P33 | 第15.4讲 GPIO中断实验-IRQ中断服务函数详解 | 28:04 |
P34 | 第15.5讲 GPIO中断实验-通用中断驱动编写 | 43:16 |
P35 | 第15.6讲 GPIO中断实验-向GPIO驱动添加中断处理函数 | 29:55 |
P36 | 第15.7讲 GPIO中断实验-编写按键中断驱动 | 30:12 |
P37 | 第16.1讲 EPIT定时器实验-EPIT原理详解 | 23:43 |
P38 | 第16.2讲 EPIT定时器实验-实验程序编写与验证 | 28:38 |
P39 | 第17讲 定时器按键消抖实验 | 32:24 |
P40 | 第18.1讲 高精度延时实验-GPT定时器原理 | 32:31 |
P41 | 第18.2讲 高精度延时实验-实验代码编写与测试 | 37:33 |
P42 | 第19.1讲 串口实验-串口原理详解 | 36:59 |
P43 | 第19.2讲 串口实验-串口驱动实验编写与验证1 | 29:55 |
P44 | 第19.3讲 串口实验-串口驱动实验编写与验证2 | 30:01 |
P45 | 第19.4讲 串口实验-printf格式化函数移植与测试 | 29:10 |
P46 | 第20.1讲 DDR3实验-RAM发展历史简介 | 41:47 |
P47 | 第20.2讲 DDR3实验-DDR3重要时间参数、时钟配置与原理图简析 | 27:53 |
P48 | 第20.3讲 DDR3实验-DDR3初始化、校准、超频测试 | 38:20 |
P49 | 第21.1讲 RGBLCD实验-LCD显示原理详解 | 41:18 |
P50 | 第21.2讲 RGBLCD实验-LCD时序与时间参数 | 28:52 |
P51 | 第21.3讲 RGBLCD实验-6ULL LCDIF接口寄存器详解 | 36:14 |
P52 | 第21.4讲 RGBLCD实验-6ULL像素时钟配置详解 | 24:34 |
P53 | 第21.5讲 RGBLCD实验-LCDID读取以及IO初始化程序编写 | 45:12 |
P54 | 第21.6讲 RGBLCD实验-LCD时间参数和像素时钟设置程序编写 | 44:40 |
P55 | 第21.7讲 RGBLCD实验-LCDIF控制器接口初始化程序编写 | 31:31 |
P56 | 第21.8讲 RGBLCD实验-LCDIF驱动以及API函数测试 | 28:56 |
P57 | 第22.1讲 RTC实验-6U内部RTC详解 | 28:29 |
P58 | 第22.2讲 RTC实验-驱动编写与测试 | 44:21 |
P59 | 第22.3讲 RTC实验-时间错误问题调试 | 22:06 |
P60 | 第23.1讲 I2C实验-I2C协议和6U的I2C控制器详解 | 36:46 |
P61 | 第23.2讲 I2C实验-AP3216C简介与程序编写 | 27:19 |
P62 | 第23.3讲 I2C实验-I2C主机控制器驱动程序编写1 | 38:36 |
P63 | 第23.4讲 I2C实验-I2C主机控制器驱动程序编写2 | 33:21 |
P64 | 第23.5讲 I2C实验-AP3216C程序编写 | 21:20 |
P65 | 第23.6讲 I2C实验-AP3216C程序调试及bug解决 | 21:00 |
P66 | 第24.1讲 SPI实验-SPI以及ICM20608详解 | 37:25 |
P67 | 第24.2讲 SPI实验-6ULL SPI控制器寄存器详解 | 35:26 |
P68 | 第24.3讲 SPI实验-6ULL SPI控制器驱动程序编写 | 33:39 |
P69 | 第24.4讲 SPI实验-ICM20608驱动程序编写 | 37:03 |
P70 | 第24.5讲 SPI实验-ICM20608实际测量值计算与6ULL硬件浮点的开启 | 28:33 |
P71 | 第25.1讲 多点电容触摸屏实验-电容触摸屏与FT系列触摸芯片详解 | 33:15 |
P72 | 第25.2讲 多点电容触摸屏实验-电容触摸屏幕驱动编写1 | 35:52 |
P73 | 第25.3讲 多点电容触摸屏实验-电容触摸屏幕驱动编写2 | 31:05 |
P74 | 第25.4讲 多点电容触摸屏实验-电容触摸驱动测试 | 16:01 |
P75 | 第26.1讲 PWM背光实验-6ULL PWM详解 | 33:07 |
P76 | 第26.2讲 PWM背光实验-PWM背光驱动程序编写 | 43:12 |
正点原子【第三期】手把手教你学Linux之系统移植和根文件系统构建
视频 | 选集 | 时间 |
---|---|---|
P1 | 第1.1讲 正点原子官方系统镜像烧写实验-Windows下OTG烧写 | 23:23 |
P2 | 第1.2讲 正点原子官方系统镜像烧写实验-Ubuntu下脚本烧写 | 29:04 |
P3 | 第2.1讲 正点原子官方Uboot编译-什么是uboot | 29:23 |
P4 | 第2.2讲 正点原子官方Uboot编译-uboot初次编译 | 30:08 |
P5 | 第3.1讲 Uboot命令使用-uboot启动log信息分析与基础命令使用 | 33:25 |
P6 | 第3.2讲 Uboot命令使用-uboot内存与网络命令 | 46:10 |
P7 | 第3.3讲 Uboot命令使用-MMC和文件操作命令 | 25:04 |
P8 | 第3.4讲 Uboot命令使用-NAND和BOOT命令 | 34:10 |
P9 | 第4讲 Uboot源码目录分析 | 37:19 |
P10 | 第5.1讲 Uboot顶层Makefile分析-vscode工程创建 | 23:20 |
P11 | 第5.2讲 Uboot顶层Makefile分析-Makefile前期所作的内容 | 42:51 |
P12 | 第5.3讲 Uboot顶层Makefile分析-make xxx_defconfig过程 | 43:53 |
P13 | 第5.4讲 Uboot顶层Makefile分析-make过程 | 28:48 |
P14 | 第6.1讲 Uboot启动流程详解-Uboot链接脚本到_start的处理过程 | 33:36 |
P15 | 第6.2讲 Uboot启动流程详解-lowlevel_init、s_init及_main函数执行过程 | 35:50 |
P16 | 第6.3讲 Uboot启动流程详解-board_init_f函数执行过程 | 43:11 |
P17 | 第6.4讲 Uboot启动流程详解-uboot内存分配 | 42:39 |
P18 | 第6.5讲 Uboot启动流程详解-uboot代码重定位 | 47:49 |
P19 | 第6.6讲 Uboot启动流程详解-中断向量表重定位与board_init_r函数执行过程 | 25:46 |
P20 | 第6.7讲 Uboot启动流程详解-main_loop到cmd_process处理过程 | 38:51 |
P21 | 第6.8讲 Uboot启动流程详解-bootz启动Linux过程详解1 | 26:40 |
P22 | 第6.9讲 Uboot启动流程详解-bootz启动Linux过程详解2 | 31:02 |
P23 | 第7.1讲 Uboot移植实验-NXP官方开发板uboot编译与测试 | 35:31 |
P24 | 第7.2讲 Uboot移植实验-在Uboot中添加ALPHA开发板 | 38:43 |
P25 | 第7.3讲 Uboot移植实验-Uboot LCD驱动修改 | 28:01 |
P26 | 第7.4讲 Uboot移植实验-Uboot 网络驱动原理简介 | 18:18 |
P27 | 第7.5讲 Uboot移植实验-Uboot 网络驱动修改 | 37:38 |
P28 | 第7.6讲 Uboot移植实验-Uboot启动Linux内核测试 | 17:57 |
P29 | 第7.7讲 Uboot移植实验-mx6ull_alientek_emmc.h文件详解 | 30:54 |
P30 | 第7.8讲 Uboot移植实验-bootcmd和bootargs详解 | 33:59 |
P31 | 第7.9讲 Uboot移植实验-DDR初始化参数修改 | 18:00 |
P32 | 第8.1讲 Uboot图形化界面配置-图形化配置操作 | 30:53 |
P33 | 第8.2讲 Uboot图形化界面配置-Kconfig语法简介 | 36:57 |
P34 | 第9讲 正点原子官方Linux内核编译与体验 | 39:03 |
P35 | 第10讲 Linux内核源码目录分析 | 21:17 |
P36 | 第11.1讲 Linux内核顶层Makefile分析-make xxx_defconfig和make过程 | 38:01 |
P37 | 第11.2讲 Linux内核顶层Makefile分析-built-in.o和zImage生成过程简介 | 17:42 |
P38 | 第12.1讲 Linux内核启动流程简介-第一阶段汇编流程简介 | 23:37 |
P39 | 第12.2讲 Linux内核启动流程简介-第二阶段start_kernel简介 | 26:06 |
P40 | 第13.1讲 Linux内核移植-向NXP官方Linux内核添加ALPHA开发板 | 40:29 |
P41 | 第13.2讲 Linux内核移植-主频设置以及超频测试 | 31:01 |
P42 | 第13.3讲 Linux内核移植-网络驱动修改 | 38:08 |
P43 | 第14.1讲 根文件系统构建-根文件系统简介 | 28:10 |
P44 | 第14.2讲 根文件系统构建-busybox配置、中文支持与编译 | 36:47 |
P45 | 第14.3讲 根文件系统构建-根文件系统lib库文件添加与初步测试 | 36:54 |
P46 | 第14.4讲 根文件系统构建-根文件系统完善 | 28:41 |
P47 | 第14.5讲 根文件系统构建-根文件系统其他功能测试 | 27:01 |
P48 | 第15.1讲 MfgTool烧写工具详解-MfgTool工具详解(上) | 17:49 |
P49 | 第15.2讲 MfgTool烧写工具详解-MfgTool工具详解(下) | 25:41 |
P50 | 第15.3讲 MfgTool烧写工具详解-烧写自制的系统文件 | 28:33 |
P51 | 第15.4讲 MfgTool烧写工具详解-定制化mfgtool工具 | 29:58 |
P52 | 第16.1讲 Uboot移植实验(NAND版本)-向Uboot中添加NAND版开发板-补录 | 30:12 |
P53 | 第16.2讲 Uboot移植实验(NAND版本)-Uboot中LCD及网络驱动修改-补录 | 31:29 |
P54 | 第16.3讲 Uboot移植实验(NAND版本)-Uboot启动内核测试与DDR初始化代码修改-补录 | 27:15 |
P55 | 第17讲 Linux内核移植(NAND版本)-补录 | 21:16 |
P56 | 第18讲 MfgTool烧写(NAND版本)-补录 | 38:59 |
正点原子【第四期】手把手教你学 Linux之驱动开发篇
视频 | 选集 | 时间 |
---|---|---|
P1 | 第1讲 Linux驱动开发与裸机开发区别 | 20:52 |
P2 | 第2讲 字符设备驱动开发基础实验 | 21:55 |
P3 | 第3.1讲 我的第一个Linux驱动-字符设备驱动框架 | 36:14 |
P4 | 第3.2讲 我的第一个Linux驱动-驱动模块加载与卸载实验 | 31:57 |
P5 | 第3.3讲 我的第一个Linux驱动-字符设备驱动框架搭建实验 | 39:01 |
P6 | 第3.4讲 我的第一个Linux驱动-应用程序编写 | 36:32 |
P7 | 第3.5讲 我的第一个Linux驱动-完善chrdevbase驱动 | 32:41 |
P8 | 第4.1讲 Linux LED灯驱动实验(直接操作寄存器)-地址映射 | 20:34 |
P9 | 第4.2讲 Linux LED灯驱动实验(直接操作寄存器)-驱动框架搭建以及网络问题解决方法 | 35:14 |
P10 | 第4.3讲 Linux LED灯驱动实验(直接操作寄存器)-LED灯初始化 | 34:02 |
P11 | 第4.4讲 Linux LED灯驱动实验(直接操作寄存器)-完善驱动与应用程序编写测试 | 25:07 |
P12 | 第5.1讲 Linux新字符设备驱动实验-新驱动框架的搭建 | 39:57 |
P13 | 第5.2讲 Linux新字符设备驱动实验-完善驱动 | 26:57 |
P14 | 第5.3讲 Linux新字符设备驱动实验-自动创建设备节点 | 31:32 |
P15 | 第5.4讲 Linux新字符设备驱动实验-私有数据以及goto对于错误的处理方法 | 34:29 |
P16 | 第6.1讲 Linux设备树详解-什么是设备树? | 28:17 |
P17 | 第6.2讲 Linux设备树详解-DTS文件以及组织形式 | 41:40 |
P18 | 第6.3讲 Linux设备树详解-6ULL设备树节点信息 | 35:56 |
P19 | 第6.4讲 Linux设备树详解-设备树在根文件系统中的体现以及添加自定义节点 | 38:42 |
P20 | 第6.5讲 Linux设备树详解-设备树特殊节点 | 23:58 |
P21 | 第6.6讲 Linux设备树详解-设备树中的标准属性 | 27:56 |
P22 | 第6.7讲 Linux设备树详解-根节点下的compatible属性作用 | 27:27 |
P23 | 第6.8讲 Linux设备树详解-绑定文档以及OF函数 | 42:35 |
P24 | 第6.9讲 Linux设备树详解-OF函数操作实验 | 50:18 |
P25 | 第7.1讲 设备树下的LED驱动试验-实验驱动框架搭建 | 38:52 |
P26 | 第7.2讲 设备树下的LED驱动试验-实验驱动完善 | 45:17 |
P27 | 第8.1讲 pinctrl和gpio子系统试验-pincrl子系统详解 | 40:57 |
P28 | 第8.2讲 pinctrl和gpio子系统试验-pincrl子系统驱动分析 | 35:50 |
P29 | 第8.3讲 pinctrl和gpio子系统试验-gpio子系统详解和驱动分析 | 42:25 |
P30 | 第8.4讲 pinctrl和gpio子系统试验-设备树节点创建与驱动框架编写 | 47:11 |
P31 | 第8.5讲 pinctrl和gpio子系统试验-完善驱动 | 35:21 |
P32 | 第9讲 beep蜂鸣器实验 | 42:24 |
P33 | 第10.1讲 Linux并发与竞争试验-并发与竞争基础概念与原子操作 | 30:31 |
P34 | 第10.2讲 Linux并发与竞争试验-自旋锁、信号量与互斥体 | 30:56 |
P35 | 第10.3讲 Linux并发与竞争试验-原子操作实验 | 27:28 |
P36 | 第10.4讲 Linux并发与竞争试验-自旋锁、信号量以及互斥体操作实验 | 34:45 |
P37 | 第11讲 Linux按键输入试验 | 40:03 |
P38 | 第12.1讲 Linux内核定时器实验-内核时间管理简介 | 25:44 |
P39 | 第12.2讲 Linux内核定时器实验-内核定时器简介以及实验编写 | 40:04 |
P40 | 第12.3讲 Linux内核定时器实验-使用ioctl控制定时器 | 42:17 |
P41 | 第13.1讲 Linux中断实验-Linux内核中断框架简介 | 22:28 |
P42 | 第13.2讲 Linux中断实验-Linux内核中断上半部和下半部 | 25:07 |
P43 | 第13.3讲 Linux中断实验-如何在设备树中描述中断信息 | 20:49 |
P44 | 第13.4讲 Linux中断实验-按键中断实验驱动编写(上) | 22:25 |
P45 | 第13.5讲 Linux中断实验-按键中断实验驱动编写(下) | 27:45 |
P46 | 第13.6讲 Linux中断实验-使用定时器实现按键消抖处理 | 31:34 |
P47 | 第13.7讲 Linux中断实验-中断下半部处理实验 | 26:07 |
P48 | 第14.1讲 Linux阻塞和非阻塞IO实验-阻塞与非阻塞简介 | 39:29 |
P49 | 第14.2讲 Linux阻塞和非阻塞IO实验-阻塞IO实验 | 29:54 |
P50 | 第14.3讲 Linux阻塞和非阻塞IO实验-非阻塞IO实验 | 29:49 |
P51 | 第15.1讲 Linux异步通知实验-异步通知简介 | 26:49 |
P52 | 第15.2讲 Linux异步通知实验-驱动程序编写 | 40:17 |
P53 | 第16.1讲 platform设备驱动实验-驱动的分离与分层 | 23:24 |
P54 | 第16.2讲 platform设备驱动实验-驱动、总线和设备 | 32:42 |
P55 | 第16.3讲 platform设备驱动实验-platform总线简介1 | 31:09 |
P56 | 第16.4讲 platform设备驱动实验-platform总线简介2 | 19:54 |
P57 | 第16.5讲 platform设备驱动实验-无设备树platform设备注册实验 | 31:33 |
P58 | 第16.6讲 platform设备驱动实验-无设备树platform驱动注册实验 | 39:06 |
P59 | 第16.7讲 platform设备驱动实验-设备树下的platform驱动注册实验 | 34:22 |
P60 | 第17.1讲 Linux自带LED驱动实验-linux自带LED驱动简析 | 29:13 |
P61 | 第17.2讲 Linux自带LED驱动实验-设备树节点创建与测试 | 18:28 |
P62 | 第18.1讲 Linux杂项(MISC)驱动实验-MISC驱动框架简介 | 27:28 |
P63 | 第18.2讲 Linux杂项(MISC)驱动实验-misc蜂鸣器驱动编写与测试 | 28:11 |
P64 | 第19.1讲 Linux INPUT子系统驱动实验-INPUT驱动框架简介 | 35:39 |
P65 | 第19.2讲 Linux INPUT子系统驱动实验-实验驱动编写 | 34:28 |
P66 | 第19.3讲 Linux INPUT子系统驱动实验-input_event详解 | 20:34 |
P67 | 第19.4讲 Linux INPUT子系统驱动实验-应用编写 | 19:22 |
P68 | 第19.5讲 Linux INPUT子系统驱动实验-内核自带按键驱动程序 | 22:31 |
P69 | 第20.1讲 Linux LCD驱动实验-Framebuffer简介 | 21:14 |
P70 | 第20.2讲 Linux LCD驱动实验-LCD驱动源码简析 | 39:52 |
P71 | 第20.3讲 Linux LCD驱动实验-LCD驱动编写 | 25:47 |
P72 | 第20.4讲 Linux LCD驱动实验-LCD屏幕测试 | 24:24 |
P73 | 第21.1讲 Linux RTC驱动实验-RTC驱动框架简介 | 23:22 |
P74 | 第21.2讲 Linux RTC驱动实验-RTC驱动源码简析与测试 | 26:30 |
P75 | 第22.1讲 Linux IIC驱动实验-Linux IIC适配器驱动框架简析 | 38:15 |
P76 | 第22.2讲 Linux IIC驱动实验-Linux IIC设备驱动框架简析 | 26:29 |
P77 | 第22.3讲 Linux IIC驱动实验-Linux IIC驱动编写之驱动框架搭建(上) | 39:19 |
P78 | 第22.4讲 Linux IIC驱动实验-Linux IIC驱动编写之驱动框架搭建(下) | 26:43 |
P79 | 第22.5讲 Linux IIC驱动实验-Linux IIC驱动编写之AP3216C寄存器数据读写函数编写 | 37:14 |
P80 | 第22.6讲 Linux IIC驱动实验-Linux IIC驱动编写之AP3216C驱动完善与测试 | 34:25 |
P81 | 第23.1讲 Linux SPI驱动实验-SPI控制器驱动详解(上) | 15:01 |
P82 | 第23.2讲 Linux SPI驱动实验-SPI控制器驱动详解(下) | 27:38 |
P83 | 第23.3讲 Linux SPI驱动实验-SPI设备驱动框架详解与设备树修改 | 36:57 |
P84 | 第23.4讲 Linux SPI驱动实验-SPI驱动编写之ICM20608驱动框架搭建 | 28:18 |
P85 | 第23.5讲 Linux SPI驱动实验-SPI驱动编写之ICM20608寄存器数据读写函数编写 | 41:35 |
P86 | 第23.6讲 Linux SPI驱动实验-SPI驱动编写之ICM20608驱动完善与测试APP编写 | 17:57 |
P87 | 第23.7讲 Linux SPI驱动实验-SPI驱动片选引脚讲解错误声明(修改讲解错误的地方) | 21:46 |
P88 | 第24.1讲 Linux 串口实验-串口驱动框架详解与驱动分析 | 33:34 |
P89 | 第24.2讲 Linux 串口实验-使能UART3 | 12:10 |
P90 | 第24.3讲 Linux 串口实验-minicom移植 | 32:23 |
P91 | 第24.4讲 Linux 串口实验-使用minicom测试串口 | 15:51 |
P92 | 第25.1讲 Linux 多点电容触摸屏实验-Linux多点电容触摸TypeA协议 | 19:22 |
P93 | 第25.2讲 Linux 多点电容触摸屏实验-Linux多点电容触摸TypeB协议 | 24:35 |
P94 | 第25.3讲 Linux 多点电容触摸屏实验-驱动编写之FT5426驱动框架搭建 | 32:34 |
P95 | 第25.4讲 Linux 多点电容触摸屏实验-驱动编写之FT5426中断以及芯片初始化 | 24:27 |
P96 | 第25.5讲 Linux 多点电容触摸屏实验-驱动编写之FT5426驱动完善与触摸测试 | 44:24 |
P97 | 第25.6讲 Linux 多点电容触摸屏实验-tslib移植与测试 | 19:22 |
P98 | 第25.7讲 Linux 多点电容触摸屏实验-触摸驱动文件添加到Linux内核中 | 13:08 |
P99 | 第26.1讲 Linux音频驱动实验-音频基础知识 | 35:04 |
P100 | 第26.2讲 Linux音频驱动实验-IIS协议以及原理图分析 | 25:14 |
P101 | 第26.3讲 Linux音频驱动实验-ALSA和ASOC驱动框架简析 | 35:28 |
P102 | 第26.4讲 Linux音频驱动实验-音频驱动使能 | 07:10 |
P103 | 第26.5讲 Linux音频驱动实验-alsa-lib与alsa-utils移植 | 20:40 |
P104 | 第26.6讲 Linux音频驱动实验-播放与录音测试 | 38:04 |
P105 | 第26.7讲 Linux音频驱动实验-开机自动配置声卡与mplayer移植 | 24:08 |
P106 | 第26.8讲 Linux音频驱动实验-alsamixer介绍 | 13:35 |
P107 | 第27.1讲 Linux CAN驱动实验-CAN简介 | 24:07 |
P108 | 第27.2讲 Linux CAN驱动实验-CAN驱动使能 | 18:45 |
P109 | 第27.3讲 Linux CAN驱动实验-can-utils移植 | 15:17 |
P110 | 第27.4讲 Linux CAN驱动实验-CAN数据收发测试 | 11:16 |
P111 | 第28.1讲 Linux USB驱动实验-USB基础知识 | 32:16 |
P112 | 第28.2讲 Linux USB驱动实验-6UL USB控制器简析与硬件原理分析 | 29:06 |
P113 | 第28.3讲 Linux USB驱动实验-USB HOST测试实验 | 30:44 |
P114 | 第28.4讲 Linux USB驱动实验-USB OTG测试实验 | 30:31 |
P115 | 第29.1讲 Linux块设备驱动实验-块设备驱动框架分析1 | 24:26 |
P116 | 第29.2讲 Linux块设备驱动实验-块设备驱动框架分析2 | 23:11 |
P117 | 第29.3讲 Linux块设备驱动实验-使用请求队列驱动编写之驱动框架搭建 | 35:37 |
P118 | 第29.4讲 Linux块设备驱动实验-使用请求队列驱动编写之驱动完善与测试 | 33:34 |
P119 | 第29.5讲 Linux块设备驱动实验-使用制造请求函数驱动编写与测试 | 25:02 |
P120 | 第30.1讲 Linux网络驱动实验-嵌入式网络硬件方案介绍 | 17:43 |
P121 | 第30.2讲 Linux网络驱动实验-MII&RMII接口详解 | 14:21 |
P122 | 第30.3讲 Linux网络驱动实验-PHY芯片详解 | 27:31 |
P123 | 第30.4讲 Linux网络驱动实验-Linux驱动框架详解之net_device | 14:22 |
P124 | 第30.5讲 Linux网络驱动实验-Linux驱动框架详解之net_device_ops&sk_buff&NAPI2 | 17:14 |
P125 | 第30.6讲 Linux网络驱动实验-I.MX6ULL网络驱动之设备树编写 | 17:45 |
P126 | 第30.7讲 Linux网络驱动实验-I.MX6ULL网络驱动之fec_probe函数简析 | 28:04 |
P127 | 第30.8讲 Linux网络驱动实验-I.MX6ULL网络驱动之通用PHY以及LAN8720驱动详解 | 29:11 |
P128 | 第30.9讲 Linux网络驱动实验-I.MX6ULL网络测试 | 19:26 |
P129 | 第31.1讲 Linux WIFI驱动实验-WIFI驱动移植编译 | 26:07 |
P130 | 第31.2讲 Linux WIFI驱动实验-WIFI测试工具移植 | 24:00 |
P131 | 第31.3讲 Linux WIFI驱动实验-WIFI联网测试 | 11:50 |
P132 | 第32.1讲 Linux 4G驱动实验-4G模块驱动修改 | 18:15 |
P133 | 第32.2讲 Linux 4G驱动实验-4G联网测试 | 28:06 |
P134 | 第33讲 Linux RGB转HDMI驱动实验 | 38:13 |
P135 | 第34.1讲 Linux PWM驱动实验-PWM驱动源码详解 | 22:08 |
P136 | 第34.2讲 Linux PWM驱动实验-PWM驱动测试 | 16:03 |
P137 | 第35.1讲 Linux Regmap API实验-Regmap驱动框架详解 | 28:15 |
P138 | 第35.2讲 Linux Regmap API实验-驱动编写测试 | 22:33 |
P139 | 第36.1讲 Linux IIO驱动实验-为什么要用IIO框架 | 31:00 |
P140 | 第36.2讲 Linux IIO驱动实验-IIO驱动框架详解 | 41:50 |
P141 | 第36.3讲 Linux IIO驱动实验-IIO驱动程序编写之框架搭建 | 25:40 |
P142 | 第36.4讲 Linux IIO驱动实验-IIO驱动程序编写之通道配置 | 22:59 |
P143 | 第36.5讲 Linux IIO驱动实验-IIO驱动程序编写之iio_info编写 | 31:10 |
P144 | 第36.6讲 Linux IIO驱动实验-IIO驱动程序编写之传感器数据读写 | 35:00 |
P145 | 第36.7讲 Linux IIO驱动实验-IIO驱动程序编写之应用程序编写 | 20:17 |
P146 | 第37讲 Linux ADC驱动实验 | 23:09 |
#coding=utf-8
import os
import re
import sys
import time
if len(sys.argv) < 2:
print("Please input file!")
#time.sleep(3)
#sys.exit()
#FILE=sys.argv[1]
FILE="test.txt"
def list_merge():
with open(FILE, 'rb') as fp_read:
cnt = 0;
while 1:
buf = fp_read.readline()
if len(buf) > 0:
print(buf.decode("utf-8").strip("\r\n")+'|', end="")
else:
break
if (cnt + 1) % 3 == 0:
print()
cnt = cnt + 1
pattern_time = '(\d+:\d+)'
def time_calc():
with open(FILE, 'rb') as fp_read:
cnt = 0
days= 0
hour= 0
min = 0
sec = 0
while 1:
buf = fp_read.readline().decode("utf-8")
if len(buf) > 0:
if len(buf.strip("\r\n")) == 0:
min = min + int(sec / 60)
sec = sec % 60
hour=hour + int(min / 60)
min = min % 60
days=days + int(hour/ 24)
hour=hour % 24
print(str(cnt), str(days), str(hour), str(min), str(sec))
cnt = 0
days= 0
hour= 0
min = 0
sec = 0
else:
searchObj = re.search(pattern_time,buf,re.I)
if searchObj:
tmp_min = buf[searchObj.span()[0]:searchObj.span()[0]+2]
min = min + int(tmp_min)
tmp_sec = buf[searchObj.span()[1]-2:searchObj.span()[1]]
sec = sec + int(tmp_sec)
cnt = cnt + 1
else:
min = min + int(sec / 60)
sec = sec % 60
hour=hour + int(min / 60)
min = min % 60
days=days + int(hour/ 24)
hour=hour % 24
print(str(cnt), str(days), str(hour), str(min), str(sec))
#days= 0
#hour= 0
#min = 0
#sec = 0
break
if __name__ == "__main__":
#list_merge()
time_calc()
time.sleep(3)
sys.exit()