700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Tiny4412】 Tiny4412开发环境搭建

【Tiny4412】 Tiny4412开发环境搭建

时间:2023-06-17 06:48:39

相关推荐

【Tiny4412】 Tiny4412开发环境搭建

创建一个ARM目录

mkdir /disk/A9 -p

接下来你需要准备以下的东西

1、arm-linux-gcc-4.5.1交叉编译器

2、linux-3.5-tiny4412内核

3、rootfs_qtopia_qt4-0124.tar.gz QT文件系统(做好的)

4、busybox-1.22.1.tar.bz2文件系统原码 busybox

5、uboot_tiny4412-0729.tgzuboot

6、arm-qte-4.8.5-1207.tar.gz QT原码 ARM

7、uboot_tiny4412-0729.tgz 对应的4412uboot源码

8、minicon 串口

9、安装dnw ,需要上网搜索dnw下载并安装到系统

10、一张SD卡、一条串口线、一根dnw线、一根网线

好了,该准备的我们都准备好了,接下来看如何把开发环境搭建好。

1.安装交叉编译器

cd /disk/A9

tar -xvf arm-linux-gcc-4.5.1

ls opt

FriendlyARM

cp opt/FriendlyARM /opt -r

ls/opt/FriendlyARM/toolschain/4.5.1/bin/

拷/opt/FriendlyARM/toolschain/4.5.1/bin/

vim ~/.bash_profile

在PATH=$PATH:$HOME/bin下面加上

PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin/

保存退出 ctrl +Alt + backspace注销

测试是否安装成功arm- tab tab可以列出所有的交叉编译器就成功

2.编译uboot

cd /disk/A9

tar -xvfuboot_tiny4412-0729.tgz

cd uboot_tiny4412

make tiny4412_config

make生成u-boot.bin u-boot文件

3.将编好的u-boot.bin烧写到SD卡

1>插入SD卡

2>D卡

dd if=/dev/zero of=/dev/sdb bs=1024count=102400

3>烧写

cd /disk/A9/uboot_tiny4412/sd_fuse

make

cd tiny4412

./sd_fusing.sh /dev/sdb

烧写完毕

配置minicom

在命令行中输入:

minicom -s

┌─────[configuration]──────┐

│ Filenames and paths

│ File transferprotocols

│ Serial port setup<== 选择这一项

│ Modem and dialing

│ Screen and keyboard

│ Save setup as dfl

│ Save setup as..

│ Exit

│ Exit from Minicom

└──────────────────────────┘

按如图所示配置

┌───────────────────────────────────────────────────────────────────────┐

│ A - Serial Device : /dev/ttyUSB0

│ B - Lockfile Location : /var/lock

│ C - Callin Program :

│ D -Callout Program :

│ E - Bps/Par/Bits : 115200 8N1

│ F - Hardware Flow Control : No

│ G - Software Flow Control : No

│Change which setting?

└───────────────────────────────────────────────────────────────────────┘

改成这样

enter

Save setup as dfl保存成默认

Exit退出

退出minicom

ctrl + a + q退出

然后开机界面可以看到以下打印信息:

U-Boot .12 (Oct 13 - 11:03:50) for TINY4412

CPU: S5PC220 [Samsung SOC on SMPPlatform Base on ARM CortexA9]

APLL = 1400MHz, MPLL = 800MHz

Board: TINY4412

DRAM: 1023 MiB

vdd_arm: 1.2

vdd_int: 1.0

vdd_mif: 1.1

BL1 version: N/A (TrustZone EnabledBSP)

Checking Boot Mode ... SDMMC

REVISION: 1.1

MMC Device 0: 3724 MB

MMC Device 1: 7456 MB

MMC Device 2: N/A

*** Warning - using default environment

Net: No ethernet found.

Hit any key to stop autoboot: 0

TINY4412 #

内核移殖

编好内核 zImage给uboot引导

cd /disk/A9

ls linux-3.5-tiny4412

tar -xvf linux-3.5-tiny4412

cd linux-3.5

cp tiny4412_linux_defconfig .config

make

最后出现

OBJCOPY arch/arm/boot/zImage

Kernel: arch/arm/boot/zImage is ready

编译成功

arch/arm/boot/zImage

安装DNW

cd /disk/A9/dnw-linux

make

make install

一.利用dnw方式下载内核

1>minicom中

dnw 0x40008000

2> PC中

cd /disk/A9/linux-3.5

dnw arch/arm/boot/zImage

成功下载内核到板子

3>引导内核==>启动内核

bootm 0x40008000

二. SD卡下载内核

1>关电取出SD卡,并将PC机上的内核zImage拷到SD卡上的第一个分区fat32

2>将SD卡插入开发板并且开机

3>查看SD卡上的内核

fatls mmc 0:1 / //查看第0个MMC设备 第一个分区 的分区目录

