RHEL和UBUNTU搭建嵌入式开发环境及配置开发板(笔记)

来源:互联网 发布:淘宝ted baker 编辑:程序博客网 时间:2024/05/17 02:22

[S3C6410]

ARM1176
FLASH   256M
DDR        128M


先说一个自己发现的小技巧,在UBUNTU上面,虽然禁用了ROOT用户但是我们可以强制的切换过去.
因为普通用户对我们连开发版来说有点麻烦.

进入一个tty控制台,进入一个能执行sudo的用户.sudo su - 然后输入密码切换过去,然后修改了root用户的密码(可以不变,但要重新设置一次,然后退出登录,这是,你可以在这里登陆root用户了,之后你可以用startx来打开一个图形界面,这样就不用每次烦人的输入sudo ,在连接开发版的时候也方便很多)

一.安装配置minicom

接好开发板电源,网线和 串口线 或者 U转串线

1.安装:如果电脑上没有安装minicom,UBUNTU可以用apt-get install minicom(输入minicom回车,如果没有安装,系统会给出提示)安装,

UBUNTU安装minicom比较简单,不在赘述

RHEL可以挂载本系统安装镜像或者使用系统安装盘,配置yum进行安装.

mount ~/rhel6.iso /mnt/cdrom/ -o loop

vim /etc/yum.repos.d/rhel6.repo

写入以下内容:


[server]

name=Server

baseurl=file:///mnt/cdrom/Server

gpgcheck=0

清一下缓存:yum clean all

然后 yum -y install minicom

2.配置:

如果已经安装好了minicom,就可以进行配置了

minicom -s

出现以下配置选项:



进入第三个选项(串口设置设备),按A,使用RS232串口口线的,设置为/dev/ttyS0,

如果使用USB转串口,设置为/dev/ttyUSB0(可能是其他的,ls /dev/ttyUSB*可以查看)

按 E 设置 波特率/数据位数/结束位个数,设置为115200 8N1

按 F 取消硬件流控

按 G 取消软件流控


设置完成后回车,选择Save setup as dfl 设置为默认

然后选择Exit退出


退出minicom Ctrl+a 然后按q

以后启动minicom时:只需要输入minicom命令即可


二:配置TFTP

检查是否安装 netstat -a|grep tftp

UBUNTU 安装 apt-get install tftp-hpa(老版本是tftpd)

RHEL安装 yum -y install tftpd

创建tftp工作目录 mkdir /tftpboot/(也可以使用默认目录)

修改tftp配置文件 vim /etc/xinetd.d/tftp(UBUNTU vim /etc/export/tftp)

修改关键选项 disable 为 no

设置 server_args 后的目录为/tftpboot/

重启守护进程服务 service xinetd restart 


三:配置NFS

查看是否安装 rhel 可以用 rpm -q nfs-utils 安装用 yum -y install nfs-utils

(ubuntu 可以运行 service nfs-kernel-service restart 查看是否启动成功,来判断是否安装,安装用apt-get install nfs-kernel-server)(实际上NFS服务是守护进程,在重启该服务的时候会得到提醒)


mkdir /nfsroot

chmod 777 /nfsroot

修改配置文件

vim /etc/export

添加/nfsroot  *(rw,sync,no_root_squash)

重启服务 service nfs restart(ubuntu: service nfs-kernel-service restart)


四.烧写SD卡的u-boot

判断sd卡为那个设备,在插入sd卡之前,ls /dev/sd* 之后执行同样操作,查看多了哪个(后面有1,2等的为分区,没有的是这个存储设备)假设是sdb

进入工具文件夹

主机运行:./write_sd /dev/sdb ../image/u-boot-movi.bin


五.烧写Nand Flash 下的 u-boot

配置主机IP: 192.168.1.10

SD卡启动开发板,进入u-boot-sd

开发版 pri 查看环境变量

设置ip 

[root@sd]#:set serverip 192.168.1.10

[root@sd]#set ipaddr 192.168.1.20

[root@sd]#sav

[root@sd]#tftp 50008000 u-boot-nand.bin

[root@sd]#nand erase 0 40000

[root@sd]#nand write 50008000 0 40000

切换为Nand 启动

出现ECC错误可以执行在Nand模式下重新执行一遍上述操作 ,然后reset


六.下载内核启动内核

开发版:

#tftp 50008000 zImage

#bootm 50008000

七.挂载网络文件系统


主机

进入rootfs文件系统压缩包目录

#tar xvf rootfs.tar -C /nfsroot/

开发版:Ctrl+a 然后按w 开启换号

#set bootargs "root=/dev/nfs nfsroot=192.168.1.10:/nfsroot console=ttySAC0,115200"

#sav

#reset

#tftp 50008000 zImage

#bootm


八.设置自动启动

开发板:

#set bootcmd "tftp 50008000 zImage;bootm 50008000"

#sav


九.烧写内核到Nand Flash

(出现错误的话可能是因为在0x40000 到0x40000 + 0x300000的地址有坏块,在nand erase 的时候可以看到提示,这是可以向后偏移一段来写入)

#tftp 50008000 zImage

#nand erase 40000 300000(nand erase 200000 300000) (300000为偏移量)

#nand write 50008000 40000 300000(nand write 50008000 200000 300000)


 十.烧写文件系统到Nand Flash


#cp rootfs.tar /nfsroot/(或者将nfsroot下文件系统打包)


开发板:

(启动网络文件系统后)

#mount /dev/mtdblock2 /mnt(也可以是mtdblock3(一般比mtdblock2空间要大))

#tar xvf /rootfs.tar -C /mnt

#reboot


u-boot环境下:(根据上面的配置不同适当修改)

#set bootcmd "nand read 50008000 40000 300000;bootm 50008000" 

#set bootargs "root=/dev/mtdblock2 console=ttySAC0,115200"

#sav

#reset




开发嵌入式程序一般要在主机上进行,所以用NFS比较方便,因此要进行开发板程序时重新配回NFS即可

后面的博客将整理简单的对内核进行编译部分.









原创粉丝点击