裸机开发流程

1、编写裸机程序;2、调试裸机程序;3、生成2进制映象(编译、链接、格式转换);4、烧写/运行2进制映象。

注意:我们自己开发的程序等等需要下载到开发板的Nandflash(类似于硬盘功能),那么怎么下载进去呢?首先,2440有Nor flash,6410和210有SD卡,他们都是利用SD卡或者Nor flash里面的系统安装辅助程序,然后,将开发板与pc机之间用usb进行连接,然后将pc上的程序下载到Nandflash里面。

针对tiny6410,将SD卡通过读卡器插到PC机上,首先快速格式化SD卡,然后,使用SD-flasher,把superboot-6410.bin烧写到SD卡里面去,要经过scan扫描到SD卡,选中superboot-6410.bin之后,使用fuse烧写,就ok了,

最后,把SD卡插到开发板上面去,从SD卡启动开发板,出现下图:

选择f,格式化一下,然后选择v,因为我们裸机程序与uboot程序是类似的,选择之后,会处于一个等待状态;然后,进入PC机Linux系统,安装insmod dnw_usb.ko,

,接着把物理链路建立好,将小usb把PC机与开发板相连接好;接着执行./dnw ../led.bin 0x50000000,将led.bin文件烧写到内存的0x50000000位置,然后我们的引导安装程序会把这个下载好的映象自动安装到nandflash里面去运行。最后,把启动从nandflash启动,重启开发板,就可以执行烧写的程序了。

准备工作1:格式化nandflash,通过安装辅助程序。

准备工作2:硬件的连接。Jlink连接,串口连接,nandflash启动,电源连接。

安装工作一

1、安装gdb server:tar xvzf arm-linux-gdb-7.5.tar.gz,解压完之后进入,并执行./build-all,它的作用是首先编译gdb server这套软件,然后负责安装它,且安装到相应的位置。

可以查看build-all这个脚本的内容:

最终编译好的gdb server是位于/opt/目录下面,

这就是我们编译好的gdb server软件

2、将gdb server加入到环境变量PATH中,(编译好的GDB SERVER在目录/opt/下)找到它的路径which eclipse,然后进入cd /opt/arm-linux-gdb/bin/,pwd查看当前路径,并复制下来。

3、进入vim /root/.bashrc,加入如下:export PATH = $PATH:/opt/arm-linux-gdb/bin/;最后运行arm-linux-gdb便可识别到。

安装工作二

安装JLINK软件

1、解压tar xvzf Jlink-linux-v434a.tgz->进入该文件夹,复制一些库文件cp -d libjlinkarm.so* /usr/lib -f;再复制cp 45-jlink.rules /etc/udev/rules.d/。

2、将jtag连接好板子,执行./jinkGDBSERVER看能否感知到板子。

安装工作三

安装eclipse(它可以编译以及在线调试程序)

1、要把自带的eclipse注销掉,因为它的版本不对,先通过which eclipse找到路径,进入cd /usr/bin/;备份mv eclipse eclipse-back,进入ARM-TOOLS里面进行解压eclipse,tar xvzf eclipse...->进入eclipse,并执行./eclipse。

2、workspace:/home/S3-ARM/Part1/lesson1/ec_project_1。(注意第一次启动都会出现错误不用管,可以再次启动。)

3、配置eclipse:安装插件,help->install new software->http://opensource.zylin.com/zylincdt->...->finish。

4、new ->make file project with existing code->a、project name:led;b、existing code position:lesson2。

5、现在对程序进行编译:project->(去掉build auto ..)->build all(注意实际上eclipse是调用的makefile来对工程进行的编译)->选择debug->debug configuration->双击 zylin embeded debug(Native)->led default->c/c++->Brouse->选择..elf文件->debuger->arm-linux-gdb->去掉stop选项->command->initalize->gedit打开对应的初始化文件,并拷贝进去。

6、启动调试:首先启动JLINK,然后利用eclipse里面配置的调试工具进行调试。

