自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 海康威视2026届校招面经(内含内推码)

海康威视2022届秋招内推码:V7FIX4有效期至2021.12.31欢迎加入海康哦有什么问题可以直接留言

2021-07-27 20:27:40 2889 7

原创 海康威视26届秋招内推码

海康威视22届秋招内推码:V7FIX4有效期至2021.12.31欢迎加入海康哦

2021-07-06 09:08:42 11

原创 ARM汇编详解

ARM汇编为什么需要学习ARM汇编?因为芯片上电后,sp指针还没有初始化,c语言环境还没有准备好,不能执行c代码,所以需要ARM汇编设置好C语言环境,比如初始化DDR、设置sp指针。Cortex-A7 使用的是 ARMv7-A 指令集。C 语言中的函数调用涉及到出栈入栈,出栈入栈就要对堆栈进行操作,所谓的堆栈其实就是一段内存,这段内存比较特殊,由 SP 指针访问,SP 针指向栈顶。芯片一上电 SP 指针还没有初始化,所以 C 语言没法运行,对于有些芯片还需要初始化 DDR,因为芯片本身没有

2021-01-27 14:58:34 1543

原创 ARMA7运行模式及寄存器组

ARM A7共有9种运行模式,用户模式(非特权模式)+8种特权模式。模式间相互转换通过中断或异常,每一种模式都有一组寄存器供异常处理程序使用,这样的目的是为了保证在进入异常模式以后,用户模式下的寄存器不会被破坏。ARM 架构提供了 16 个 32 位的通用寄存器(R0~R15)供软件使用,前 15 个(R0~R14)可以用作通用的数据存储,R15 是程序计数器 PC,用来保存将要执行的指令。ARM 还提供了一个当前程序状态寄存器 CPSR 和一个备份程序状态寄存器 SPSR,SPSR 寄存器就是 C

2021-01-27 13:08:19 1161 2

原创 Linux  INPUT子系统实验

按键、鼠标、键盘、触摸屏都属于输入设备,针对这些设备linux内核提供了一个叫做input的子系统框架来处理输入时间,本质上还是字符设备,只是在此基础上加上了input框架,用户只需要负责上报输入事件,input核心层负责处理这些事件。Input子系统分为input驱动层、input核心层、input事件处理层,最终给用户空间提供可访问的设备节点。采用了驱动分层模型,系统框图如下:这三层的分工如下: 驱动层:输入设备的具体驱动程序,比如按键驱动程序,向内核层报告输...

2020-07-29 21:49:32 421

原创 linux MISC 驱动实验详解(代码)

MISC驱动叫作杂项驱动,就是当我们板子上的某些外设无法进行分类的时候就可以使用MISC驱动。其实就是最简单的字符设备驱动,通常嵌套在platform总线驱动中。关于设备号:MISC设备驱动的主设备号都为10,不同的设备使用不同的从设备号。MSIC驱动会自动创建cdevmiscdevice结构体:其中minor/name/fops需要我们设置设置好misdevice结构体之后,需要使用misc_register函数向系统注册一个MISC设备使用这个函数相当于...

2020-07-29 17:31:49 431

原创 uboot启动linux内核流程分析(三)

uboot bootz命令流程图Uboot启动linux内核是使用bootz命令,bootz是如何启动linux内核?uboot的生命周期是怎么终止的?linux是如何启动?启动linux内核的时候都会用到一个重要的局部变量:images,images在文件cmd/bootm.c中有定义。images是bootm_headers_t类型的全局变量,bootm_headers_t是个...

2020-07-08 22:03:53 1078

原创 uboot启动流程关键函数的介绍(二)

在uboot启动流程关键函数介绍(一)介绍_main函数的过程,至此以将uboot的代码拷贝到DDR中,下面主要讲解uboot命令的相关处理函数。run_main_loop函数(在common/board_r.c中):uboot启动后3秒倒计时,如果在3秒倒计时结束前按下回车键,那么就会进入uboot的命令模式,如果没有按下回车键,那么就会自动启动linux内核。先进入死循环,死循环中有一个main_loop函数(在common/main.c中定义) main_loop函数:调用...

2020-07-08 14:06:54 914

原创 uboot启动流程关键函数的介绍(一)

Uboot的入口在uboot根目录下的uboot.lds(只有编译u-boot才会出现)Uboot.lds用来描述输出文件的内存布局,也就是确认程序的运行地址Ubbot.lds为代码入口点:_start,_start在文件arch/arm/lib/vectors.S中有定义。Vectors段保存了中断向量表,vector.S的代码保存在vectors段中。Arch/arm/cpu/armv7/start.s编译出来的代码放在中断向量表后。其他的代码厨房在text段中。Ub..

2020-07-07 22:16:04 1365

原创 linux GCC详解

1、GCC的使用GCC 就是一个翻译官,翻译组织,将高级语言翻译成机器语言(会根据后缀名进行翻译)gcc –v 可以查看gcc的版本(判断自己是否安装)文件后缀名的重要性:gcc会根据文件后缀名去调用不同的成员(gcc -c、gcc-o等等)翻译的一般形式为:gcc –o 输出的文件名 输入文件名注:–o 输出的文件名这是一个整体,不能分开gcc -v -o 输出的文件名 输入文件名(加上-v可以显示编译过程)2、gcc 编译过程分为4个步骤,其中包括预处...

2020-06-08 21:15:51 1819

原创 MYSQL 常见约束

含义:一种限制,用于限制表中的数据,为了保证数据的准确性和可靠性分类:六大约束NOT NULL 非空,用于保证该字段的值不能为空DEFAULT 默认 , 用于保证该字段有默认值比如性别PRIMARY KEY 主键, 用于保证该字段的值具有唯一性,并且非空比如学号UNIQUE 唯一, 用于保证该字段的值具有唯一性,可以为空比如座位号CHECK 检查约束,【mysql中不支持】FOREIGN KEY 外键, 用于限制两个表的关系,用于保证该字段的值必须来自于主表的...

2020-05-16 13:10:26 241

空空如也

空空如也

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

TA关注的人

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