自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Iron_man的博客

嵌入式Linux

  • 博客(22)
  • 资源 (6)
  • 收藏
  • 关注

原创 复杂指针阅读技巧

int(*p1)(int*,int(*f)(int*));//p1为指针,指向函数,指向函数的第一参数为int*类型,返回值为int;f也为函数指针,指向函数的参数为int*类型,返回值为intint(*p2[5])(int*);//p2为数组,数组包含5个元素,元素为指针,指向函数,函数类型为int(int*)==>p2为指针数组int(*(*p3)[5])(int*);//p3为指针,数组指针,指向的数组有...

2021-05-29 20:19:43 152 1

原创 一级指针、二级指针的用法本质总结(指针的本质理解)

一、早期学习C语言的时候,C指针无疑就是最大的拦路虎,首先是概念不好理解,其次是就算理解了概念,在实际使用指针或者在代码中碰到指针的时候(尤其是一级、二级指针同时出现的时候),就更加模糊不清,最近花时间看了很多资料后终于完全理解了指针的用法本质(包括一级指针和二级指针),个人觉得这对平时我们的工程实践至关重要。至于指针的概念和含义,请自行查阅网络教材。以下这段加粗的内容请反复阅读理解,直至真正理解其含义掌握其精髓:1.当想通过外部函数修改变量值的时候,仅仅使用形参传值的做法是不能达到目的的,原因.

2021-05-11 00:12:02 1111

翻译 吴恩达最受欢迎AI课程机器学习Cousera《Machine Learning》课程完整版

百度网盘链接:https://pan.baidu.com/s/1jNvLV-dqO9DhkMsmmPlI8w 提取码: a644内容说明:1. 本课程简介:这门课基本涵盖了机器学习的主要知识点:线性回归、逻辑回归、支持向量机、神经网络、K-Means、异常检测等。课程中没有复杂的公式推导和理论分析,让机器学习初学者能够快速对整个机器学习知识点有比较整体的认识,非常方便初学者快速入门。2...

2020-10-05 09:45:41 5289 3

转载 C++中this与*this的区别

错误认知:return *this返回当前对象, return this返回当前对象的地址(指向当前对象的指针)。正确答案为:return *this返回的是当前对象的克隆或者本身(若返回类型为A, 则是克隆, 若返回类型为A&, 则是本身 )。return this返回当前对象的地址(指向当前对象的指针), 下面我们来看看程序吧:#include <iostream> using namespace std; class A { public:

2020-05-15 23:33:54 511 1

原创 韦东山第3期嵌入式Linux项目-视频监控-3-在LCD上显示摄像头图像

韦东山第3期嵌入式Linux项目-视频监控-3-在LCD上显示摄像头图像

2019-07-10 23:04:41 3396

原创 韦东山第3期嵌入式Linux项目-视频监控-2-从零写USB摄像头驱动(UVC驱动)

一、从零写USB摄像头驱动—分析描述符USB设备插入电脑后,电脑上就会相应的显示其是某种设备(U盘,摄像头,信号采集卡等等),表明这些设备“身份”的就叫做设备描述符。(就是一些格式化的数据)USB摄像头的描述符:使用 lsusb 工具可以将USB设备的详细信息打印出来,因此分析该工具的源码可以帮助我们打印描述符信息:lsusb.c:main dumpdev ...

2019-07-02 20:22:08 6811 5

原创 韦东山第3期嵌入式Linux项目-视频监控-1-v4l2视频框架分析

韦东山第3期嵌入式Linux项目-视频监控-1硬 件 :电脑、 JZ2440 开发板、 UVC 摄像头(推荐使用) 系 统 : Ubuntu9.10// 即光盘提供的那个虚拟机系统Uboot : u-boot-2012.04.01 // 即毕业班移植新 uboot 那个Kernel : linux-3.4.2 // 即毕业班移植新内核那个文件系统:fs_mini_mdev_new.tar...

2019-06-26 23:18:13 5578 4

原创 毕业班第2课移植最新UBOOT

毕业班第2课移植最新UBOOT(UBOOT 1.1.6为2006年版本)一.下载、建立source insight工程、编译、烧写、如果无运行分析原因tar xjf u-boot-2012.04.01.tar.bz2cd u-boot-2012.04.01make smdk2410_config //配置ubootmake由于编译器版本的问题编译不成功,需要升级编译器:安装最新的ar...