4>读取SD卡上的内核

fatload mmc 0:1 0x40008000 zImage

5>引导内核

bootm 0x40008000

三.自动读取SD卡上的内核并且启动

在minicom中

setbootcmd "fatload mmc 0:10x40008000 zImage;bootm 0x40008000"

save

reset查看是否会自动启动内核

四. movi内核启动

1>DNW下载内核到板子uboot地址0x40008000

2>写内核

movi write kernel 0 0x40008000

3>设置自动启动

set bootcmd "movi read kernel 0 0x40008000;bootm 0x40008000"

4> reset自动启动内核

烧写文件系统

1>网络文件系统

cd /disk/A9

tar -xvf busybox-1.22.1.tar.bz2

cd busybox-1.22.1

make defconfig //默认配置

make menuconfig

Busybox Settings --->

[*] Build BusyBox as a static binary (no shared libs) │

[*] Build BusyBox as a positionindependent executable (NEW)│

[ ] Force NOMMU build│

[ ] Build shared libbusybox (NEW) │

[*] Build with Large File Support (for accessing files > 2 GB) │

(arm-linux-) Cross Compiler prefix

保存退出

make -j4

make install会生成一个目录 _install

制作文件系统

cd /disk/A9

mkdir filesystem

cd /disk/A9/filesystem

cp /disk/A9/busybox-1.22.1/_install/* .-r

mkdir etc dev opt sys tmp mnt lib proc

mkdir etc/init.d

vim etc/init.d/rcS

添加

mount -t ramfs none /dev

mount -t sysfs none /sys

mount -t proc none /proc

mount -t tmpfs none /tmp

/sbin/mdev -s

保存退出

vim etc/inittab

添加

::sysinit:/etc/init.d/rcS

ttySAC0::askfirst:-/bin/sh

保存退出

vim etc/profile

添加

export PS1="[root @ cjy \W ] #"

保存退出

mknod dev/console c5 1

cp/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/lib/* ./lib -r

cd ..

给权限

chmod 777 filesystem -R

发布文件系统

vim /etc/exports

添加

/disk/A9/filesystem *(rw,sync,no_root_squash)

保存退出

检查文件系统是否已经发布

showmount -e 192.168.88.xxx

//板子上配置IP还有bootargs

set gatewayip 192.168.88.1

set ipaddr 192.168.88.x //板子的IP

set serverip 192.168.88.xxx //PC机IP

save

set bootargs "root=/dev/nfsnfsroot=192.168.88.xxx:/disk/A9/filesystem

ip=192.168.88.x console=ttySAC0,115200 lcd=S70 ctp=2"

save

reset查看是否进入文件系统

//************************************************************

SD卡文件系统

一>

将/disk/A9/filesystem拷到SD卡上的 第四个分区

板子

1>保存nfsbootargs

set nfsbootargs $bootargs

save

2>

set bootargs "root=/dev/mmcblk0p4console=ttySAC0,115200 lcd=S70 ctp=2"

save

3>

reset查看是否进入SD卡文件系统

二>

先进入网络文件系统

挂载出SD卡的第四个分区

mount /dev/mmcblk0p4 /mnt

打包现有的文件系统

cd /disk/A9/filesystem

tar -cf nfs.tar *

tar -xvf nfs.tar -C /mnt

umount /mnt

板子

2>

set bootargs "root=/dev/mmcblk0p4console=ttySAC0,115200 lcd=S70 ctp=2"

save

3>

reset查看是否进入SD卡文件系统

最后一个

将文件系统直接烧录到板子上的mmc

1.

将uboot烧写进去

dnwE4412_N.bl1.bin

先进入SD卡的uboot

2.

emmc open 1

//1板子上的MMC 0x40008000从哪里读 0起始块地址 0x10大小

3.

mmc write 1 0x40008000 0 0x10

dnwbl2.bin

4.

mmc write 1 0x40008000 0x10 0x1C

dnwu-boot.bin

5.

mmc write 1 0x40008000 0x300x1F6

6.

emmc close 1

7.

段电,拔SD卡,选择NAND启动,上电看是否进入板子MMCuboot

烧写MMC内核

dnwarch/arm/boot/zImage

movi write kernel 0 0x40008000

set bootcmd "movi read kernel 00x40008000;bootm 0x40008000"

save

//分区板子上的MMC

fdisk -p 0查看分区信息

创建分区

fdisk -c 1000 500 500

直接进入网络文件系统

set bootargs"root=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

save

进入系统之后

mount /dev/mmcblk0p2 /mnt

tar -xvf nfs.tar -C /mnt

chmod 777 /mnt/ -R

umount /mnt

u-boot内

set bootargs"root=/dev/mmcblk0p2console=ttySAC0,115200 lcd=S70 ctp=2"

save

reset启动MMC内的文件系统

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。