文章目录1.1面向对象1.2分层1.3分离8.4写示例代码1.5课后作业1.1面向对象字符设备驱动程序抽象出一个file_operations结构体;我们写的程序针对硬件部分抽象出led_operations结构体。1.2分层上下分层,比如我们前面写的LED驱动程序就分为2层:①上层实现硬件无关的操作,比如注册字符设备驱动:leddrv.c②下层实现硬件相关的操作,比如board_A.c实现单板A的LED操作1.3分离还能不能改进?分离。在board_A.c中,实现了一个led_operations,为LED引脚实现了初始化函数、控制函数:staticstructled_operationsb
一、简介本地编译:编译器和目标程序都是相同架构的编译过程。交叉编译:编译器运行在x86架构平台上,编译生成ARM架构的可执行程序,这种编译器和目标程序运行在不同架构的编译过程。1.1编译器类型arm-linux-gnueabihf-gcc:名称中的Linux表示目标应用程序是运行在Linux操作系统之上的,例如前面的hello.c程序。arm-none-eabi-gcc:名称中的none表示无操作系统,目标应用程序的运行环境是不带操作系统的,例如裸机代码、uboot、内核代码本身。不过在开发中比较多的开发者对所有程序都直接用arm-linux-gnueabihf-gcc来编译,包括裸机代码和u
文章目录1.写LED驱动程序1.1第一步先看原理图1.2第二步再看芯片手册:使能GPIO1.3第三步设置引脚是GPIO功能1.4第四步设置引脚是输出1.5第五步设置输出电平2.最简单的LED驱动程序2A.1LED操作方法_基于IMX6ULL2A.2最简单的LED驱动程序编程_基于IMX6ULL2A.2.1字符设备驱动程序框架2A.2.2实现什么功能2A.2.3上机实验怎么根据芯片手册去写一个点亮led驱动程序。1.写LED驱动程序1.1第一步先看原理图1.2第二步再看芯片手册:使能GPIO1.3第三步设置引脚是GPIO功能1.4第四步设置引脚是输出1.5第五步设置输出电平2.最简单的LED驱动
文章目录1.IMX6ULL开发板初次操作1.1100ask_imx6ull开发板硬件资源简介1.1.1100askimx6ullmini开发板1.2100ask_imx6ull开发板软件资源简介1.2.1开发环境1.2.2核心软件1.2.3文件系统1.3启动方式选择1.4串口连接1.4.1连接串口线和电源线、配置串口工具1.4.2安装USB串口模块驱动1.4.3使用MobaXterm软件打开串口1.4.4开发板登录名是root,无需密码1.5通过串口操作开发板1.6使用MobaXterm远程登录开发板1.7使用FileZilla在Windows和开发板之间传文件1.8开发板挂载Ubuntu的N
文章目录一.串口应用程序编程介绍1.串口的作用2.本套视频特别说明二.硬件知识_UART硬件介绍1.串口的硬件介绍2.串口的参数3.串口电平4.串口内部结构三.TTY体系中设备节点的差别1.傻傻分不清2.要讲历史了2.1电传机teletype2.2计算机需要控制2.2.1使用teletype2.2.2teletype被淘汰了2.2.3个人电脑和虚拟终端3.在Ubuntu上演示3.1各类设备节点的差别3.2/dev/ttyN(N=1,2,3,...)3.3/dev/tty03.4/dev/tty3.5Terminal和Console的差别3.6/dev/console四.TTY驱动程序框架1.行
文章目录1.Linux系统对中断的处理1.1进程、线程、中断的核心:栈1.1.1ARM处理器程序运行的过程1.1.2程序被中断时,怎么保存现场1.1.3进程、线程的概念1.2Linux系统对中断处理的演进1.2.1Linux对中断的扩展:硬件中断、软件中断1.2.2中断处理原则1:不能嵌套1.2.3中断处理原则2:越快越好1.2.4要处理的事情实在太多,拆分为:上半部、下半部1.2.5下半部要做的事情耗时不是太长:tasklet1.2.6下半部要做的事情太多并且很复杂:工作队列1.2.7新技术:threadedirq1.3Linux中断系统中的重要数据结构1.3.1irq_desc数组1.3.
文章目录1.使用USB网卡直连配置网络1.1连接方式介绍1.1.1硬件资源列表1.1.2连接方式1.2系统IP配置1.2.1windows配置1.2.2常见问题1.2.3vmware配置1.2.4ubuntu配置1.2.5开发板设置IP地址1.3三者互ping验证1.3.1windowspingubuntu1.3.2开发板pingwindows和ubuntu1.3.3windows和ubuntuping开发板1.4开发板使用网络服务1.4.1文件系统内使用nfs挂载ubuntu目录1.4.2开发板使用mobaxtermssh登录开发板1.5其它可选配置1.5.1配置Ubuntu连接网络1.5.
文章目录1.linux开发初了解1.1嵌入式Linux开发的基本概念1.1.1关于Git的背景介绍1.1.2关于repo的背景介绍1.13一些关于此背景知识的介绍1.1.4关于Linux内核的背景介绍1.1.5关于Bootloader的背景介绍1.2日常工作中开发流程是怎样?1.3常用的软件1.linux开发初了解1.1嵌入式Linux开发的基本概念嵌入式Linux系统,就相当于一套完整的PC软件系统。嵌入式Linux开发有哪些内容?Windows里含有:简单地说,嵌入式LINUX系统里含有①电脑一开机,那些界面是谁显示的?是BIOS,它做什么?一些自检,然后从硬盘上读入windows,并启动
i.MX6ULL-从零开始移植uboot-imx_v2020.04_5.4.70_2.3.0目录i.MX6ULL-从零开始移植uboot-imx_v2020.04_5.4.70_2.3.0前言1、环境搭建2、NXP官方原版UBOOT编译3、自己的单板UBOOT建立并编译4、SD卡驱动修改5、官方EVK开发板无用配置移除6、SD卡烧录uboot并启动测试7、SD卡和eMMC测试8、网卡驱动移植测试9、uboot启动信息修改10、uboot增加默认IP地址的环境变量前言 ~~~~~~~~ 一般的,我们做linux开发,移植uboot和kernel的时候并不需要从头开始移
1.imx6ull开发板和电脑通过网线连接参考《【正点原子】I.MX6U网络环境TFTP&NFS搭建手册V1.3.2.pdf》一书中的描述,配置了虚拟机,Ubuntu,windows,开发板的网络后做ping测试实验报如下错误开发板ping电脑(Ubuntu和windows)报错如下:root@ATK-IMX6U:~#ping192.168.31.199PING192.168.31.199(192.168.31.199)56(84)bytesofdata.From192.168.31.64icmp_seq=1DestinationHostUnreachableFrom192.168.31.64