OS:ubuntu 8.04 2.6.24-21-generic
所有的软件都可以在smb://项目/route/route 下找到
把arm-linux-toolchain-3.4.0.tar.gz和
KS8695-Linux269-02092007文件夹上的KS8695-Linux2.6.9-02092007.tgz复制到
/usr/src/route上(route 文件夹要自己加)
1首先要现建立交叉编译的环境
这个其实就是解压,这个是不完全的模拟环境,但足够我们用了
找到arm-linux-toolchain-3.4.0.tar.gz这个文件
下面是命令
sudo tar xf arm-linux-toolchain-3.4.0.tar.gz
sudo tar xf KS8695-Linux2.6.9-02092007.tgz
cd /usr/src/route/gnu/release-3.4.0/bin
ls
你会发现多了很多东西,这些都有一个特征就是arm-linux-* 这些就是我们等下要用的
2 增加环境变量
1 永久增加
gedit /etc/bash.bashrc
if [ -d /usr/src/route/gnu/release-3.4.0 ]; then
PATH=/usr/src/route/gnu/release-3.4.0/bin:"${PATH}"
fi
2临时增加
sudo export PATH=$PATH:/usr/src/route/gnu/release-3.4.0/bin
#解释下 export 就是重新定义环境变量的命令
#PATH就是目前默认PATH环境,可以用 echo $PATH观察
#如果你细心的话就会发现 : 其实是增加的标志
#主要作用就是让你可以直接调用arm-linux-*这些命令
3创建映像文件
#其实这章没多大价值
cd /usr/src/route/system/uboot
make ks8695x_config
#这个文件原本就有
cd ../../
./Configure
#这个是已经编译好的内核configure相当于一个.config
然后出现e> #大家不用管这里,这是那Configure文件搞的鬼
你就输入7 #同上
然后就make 如果没意外就可以了成功
#如果出现没有找到arm-linux-gcc 就是你的环境变量没弄好
#或者是arm-linux-gcc的版本太低,这个是3.4的我试过网上流行的3.2
#如果是其他的原因,有可能没安装依赖
#sudo apt-get install build-essential bin86 kernel-package
#sudo apt-get install libqt3-headers libqt3-mt-dev
#sudo apt-get install bootcd-mkinitramfs
最后就是
make install
所有的映像文件都在/usr/src/route/release/KS8695 里面
4烧写
在linux下烧写loader的工具有 j-flash openwince-jtag (jtag口)
如果flash里面有u-boot就可以用tftp由网线连传内核上去
在linux下无论哪个,都需要有芯片和flash的配置文件.这对于我们来说是极其困难的
所有无奈下只好回WINDOWS下烧写
下载最新的H-flash6.3
引脚编号用默认的引脚配置
然后在核心那选
AM29LV033C
他会自动在configure 那写入以下信息
Flash Start Address: 0x2800000
RAM Start Address: 0x0
3. Init Script
以下都是setmem 32BIT
0x03FF4000 0xD7F20008
0x03FF4004 0xE7F60008
0x03FF4008 0xF7FA0008
0x03FF4010 0xAFE80070
0x03FF4014 0xFFC02009
0x03FF4020 0x00000001
0x03FF4030 0x0FC0000E
0x03FF4038 0x0000000A
4
check 一下看能否识别到
image地址位置是0x02300000
然后program就可以烧录了,erase是擦除
你可以选择
先烧 mimage
再烧u-boot.bin
也可以烧u-boot再传上去
5minicom调试
在linux下可以利用minicom调试
sudo apt-get install minicom
sudo apt-get install lrzsz
(让其支持xmodem协议,其实你可以去下个最新的lrzsz更好)
配置:
dmesg|grep tty
#看你开了什么com口,而且minicom配置的时候要有接口才能成功不然会提示
Minicom: Device disappeared, aborting!
如果看见类似
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A #说明你ttyS0开了
1 . 在终端中输入minicom以启动minicom;
2. 先按下Ctrl + a, 放开, 再按o, 出现配置菜单.
3. 选择 Serial port setup, 此时所示图标在“Change which setting”中,键入“A”,此时光标移到第A项对应处:串口COM1对应ttyS0, COM2对应ttyS1. (注意选择)
注意:
所用端口的权限:最好是设为777,不然超级用户不能正常使用minicom;
设置方法:sudo chomd 777 /etc/ttyS0
(端口所在路径)
如果是用usb转串口:
查看端口:lsmod | grep usbserial
(只是用于usb转串口)
如果有usbserial,说明系统支持USB转串口。
注意:非正常关闭minicom,会在/var/lock下创建几个文件LCK*,
这几个文件阻止了minicom的运行,将它们删除后即可恢复
对波特率,数据位和停止位进行配置,键入“E”,波特率选为115200 8N1 (奇偶校验无,
停止位1),硬/软件流控制分别键入“F”“G”并且都选NO。在确认配置正确之后,可键入回车返回上级配置界面,并将其保存为默认配置。(即save
setup as dfl),之后重启minicom是刚才配置生效,在连上开发板的串口线后,就可在minicom中打印正确的串口信息了。
连上jtag线,打开minicom重启路由,如果成功就可以连上route了
6附带tftp使用方法(很简单)
(1):安装tftp
1、安装相关软件包
sudo apt-get install tftpd #(服务端)
sudo apt-get install tftp #(客户端)
sudo apt-get install xinetd
2、建立配置文件
cd /etc/xinetd.d/
新建文件tftp:sudo gedit /etc/xinetd.d/tftp
tftp内容:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot -c
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
存盘退出
说明:修改项server_args= -s -c,其中处可以改为你的tftp-server的根目录,参数-s指定chroot,-c指定了可以创建文件。
注意:共享目录一定不要选择/root这样的特权目录,否则传输文件会失败 Permission denied)
3、建立tftp服务文件目录
sudo mkdir /tftpboot
sudo chmod 777 /tftpboot -R
4、从新启动服务
sudo /etc/init.d/xinetd restart
sudo in.tftpd -l /tftpboot
安装完成!
5tftp传输(已经有内核)
~$sudo tftp 192.168.1.1 #确认你已经连上路由
>put testtftp #testtftp是我随便创建的文件
然后文件会传输到路由上的/tmp上reboot后就没了
#网上说的vivi 其实也是loader 支持tftp协议而已,我们u-boot也支持
KS8695 jtag
最新推荐文章于 2025-08-08 20:58:41 发布