1 初识开发板
- 目前只需要知道:电源开关、电源引脚、USB下载串口、调试串口(USB转串口)、JTAG引脚、启动选择开关。
2 串口调试
-
USB接USB串口8,打开设备管理器查看串口名。
-
打开mobaxsterm软件,点session,点serial,选择对应端口,波特率115200,关闭流控。
-
开发板上电即可连接,在倒数时按下空格进入uboot。
3 eop烧写
3.1 eop介绍
- eop时jlink的替代版,可以调试以及烧写所有的bin文件,一般uboot烧在nor或nand,逻辑程序烧在nand。
3.2 下载软件
-
链接eop和开发板,设备管理器里会出现无驱动的串口,找到OPEN JTAG驱动,安装即可。
-
安装oflash,我们安装的是OpenOCD with GUI setup软件,安装完成后cmd输入oflash出错则需要改环境变量。
3.3 eop烧写程序
-
韦老师准备的调试程序有2个:leds.bin(裸机点灯)、lcd_3.5_4.3.bin(显示器调试)。
-
烧写步骤:
-
① 在bin文件目录的搜索框输出cmd,按下回车进入黑窗口。
-
② 开发板上电,输入:oflash leds.bin。
-
③ 选择0,OpenJTAG。
-
④ 选择1,S3C2440。
-
⑤ 选择0,Nand Flash prog。
-
⑥ 选择0,Nand Flash Program。
-
⑦ 选择0,地址从0开始。
-
⑧ 拔掉eop,开发板复位,开关拨到nand,打开电源。
-
⑨ 如果是lcd_3.5_4.3.bin,则需要进入调试助手mobaxsterm或者SecureCRT。
-
3.4 eop常见问题
- ① 未连接op/eop到电脑
- ② 有其他程序在使用op/eop (同一时间只能有一个程序使用它)
- ③ jtag线未接
- ④ 开发板未上电
- ⑤ oflash xxx.bin 时当前目录下没有xxx.bin
- ⑥烧写完后没有正确设置启动开关
- ⑦ 烧写完后,op/eop-----开发板之间的排线未断开, 导致程序无法运行
4 uboot下载
- ① 使用op/eop把u-boot.bin烧到nor flash。
- ② 开发板设置为nor启动, 上电后马上在串口输入空格键,使板子进入UBOOT而不是启动板子上的内核。
- ③ 连接另一个USB,在设备管理器找到对应USB口,参考JZ2440 USB_DNW下载使用手册安装驱动。
- ④ 在UBOOT的串口菜单中输入n (表示接收USB文件并烧写到NAND)
- ⑤ 使用dnw_100ask.exe发送bin文件
- ⑥ uboot即会自动接收、烧写bin文件
- ⑦ 断电、设为NAND启动、上电:运行nand上烧好的程序
# 如果下载时报错:NAND write: incorrect device type in bootloader' bootloader' is not a number
q # 退出
mtdpart default
save
menu # 进入uboot菜单
作用 | 命令 |
---|---|
更新 u-boot 到 nand flash | n |
更新 u-boot 到 nor flash | o |
烧写裸板 | n |
烧写内核 | k |
烧写 YAFFS 文件系统映象 | y |
烧写 JFFS2 文件系统映象 | j (烧了j就不要y) |
退出q,重新进入menu |
5 恢复出厂设置
- ① 在uboot菜单栏,输入k,dma中选择内核uImage_4.3。
- ② 输入y,选择fs_qtopia.yaffs2文件系统。
- ③ 手动擦除params,q退出,mtd查看分区,nand erase params,r重启uboot。
- ④ 第一次会校准,若觉得点不准可以rm /etc/pointercal,然后reboot即可重新校准。
6 交叉编译
- 由于指令集不同,所以windows编译的程序无法在arm开发板上运行,arm开发版一般使用arm-linux-gcc。
- arm-linux-gcc是基于linux平台的arm的开源免费编译器,功能强大、稳定、支持的arm芯片众多、更新速度快。
7 sourcelight使用
7.1 允许文件类型
- Options->File Type Options->C Source File-> 添加*.c;*h;*.s->close。
7.2 新建文件
- 新建一个si文件夹,Project->New Project->OK->将对应文件勾选->add。
7.3 重建变量、函数以及宏的调用关系
7.4 中文乱码问题
- Options->File Type Options->C Source File->Screen Font->新宋体、12、GB2312->yes。
- 快捷键:Alt + F12切换为等宽字体。
7.5 窗口设置
- 项目窗口:指明该项目中有哪些文件。
- 主窗口:显示当前打开文件的文件内容。
- 符号窗口:显示了当前打开文件的函数名、结构体名、宏定义等等。
- 上下文窗口:光标放在某个函数上(变量上、宏定义上),在下面的上下文窗口就可以看到相应的定义。
7.6 显示行号
- view–>line number。
7.7 去某行
- search->go to line。
7.8 高亮显示
- 光标放在关键词上,然后右键菜单—>highlight word。
7.9 查看函数定义位置
- 光标放在函数上,然后右键菜单—>jump to defintion,或者ctrl + 鼠标左键。
- go back (alt + ,)回到上一次光标所在位置,或者使用工具栏中的向左箭头。
- go forward(alt + .)回到下一次光标所在位置,或者使用工具栏中的向右箭头。
7.10 查找
- 右键菜单–>lookup reference,或者ctrl + / 。
- 弹出的框里,选中Case Sensitive(大小写敏感)、skip inaction code(忽略未使用代码)、skip Commen(忽略注 释)、Smart Reference Matching(智能匹配),再点search。
- 在查找结果里点击箭头会打开文件。
8 其余软件
-
NotePad++用来查看代码。
-
free-hex-editor-neo用来查看二进制代码。