2019-06-17 11:06:59 307

原创 第30课 驱动调试

第30课 驱动调试打印:printk,自制proc文件自制工具根据内核打印的段错误信息分析修改内核第1.1节 驱动调试之printk原理1. 内核处理uboot传入的参数:使用printk将内核的一些信息打印出来(通过串口或者LCD屏幕),那么printk函数中就必然会有操作这些硬件的实现。但是printk最终会将信息打印到哪里呢?(串口或者LCD)这是由uboot中的 b...

2019-06-04 21:13:09 737

翻译 第28课 hotplug/uevent机制

第28课 hotplug/uevent机制第一节 hotplug/uevent机制的介绍热拔插设备先来回顾之前的按键字符设备驱动程序:首先创建一个file_operations结构体,之后在入口函数中注册该设备,然后再创建类,再在类下创建设备:这里有个问题:为什么要在注册了设备之后要创建类并在类下创建一个设备呢??这么做的目的是为了让mdev根据这些信息来创建设备节点mdev又...

2019-05-13 20:20:17 433

翻译 第 27 课 DMA 驱动程序

第1节 DMA的引入

2019-05-11 23:00:36 929

转载 磁盘结构简介

磁盘结构简介  今天在学习《鸟哥的Linux私房菜》时,鸟哥讲到了磁盘结构,看得我云里雾里的。索性网上搜索,看到一篇比较好的博文,主要是图例比较精准,结合文字描述很快就搞明白了。 这里讲的主要是网上所谓的老式磁盘,它是由一个个盘片组成的,我们先从个盘片结构讲起。如图1所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将...

2019-03-23 11:13:38 382

转载 linux内核分析——CFS(完全公平调度算法)

linux内核分析——CFS(完全公平调度算法) 1.1&amp;nbsp;CFS原理&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cfs定义了一种新的模型,它给cfs_rq(cfs的run&amp;nbsp;queue)中的每一个进程安排一个虚拟时钟,vruntime。如果一个进程得以执行,随着时间的增长(也就是一个个tick的到来),其vruntime将不...

2019-03-08 09:04:09 1031

原创 搭建Kubernetes集群踩坑日志之coreDNS 组件出现CrashLoopBackOff问题的解决

这段时间一直在学习基于Docker和Kubernetes搭建服务器集群的知识,由于之前没有云计算相关的基础,过程可以说是非常难受了,开始跟着大佬的帖子一步步来,即使这样也是踩了无数的坑。这里先贴上一位大佬的教程贴:个人觉得这篇帖子算是基于高版本Kubernetes构建集群环境比较全面的帖子了。使用Kubeadm(1.13+)快速搭建Kubernetes集群https://www.cnb...

2019-02-26 17:30:50 60201 7

原创 韦东山嵌入式Linux学习笔记之——第12课第8节 字符设备驱动程序之定时器防抖动

注:本文部分内容摘自《鱼树学员笔记》。当按键按得比较快的时候,这里出现了两次中断值,也即产生了抖动。这里产生了“抖动”,按键是机械开关,按下松开时里面的金属弹片可能抖动了好几次。这种抖动产生了多次“脉冲”导致多次中断。方法:使用定时器来防抖动。定时器有两个概念:① 超时时间:② 时间到了之后的“处理函数”。可以在中断处理中,如定时 10ms 后处理确定按...

2018-07-16 20:29:54 554

原创 韦东山嵌入式Linux学习笔记之——代码重定位005_重定位和清除BSS段的C函数实现