linux下集成开发环境之ECLIPSE--在线调试、编译程序的更多相关文章

  1. 【期外】(三)Linux下集成开发环境Geany

    今天小编发现了一个很好的软件,它的名字就叫做Geany. 这是Linux系统中的开发工具,相当的好用. Linux与windows最大的不同正是不是集成开发环境,所以写起代码来总是用文档写好后,然后再 ...

  2. linux下c++开发环境安装(eclipse+cdt)

    方法一: 此外,众所周知,Eclipse是Java程序,因此很容易就实现了跨平台,也是众所周知,Java的大型程序非常吃内存,即使有512MB内存, 仍然感觉Eclipse的启动速度很慢.个人认为1G ...

  3. deepin linux 下C开发环境配置

    # deepin linux 下C开发环境配置 ## 前言-----------------------------deepin操作系统商店默认提供了 eclipse for c\c++但是系统没有提 ...

  4. Linux下STM32开发环境的搭建

    目录 一.概述 1.目的 2.开发环境描述 3.Eclipse构建的STM32集成开发环境结构 4.GDB / GDB Server 调试模型 二.搭建步骤 三.详细的搭建过程 1.安装eclipse ...

  5. mac 配置Python集成开发环境(Eclipse +Python+Pydev)

    1.下载Mac版64位的Eclipse. 进入到Eclipse官方网站的下载页面(http://www.eclipse.org/downloads/),我选择了下图所示的软件包, 浏览器在下载过程中使 ...

  6. Linux下golang开发环境搭建

    对于golang开发来说,Windows下可以用vscode或者liteide都不错,但是Linux下的开发也就只有vim了,所以怎么搞笑的利用vim进行golang开发呢? 参考官方推荐的一个插件: ...

  7. Linux下Java开发环境搭建—CentOS下Eclipse的安装教程

    据了解,在Linux下的Java开发很多时候都比较喜欢使用vim + 插件,反而很少使用Eclipse,但是我是第一次使用Linux来进行Java编程,就什么都体验下啦,好啦,废话不多说,直接开始啦. ...

  8. 【Qt开发】Linux下Qt开发环境的安装与集成

    近期工作需要在Linux下用Qt进行C++开发,所以就在linux下尝试装QT开发环境.本人用的linux是CentOS 6.5.现在对安装过程做出总结.有两种安装方式,下面分别详述: 1 图形化安装 ...

  9. Linux下vim 开发环境配置及配色(Ruby)

    终端设置 字体:Monospace 10 粗体 内置方案M:黑底白字 内置方案S:Linux控制台 安装vundle git clone https://github.com/VundleVim/Vu ...

随机推荐

  1. windows的类似shell 命令操作

    一,类似linux的grep命令 参考网站:https://www.cnblogs.com/zxy1992/p/4372717.html windows执行cmd命令查找sql进程: C:\Users ...

  2. 65. sqlserver执行存储过程实例

    declare @param varchar(500)exec sp_PUB_GetFlowStatus @ret output,10011,88,1,12print @ret

  3. HTML5 浏览器接收的常用 content-type

    <1> 常见的设置方法 response.setHeader("content-type", 'text/html'); <2> 浏览器接收的常用 cont ...

  4. [PHP]用户登陆中间件

    Laravel 4中,可以使用Route::filter,而在Laravel 5中,没有了filter.php文件,官方建议使用中间件做. 下面是用户登陆的测试例子,涉及到的一些方法和使用,先参见这里 ...

  5. 加密算法之AES算法(转)

    转载http://www.mamicode.com/info-detail-514466.html 0 AES简介 美国国家标准技术研究所在2001年发布了高级加密标准(AES).AES是一个对称分组 ...

  6. Activity服务类-3 FormService服务类

    1.获取//通过流程定义ID获取表单字段集合StartFormData startFormData = formService.getStartFormData(processDefinitionId ...

  7. VBA 公式中使用相对位置

    .Cells(3, 4).FormulaR1C1 = "=sum(r[-" & a & "]c[0]:r[-3]c[" & b & ...

  8. gevent 实现io自动切换,gevent.join([]), gevent.spawn, 爬虫多并发的实现

    gevent 是一个第三方库,可以很容易的实现遇到io(文件传输)操作时,程序自动跳转到下一个程序 例一: 用gevent.sleep()  来模拟io操作 import gevent def foo ...

  9. spring cloud: eureka搭建

    1. 添加pom 依赖: <parent> <groupId>org.springframework.boot</groupId> <artifactId&g ...

  10. 启动startUML的时候报错“"Exception EOleSysError in module StarUML.exe at 000AD559. "

    win7操作系统在安装startuml的时候总是报错 出现了如下错误提示:"Exception EOleSysError in module StarUML.exe at 000AD559. ...