命令回顾
串口命令
- ls -l /dev/ttyUSB0
- sudo chmod 777 /dev/ttyUSB0
- minicom
网络命令
- ifconfig eth0 192.168.0.230(开发板)
- watch sudo ifconfig eth0 192.168.0.1(主机)
- ping 192.168.0.1(在开发板上检查)(ping 192.168.0.230)(在普通终端上)
tftp命令
- sudo service tftpd-hpa restart
- netstat -anu|grep 69
- cd ~
- vi .bashrc
- arm-linux-gcc -v(成功后)
ARM开发板运行
- arm-linux-gcc -o hello2 hello.c(在普通终端进入所在目录下)
- tftp -r hello2 -g 192.168.0.1
- chmod u+x hello2
- ./hello2
嵌入式linux组成
- bootloader:u-boot
- 嵌入式linux内核
- 根文件系统
linux移植bootloader
- 移植源代码(修改源代码)
- 配置和交叉编译
- 下载到开发板
- bootloader.tar(复制到sq1612目录下)
- tar.xvf bootloader(解压)
- cd bootloader/u-boot(进入这个文件夹)
- make distclean(会出现权限不够的错误,不用管它)
- make mini2440_config(配置)
- make all(运行)
ls -l u-boot.bin
进行烧写
- 将数据线插到3.0的USB线上4
- 进行串口操作()
- cd ~/1612/1/sq1612/MiniTools-20130513
- chmod u+x *
- sudo ./start.sh
进入
- 烧写完成之后,蜂鸣器开始发出声音:在响的时候按回车键进入一个窗口,输入q之后,蜂鸣器不会发出声音了
linux内核(操作系统)
操作系统最基本的功能
- 进程调度
- 创建进程
- 信号量 内存管理
- 网络
将Neo和转换成我们自己的
- 退出miniTools界面
- 将linux-2.6.32.2.tar.gz复制到sq1612里
- tar zxvf linux-2.6.32.2.tar.gz
- cd linux-2.6.32.2/ du -sm(查看源代码大小)
配置
先将终端的界面变小,输入如下命令
- 如果出现错误,则需安装(网络安装,新开终端):sudo apt-get install libncurses-dev
- 安装之后再原来终端出:再输入make menuconfig
- 出现如下框子
手工定制linux内核
System Type -->
ARM system type(ARM Ltd.Versatile family)-->
Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443
- 选中那一项之后,按空格键则返回上一层,再按回车键则选中
返回上一层,选中如下
选择最后一项,按空格键就选中,此时不会返回上一层,完成
选好之后继续退出到最开始的界面
在前面加一个M
按空格键选中
所有的配置在这个文件
将文件夹复制到当前目录下
编译:make zImage
- 查看文件大小:ls -l arch/arm/boot/zImage
将文件拷贝到tftpboot文件夹中
下载到开发板上
(1)判断网络是否连通,如下表示连通正常
(2)输入:tftp 0x30008000 zImage
(3)输入:nand erase 0x60000 0x500000
(4)输入:nand write 0x30008000 0x60000 0x500000
(5)重启开发板
- 如上是错误的
根文件系统(用户空间最基本的内容)
什么叫文件系统
- Win:fat32,NTFS Linux:ext3,ext4 Embed:cramfs,jiffs/2,yaffs/2,nfs
最基本的文件系统
(1) 配置文件(用户名,密码,用户设备,)
Host /etc/
(2) shell command (shell 命令)
busybox
(3) 运行库
cross complie
(4)界面
(5)任务管理器
- 将文件mkyaffs2image-128与rootfs_qtopia_qt4-20160626.复制到sq1612
- tar zxvf mkyaffs2image-128(先解压工具文件)
- sudo cp usr/sbin/mkyaffs2image-128M /usr/sbin(将文件复制到)
- sudo chmod 777 /usr/sbin/mkyaffs2image-128M()
- sudo tar zxvf rootfs_qtopia_qt4(解压文件)
- cd rootfs_qtopia_qt4
将文件缩小一点,可以删除一些文件
- 再删除一个文件:/rootfs_qtopia_qt4-20160626/sudo rm -rf opt/Qtopia/
添加一个目录与一个文件
在开发板中,重新启动开发板,然后按回车,q.
ping 192.168.0.1 (检查网络是否连接很好)如下:连接很好
tftp 0x30008000 rootfs.img(下载)
nand erase 0x560000 0x1344780
- nand write.yaffs 0x30008000 0x560000 0x1344780
下载成功之后,重新启动开发板