imx6驱动

linux启动流程

1,bootloader,一个裸机程序,为linux启动准备环境,引导linux启动

1)初始化CPU(工作模式)

2)初始化异常向量表

3)初始化堆栈

4)关闭中断

5)关看门狗(定时复位)

6)关Cache

7)关闭MMU(虚拟地址→物理地址)

8)初始化内存

9)初始化相关设备(串口、网卡)

10)集成相关协议

11)搬移内核到内存,向内核传参(控制台、根文件系统类型及位置)

12)启动内核

13)从此bootloader不再控制CPU,CPU控制权移交给内核

2,linux kernel(内核),一个复杂的、永不停息的程序

1)文件管理

2)进程管理

3)网络管理

4)内存管理

5)设备管理

linux启动完成后加载(挂载)根文件系统,init->services,shell -> userapp

3,rootfs,根文件系统(挂载的第一个文件系统),一堆文件的集合

文件系统:按一定格式组织的一堆文件

1)系统命令

2)配置文件

3)应用程序(工具,用户程序)

4)普通文件(文本文件、mp3、mp4、图片)

5)启动脚本(系统服务、安装的应用程序)

RAM和ROM类型

RAM

SRAM:静态,用触发器电路存储数据,无需刷新,速度极快但成本高、容量小。

DRAM:动态,用电容存储数据,需要定时刷新来维持电荷,速度稍慢但成本低、容量大,是构成内存的基础

SDRAM:同步动态,与 CPU 时钟信号同步工作,提升了数据传输效率,是 DRAM 的主流升级形态

DDRn:Double Data Rate SDRAM,在时钟的上升沿和下降沿都能传输数据,带宽比 SDRAM 翻倍

内存(DDR SDRAM)属于RAM → DRAM → SDRAM 分支,是嵌入式设备的主存 / 运行内存,也是程序运行时的临时存储区域

ROM

PROM:可编程,出厂时为空白,可由用户一次性编程写入数据,但写入后无法修改。早期用于固化固定功能的程序,现在基本被 Flash 取代。

EPROM:可擦除可编程,支持多次擦写,但需要用紫外线照射芯片窗口来清除数据,操作繁琐。曾用于需要偶尔更新程序的场景,现已被 EEPROM 和 Flash 淘汰

EEPROM:电可擦除可编程,支持电信号擦写,可按字节修改数据,擦写速度慢但灵活性高

flash(闪存)属于 ROM → EEPROM 的大容量升级版,是嵌入式设备的永久存储介质,相当于电脑的固态硬盘

linux配置

1,先通过网线将imx6和windows连接起来,向imx6中烧写操作系统,以如下软件将Ubuntu和imx6建立联系

2,连接好后打开Windows搜索设备管理器,点开端口查看类型

3,打开软件点击相同的类型

4,通电imx6

5,通过网线与Ubuntu建立连接,需要配置IP地址

1)查看IP地址:ifconfig

2)修改IP地址:ifconfig eth0 192.168.1.100(复制/粘贴:Ctrl+Shift+c/v)

3)修改选项

6,Ubuntu修改

1)打开网络配置文件配置成如下形式 sudo vim /etc/network/interfaces

其中address后就是要修改的IP地址

2)共享文件,sudo vim /etc/export,将其内容改成如下(一般只有最后一行不同,毕竟其他行被注释了)

7,回到SecureCRTPortable.exe中共享目录

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

注:不要先进入mnt中,挂载后退出重进,就会显示Ubuntu中的文件,重复挂载会报错

8,编写程序

在SecureCRTPortable.exe没有gcc编译器,而且通过gcc编译的文件a.out也不识别

所以要通过arm-linux-gnueabihf-gcc hello.c -o hello来编译

注意:每次重启imx6都要在软件中重新修改IP地址和挂载

相关推荐
姜鱼问生6 小时前
Nginx 缓存命中率监控:从 X-Cache-Status 到实时统计
运维·nginx·缓存
Apipi*7 小时前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理
天启HTTP8 小时前
爬虫防封核心原理:IP轮换机制与风控规避逻辑
linux·服务器·网络·爬虫·tcp/ip
运维行者_8 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
此时不提桶,更待何时9 小时前
06-14-A-Kafka集群运维与迁移实战详解
运维·kafka
hz5678910 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC10 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
优橙教育10 小时前
零基础学AI应用开发要多久?3个月能到什么水平
服务器·开发语言·网络·php
IT研究所10 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
BLUcoding10 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom