![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ARM学习笔记
被选召的孩子
细雨骑驴入剑门
展开
-
ARM学习笔记之驱动程序篇----U-boot
一,U-boot入门1.1.1 编译U-boot1,解压uboot文件,我学习用的是tiny6410的开发板,所以解压uboot_tiny6410.tar.gz,进入uboot_tiny6410目录。tar xvzf uboot_tiny6410.tar.gzcd uboot_tiny64102,配置并编译make tiny6410_configmake ARCH=ar...原创 2018-12-16 20:00:57 · 409 阅读 · 0 评论 -
Zynq学习笔记二之zynq_axi4_lite从机编写
//注意:1,axi_lite是一个字符一个字符传输;2,保证先锁地址再写数据module dut_axi_lite_slave #( parameter integer C_S_AXI_DATA_WIDTH=32, parameter integer C_S_AXI_ADD_WIDTH=6)(//时钟和复位信号 input wire S_AXI_ACLK,...原创 2019-03-11 09:56:54 · 955 阅读 · 0 评论 -
Zynq学习笔记之zynq_AXI4_Lite总线详解
1,AXI总线与AXI接口以及AXI协议总线,接口和协议,总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由数据线,地址线,控制线等组成。接口是一种连接标准,有常常被称之为物理接口。协议就是传输数据的规则。1.1 AXI总线概述在ZYNQ中支持三种AXI总线,拥有三种AXI接口,当然用的都是AXI协议。其中三种AXI总线分别为:AXI4:(For high-perfor...原创 2019-02-25 14:53:37 · 4057 阅读 · 3 评论 -
ARM学习笔记之驱动程序篇八----LED设备驱动
一,字符设备控制技术1.2 设备控制-应用函数在用户空间,使用ioctl系统调用来控制设备,原型如下:int ioctl(int fd,unsigned long cmd)//fd:要控制的设备文件描述符//cmd:发送给设备的控制命令//...:第三个参数是可选的参数,存在与否是依赖于控制命令(第二个参数)1.3 设备控制-驱动函数当应用程序使用ioctl系统调用时...原创 2019-02-03 18:28:37 · 420 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇六----系统调用
1.9 系统调用1.9.1 系统调用概述计算机系统的各种硬件资源是有限的,在现代多任务操作系统上同时运行的多个进程都需要访问这些资源,为了更好的管理这些资源进程是不允许直接操作的,所有对这些资源的访问都必须有操作系统控制。也就是说操作系统是使用这些资源的唯一入口,而这个入口就是操作系统提供的系统调用(System Call)。在linux中系统调用是用户空间访问内核的唯一手段,除异常和陷入...原创 2018-12-18 22:13:59 · 382 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇五----内核链表
1.8 linux内核链表1.8.1 内核链表简介 链表是一种常用的数据结构,它通过指针将一系列数据节点连接成一条数据链。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链的空间损失。1.8.2 内核链表结构struct list_head{ str...原创 2018-12-18 22:06:27 · 307 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇四----内核管理子系统
1.7 linux 内核管理子系统 1.7.1 内存管理子系统1,管理模型内存管理系统可以分为两部分,分别是内核空间内存管理和用户空间内存管理:内存管理子系统的职责是:进程请求内存时分配可用内存,进程释放内存后回收内存,以及跟踪系统内存使用情况。现代操作系统要求能...原创 2018-12-17 22:18:22 · 321 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇三----内核模块
1.6 内核模块1.6.1 内核模块基础知识 内核模块是Linux内核向外部提供的一个插口,其全称为动态可加载内核模块(Loadable Kernel Module,LKM),我们简称为模块。Linux内核之所以提供模块机制,是因为它本身是一个单内核(monolithic kernel)。单内核的最大优点是效率高,因为所有的内容都集成在一起,但其缺点是可扩展性和可维护性相对较差,模...原创 2018-12-17 21:57:00 · 787 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇七----字符设备驱动
1.11 字符设备驱动模型在任何一种驱动模型中,设备都会用内核中的一种结构来描述。字符设备在内核中使用struct cdev来描述。struct cdev{ struct kobject kobj; struct module *owner; const struct file_operations *ops;//设备操作函数集 struct list_h...原创 2018-12-22 11:29:00 · 465 阅读 · 0 评论 -
ARM学习笔记之驱动程序篇二----Linux内核简介及制作,文件系统的制作
1.2 Linux内核简介1.2.1 Linux体系结构 Linux系统主要分为两个部分:User Space(用户空间)和kernel Space(内核空间) 用户空间包括:用户应用程序(User Application)和C 函数库(GNU C Library). 内核空间包括:系统调用接口(System Call Interface),内核(Kernel)和...原创 2018-12-16 21:19:45 · 445 阅读 · 0 评论 -
Zynq学习笔记三之zynq_axi4_lite从机编写(gpio)
定义了reg0(数据寄存器),reg1(控制寄存器),reg2(输入/输出)`timescale 1ns / 1psmodule axi_gpio_my( input S_AXI_ACLK, input S_AXI_ARESETN, inout [3:0]gpio, //AR channel input S_AXI_ARVAL...原创 2019-03-11 15:15:34 · 864 阅读 · 1 评论