嵌入式Linux入门笔记(基于全志)

本文介绍了Linux系统中使用NAND/SD卡启动、SPINAND与SPINORFlash的区别、根文件系统管理、触摸屏类型、Python映射、Ubuntu硬盘空间调整、ADB调试以及全志开发板的引脚修改等内容,还涵盖了无线网络配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常用名词

EMMC\NAND\SD卡启动

linux系统+代码固件将烧录到NAND\SD卡里面,上电后主芯片将从此处读取固件。
启动方式可修改:全志在sys_config.fex中可选择系统启动方式。

SPI NAND Flash 与SPI NOR Flash

区别介绍
https://baijiahao.baidu.com/s?id=1766680164250142017&wfr=spider&for=pc
Menuconfig中的简写:
SPI NAND Flash:简称 CONFIG_SUNXI_NAND ,NAND Flash,NAND 驱动
SPI NOR Flash:简称 CONFIG_SUNXI_SPINOR,NOR Flash, spinor 驱动

rootfs

根文件系统

RTP(电阻触摸屏) CTP(电容触摸屏)

常用操作

修改Menuconfig后make可能有许多模块选择请求

不知道怎么选择时,直接一路enter

(报错:Python not commod)python指令映射

Ubuntu系统中映射Python版本:

  1. 检查已安装的Python版本:ls /usr/bin/python*
  2. 创建Python版本映射:
    sudo ln -s /usr/bin/python2 /usr/bin/python
    sudo ln -s /usr/bin/python3 /usr/bin/python
  3. 验证Python映射是否生效。
    python --version

Ubuntu20的硬盘可使用空间与物理分配不符

Ubuntu20使用所有硬盘空间
df -hl #查看当前硬盘使用情况
sudo fdisk -l #查看挂载硬盘信息
sudo lvextend -l +100%FREE /dev/mapper/ubuntu–vg-ubuntu–lv #应用全部硬盘
sudo resize2fs /dev/mapper/ubuntu–vg-ubuntu–lv #重新计算容量
df -hl #查看当前硬盘使用情况

adb调试

  1. pc端安装adb软件
  2. 将软件路径添加到环境变量
  3. 将开发板通过usb线连接到电脑
  4. 进入运行,执行adb shell进入开发板终端
  5. 其余操作同linux常用命令

修改引脚

通常除非是开发板配套的SDK与例程,否则开发板引脚与SDK配置的驱动引脚是不匹配的。而且开发板上的不同驱动引脚可能存在冲突,例如:网口和屏幕使用了同一个引脚。
因此需要开发板的原理图,并打开SDK的board.dts或者sun8iw20pl.dtsi,来修改引脚对应。
修改方案参考SDK与开发板的配套手册。

全志例程

关联触摸与显示

在开发板系统中输入
ln -s /dev/input/event1 /dev/input/touchscreen

无线网络配置

启动无线网卡
ifconfig wlan0 up
搜索附近wifi
iw wlan0 scan | grep SSID
修改复制执行以下代码,配置wifi账号和密码。
echo "
update_config=1
network={
ssid=“Xiaoming” #WIFI名称
psk=“123456” # WIFI密码
}" > /etc/wpa_supplicant.conf
连接无线网络
wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf -B
配置 DHCP 自动分配 IP
udhcpc -i wlan0
查看是否连接成功
ping www.baidu.com

### Maven项目未生成Target目录的原因分析 在开发基于Maven的Java Web应用程序时,如果发现`target`目录未能按预期自动生成,则可能是由于多种因素引起的。通常情况下,在构建过程中,Maven会自动创建并填充此目录用于存储编译后的资源和输出文件。 #### 可能原因及解决方案 1. **IDE配置问题** 如果使用的是IntelliJ IDEA作为集成开发环境,可能存在某些设置不当的情况导致无法正确识别或处理项目的生命周期事件。建议验证IDE中的Maven插件是否已启用,并确认项目结构视图中显示的内容与实际磁盘上的文件一致[^2]。 2. **POM文件缺失必要的配置项** `pom.xml`是控制整个构建过程的核心文件之一。当其中缺少特定的配置条目时,可能会阻止目标路径下的子目录(如`WEB-INF/classes`, `META-INF`等)以及静态资源(像JavaScript, CSS文件夹)被正确复制到最终打包位置。可以通过向`<build>`部分添加如下所示的资源配置来修正这一状况: ```xml <build> ... <resources> <resource> <directory>src/main/webapp</directory> <includes> <include>**/*.*</include> </includes> </resource> <!-- 添加其他需要同步至target的源码根目录 --> </resources> ... </build> ``` 3. **构建命令执行失败** 若尝试通过命令行工具或其他方式触发构建操作而遭遇错误提示,则应仔细检查日志信息以定位具体障碍所在。常见的陷阱包括网络连接不稳定影响远程仓库下载速度、本地缓存损坏造成依赖解析异常等等。确保所有必需组件均已成功加载后再重试构建流程即可恢复正常行为模式[^4]。 为了使新建立的JS文件能够顺利被打包进入`target`目录内的相应位置,除了上述调整外还需要注意保持正确的相对路径关系;即保证它们位于`src/main/webapp/`之下而不是直接置于顶层项目空间内。 ```bash mvn clean install -U ``` 该指令强制更新所有过期依赖并将最新版本纳入当前工作副本之中,有助于排除因版本冲突引发的一系列连锁反应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值