当前位置: 首页 > news >正文

【linux内核驱动day01】

linux内核驱动:

开发板串口线接USB-TTL,连接虚拟机

找到ttyUSB0说明连接成功

sudo minicom -s进入按照文档设置

exit from minicom

再执行 sudo minicom,开发板上电,弹出很多指令

设置开发板地址 :

ifconfig eth0 192.168.1.100/24 up

确认虚拟机地址:192.168.1.158

在开发板终端里ping 虚拟机 :

ping 192.168.1.158

在Linux终端中ping开发板:

ping 192.168.1.100

挂载:

查询虚拟机里的文件目录:

在开发板终端里执行:

mount -o nolock,nfsvers=3 192.168.1.158:/home/linux/nfs /mnt

cd /mnt中查询目录

与虚拟机终端里一致,挂载成功

在虚拟机的rootfs目录下,写一个main.c文件,打印hello world

编译:

arm-linux-gnueabihf-gcc main.c -o imxhello

在开发板终端中运行:

./imxhello

在虚拟机写程序,开发板终端挂载,运行

编译器是用来翻译的

使用gcc 编译的,是给x86运行的

使用 arm-linux-gnueabihf-gcc 编译出来的  是给开发板(ARM)运行的

uboot存在于SD卡,tftp下载zlmage,nfs挂载rootfs

1、sd卡中存在烧写好的uboot

2、在ubuntu的tftp服务目录下必须存在zlmage(+dtb)

3、在ubuntu的nfs服务目录下必须存在rootfs

配置nfs的配置文件:

sudo vim /etc/exports

配置tftp配置文件:

sudo vim /etc/default/tftpd-hpa

将zlmage和imx6ull-alientek-emmc.dtb拷贝到tftpboot目录下

将rootfs.tar.bz2拷贝到nfs目录下并解压。解压命令:tar -xvf rootfs.tar.bz2 -C rootfs

uboot命令:(uboot启动倒计时为0前按回车进入uboot命令行)

  • help :?帮助
  • printeny(print):打印环境变量
  • setenv     bootdelay   5
  • saveenv   保存环境变量
  • setenv    环境变量名 :删除环境变量

Ping:

  • setenv ipaddr 192.168.1.158
  • setenv ethaddr 00:04:9f:04:d2:35
  • setenv gatewayip 192.168.1.1
  • setenv netmask 255.255.255.0
  • setenv serverip 192.168.1.158(下载时候用)
  • saveenv

uboot阶段的ping 是单向的,只能在uboot中Ping虚拟机,不能在虚拟机中ping  uboot

下载:

tftp 0x80800000 zlmage :下载zlmage到内存的0x80800000地址处

tftp 0x83000000 imx6ull-alientek-emmc.dtb


bootz 0x80800000 - 0x83000000

启动内存0x80800000地址处的内核

http://www.dtcms.com/a/398839.html

相关文章:

  • 网站开发人员趋势外贸网站和内贸
  • 2025最新超详细FreeRTOS入门教程:第二十四章 FreeRTOS与低功耗设计
  • 如何做有效的Bug管理?
  • Metal - 4.深入剖析顶点函数(Vertex Function)
  • 收费网站开发百度关键词优化策略
  • 营销型企业网站群策略网站建设维护与推广
  • 【JNA】JAVA使用JNA调用C++ dll文件(2)JNA 对接代理DLL
  • 新网 主办网站已备案建站系统做网站
  • 网站备案 历史seo流量排行榜神器
  • C++ 中的 static 关键字:类成员、局部变量与单例模式
  • 【 设计模式 | 行为型模式 观察者模式 】
  • seo 网站案例怀化优化网站排名
  • Rust 最小可行 MQ 架构实现指南
  • 公司网站设计报价电商网站建设设计报告总结
  • 【Python】迭代器
  • 【数据迁移】:MySQL 环境下【大表定义变更】一致性保障与数据迁移优化方案
  • 织梦禁止网站右击重庆企业
  • 金融系统的“防火墙”:数字孪生如何模拟风险攻击
  • 埃拉托斯特尼筛法(Sieve of Eratosthenes)——原理、复杂度与多种 C++ 实现
  • 【大模型-金融】Trading-R1 多阶段课程学习
  • 建网站知乎怎么样上传网站资料
  • jupyter notebook 使用集锦(持续更新)
  • 部署开源PPTagent 生成工具
  • Python的大杀器:Jupyter Notebook处理.ipynb文件
  • 物流网站建设与管理规划书七牛wordpress插件
  • 【同源策略】跨域问题解决方法(多种)
  • 【数据结构】链表 --- 单链表
  • ArcGIS JSAPI 高级教程 - 自由绘制线段、多边形
  • 【2025最新】ArcGIS 点聚合功能实现全教程(进阶版)
  • Express使用教程(二)