能用C函数就不要用汇编。进入start.S中修改代码:任务就是在init.c中分别实现上述两个C函数。void copy2sdram(volatile unsigned int *src, volatile unsigned int *dest, unsigned int len) /* src(r1), dest(r2), len(r2-r1) */{ unsigned int i = ...

2018-07-14 16:16:48 458

原创 韦东山嵌入式Linux学习笔记之——代码重定位004_代码重定位与位置无关码

将程序(包含可运行的代码和数据)从一个位置(flash)移动至另外一个位置运行或进行数据的读写成为代码重定位。代码重定位的根本原因是改善某个存储介质的某些缺陷(例如存取速度,读写限制等等)。在实际中我们可以只重定位程序的某一段(如数据data段或者代码text段),或者将整个程序进行重定位。现在考虑将整个程序重定位至SDRAM所需要的技术细节:① 从flash中将程序复制到(重定位)SDRAM,要...

2018-07-14 14:49:02 947 1

原创 韦东山嵌入式Linux学习笔记之——代码重定位003_链接脚本的解析与改进

一、链接脚本的解析注意:① 链接脚本中首先放所有程序的代码段text,那么这些程序的代码段按照什么样的顺序排列呢?在Makefile中有这些程序的排序② 这里的data数据段设置了加载地址0x800,表明在生成的bin文件中,data段在0x800的位置,而前面没有指定加载地址的text代码段和rodata只读数据段存放在bin文件中的0地址开始的位置。③ data数据段的重定位功能由前面的tex...

2018-07-13 22:36:41 445 1

原创 韦东山嵌入式Linux学习笔记之——代码重定位002_链接脚本的引入

① NOR启动:② nand 启动:上次讲到的g_char不能按照程序正确输出的原因是nor启动的时候g_char在nor flash中,其不可写的特性决定了输出结果。现在能否修改Makefile让nor启动时讲代码拷贝到SDRAM中,这样就可以实现全局变量的可读可写了。现在想在nor flash启动的时候将其中的代码段拷贝至SDRAM中0地址起始的空间,将全局变量g_char拷贝至0x30000...

2018-07-13 11:33:52 774 1

原创 韦东山嵌入式Linux学习笔记之——代码重定位001_段的概念_重定位的引入

在2440中,cpu的命令可以通过内存控制器直接到达SRAM、SDRAM、NOR flash中,因此可以将代码直接放在上述三种内存单元中直接运行,相应地就可以设置为SRAM、SDRAM或者NOR flash 启动机制。但是在实际应用中我们也可以设置nand flash启动,这是为什么呢?原因是这里用到了代码重定位的机制。(1)nand flash 启动: 随之而来的有一个问题,就是如果程序&gt;...

2018-07-12 21:39:06 696

原创 韦东山Linux学习笔记之——虚拟机(Ubuntu 16.04)同时连接外网和内网三者互通的方法

在笔者之前发布的文章中说明了在没有路由器的情况下PC、虚拟机和开发板三者互通的方法。今天在学习过程中遇到一个问题,就是如果想在虚拟机服务器上下载编译器更新包,那么按照之前的方法仅仅让虚拟机服务器桥接PC的有线网卡组成PC、虚拟机和开发板三者的有线局域网是不够的。因为按照之前的方法,虚拟机处于封闭的局域网中,在之前的情况下只有PC可以正常连接外网。笔者经过试验找到了让虚拟机可以同时桥接内网局域网(三...

2018-07-11 16:48:00 3284 1

原创 韦东山嵌入式Linux学习笔记之环境搭建——没有路由器情况下使PC、虚拟机和开发板三者互联的方法

最近学习韦东山老师的嵌入式Linux第一期,学习中遇到了PC、虚拟机和开发板三者互联的问题,看了配套资料的三者互联的教程文档后发现如果要三者互通就必须要有路由器作为中间桥梁,但是笔者的教研室网络环境比较复杂,不太适合原来教程中所提到的几种方法,故跟同学讨论决定实验在没有路由器的情况下能否实现三者的互通,最终在将有线网卡和无线网卡都用到的情况下实现了三者的互通,并且还不影响电脑正常上网。笔者的网络环...

2018-07-02 17:12:55 2720 3

量子通信理论研究 清华优秀博士论文!

量子通信理论研究 清华优秀博士论文! 能适用于相关通信行业前瞻!

2015-04-19

STM32F103ZET6_ LQFP144+LQFP48最小系统板

STM32F103ZET6_ LQFP144+LQFP48最小系统板,供大家学习之用,现在把它分享给大家。需要说明的是LQFP144和LQFP48的引脚已经全部引出,配备有一键下载电路,还设计了两个测试引脚功能用的蓝色LED,非常的方便。可直接打样加工,已经测试过。

2014-03-17

首发最全编程高手的Source Insight 配置文件集合

最新整理的高手经验之Source Insight 配置文件,欢迎大家下载!!!

2013-08-20

首发最全sourcelight配置文件集合!

首发最全sourcelight配置文件集合!多方收集到的sourcelight配置文件,有兴趣的朋友可以下载

2013-08-13

空空如也

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

TA关注的人

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