昨天晚上终于收到我的第一快ARM开发板了,激动的不行,一拿到就插电源,开机,哇,系统都预烧好的,一起来,液晶屏都有反应的,然后就启动到一个图形界面,随便点了一会,没啥好玩的,就在琢磨这linux命令行界面呢,传说中的烧录flash呢,bootloader呢。冷静冷静。
现在我应该拿一个串口线连接到ARM开发板,可是这么简单的一句话至少花了我2个小时。先是我的笔记本没有9针串口,只有一个25针串口兼并口,我前两天特意先买了USB转串口和25针转9针的接头。我想这25针是自带的,应该比较稳定吧,而且前两天用USB转串口烧51老是没反应,对我有点打击,所以先先试这个机器自带的,结果设了半天,这超级终端一点反应没有。不管重启还是什么的,死马当活马医吧,把USB转的接上,居然居然有反应了,出了几行乱码,有戏,调了一下波特率,果然,成功了。第一步算是完成了。
接下来先看了一下开发版自带的bootloader有啥功能,无非就是下载kenerl,根文件系统,绝对应用程序等,支持通过USB下载的,所以还要在 windows这边装一个驱动,这比较简单,就略过了。玩到这里,我在想啊,这都是人家做好的,我要是从一台裸机开始该怎么玩呢。得烧录flash吧,烧录找了一下,要实现在线烧录,网上都说在线编程,我觉得就是烧录形象一点,要用JTAG来支持,JTAG一般是芯片支持的一种测试协议,也可以用来对该芯片直连的外围电路进行操作,所以通过他,就可以对CPU外接的FLASH进行烧录了,这下原理就清楚了,赶紧把JTAG连上,这板太小,还把液晶屏给卸了,接上,拿三星SJF2440烧录软件,还真能烧,不过好象只烧到一个NAND FLASH,得用另外一个软件烧到NOR FLASH。说到这两种FLASH,我的理解就是NOR一般用来存代码的饿,NAND一般用来存数据的,跟我们 U盘一样。不过现在这两种都支持放代码启动,不同的是NOR启动CPU是直接读取NOR里的代码并执行,NAND则要CPU先把前4K读到RAM中再执行。这下把最根基的搞懂了,后面的就是一步一步从bootloader到kernel和根文件系统到应用系统的开发,这样一步一步下去了。其实做完这些无非就是对嵌入式的环境准备有了比较深的理解,凡事都要自己动手做一遍才算啊。
接下来的,我就下载了各种各样的img到机子上跑了一下,什么点led灯啊,硬件测试程序啊,先过了一遍,顺便熟悉一下bootloader的使用,最后把linux kernel给down下去,开始玩一下kernel,结果其他都好的,网线居然不通,后来换成他自带的又好了,现在都可以telnet,ftp 上去了,写个helloworld然后arm-linux-gcc 一下,down到板子上一跑,居然成功了,哇,先睡个觉哦,都3点了,明天再开始我的嵌入式开发之路,会笑醒。
现在我应该拿一个串口线连接到ARM开发板,可是这么简单的一句话至少花了我2个小时。先是我的笔记本没有9针串口,只有一个25针串口兼并口,我前两天特意先买了USB转串口和25针转9针的接头。我想这25针是自带的,应该比较稳定吧,而且前两天用USB转串口烧51老是没反应,对我有点打击,所以先先试这个机器自带的,结果设了半天,这超级终端一点反应没有。不管重启还是什么的,死马当活马医吧,把USB转的接上,居然居然有反应了,出了几行乱码,有戏,调了一下波特率,果然,成功了。第一步算是完成了。
接下来先看了一下开发版自带的bootloader有啥功能,无非就是下载kenerl,根文件系统,绝对应用程序等,支持通过USB下载的,所以还要在 windows这边装一个驱动,这比较简单,就略过了。玩到这里,我在想啊,这都是人家做好的,我要是从一台裸机开始该怎么玩呢。得烧录flash吧,烧录找了一下,要实现在线烧录,网上都说在线编程,我觉得就是烧录形象一点,要用JTAG来支持,JTAG一般是芯片支持的一种测试协议,也可以用来对该芯片直连的外围电路进行操作,所以通过他,就可以对CPU外接的FLASH进行烧录了,这下原理就清楚了,赶紧把JTAG连上,这板太小,还把液晶屏给卸了,接上,拿三星SJF2440烧录软件,还真能烧,不过好象只烧到一个NAND FLASH,得用另外一个软件烧到NOR FLASH。说到这两种FLASH,我的理解就是NOR一般用来存代码的饿,NAND一般用来存数据的,跟我们 U盘一样。不过现在这两种都支持放代码启动,不同的是NOR启动CPU是直接读取NOR里的代码并执行,NAND则要CPU先把前4K读到RAM中再执行。这下把最根基的搞懂了,后面的就是一步一步从bootloader到kernel和根文件系统到应用系统的开发,这样一步一步下去了。其实做完这些无非就是对嵌入式的环境准备有了比较深的理解,凡事都要自己动手做一遍才算啊。
接下来的,我就下载了各种各样的img到机子上跑了一下,什么点led灯啊,硬件测试程序啊,先过了一遍,顺便熟悉一下bootloader的使用,最后把linux kernel给down下去,开始玩一下kernel,结果其他都好的,网线居然不通,后来换成他自带的又好了,现在都可以telnet,ftp 上去了,写个helloworld然后arm-linux-gcc 一下,down到板子上一跑,居然成功了,哇,先睡个觉哦,都3点了,明天再开始我的嵌入式开发之路,会笑醒。