裸机开发流程

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. angularJs按需加载代码(未验证)

    一网友写的AngularJs按需加载代码,但未验证,放着备用.   application.config(               function($routeProvider) {       ...

  2. 37. CentOS-6.3安装配置Weblogic-10

    安装说明 安装环境:CentOS-6.3-x64软件:server1001_ccjk_linux32.bin安装方式:bin文件安装 安装位置:/usr/local/weblogic/下载地址:htt ...

  3. controller检查header

    以前都只能拿到request再检查,其实有相应的注解. public Result updateRecentScore(@RequestBody Map map, @RequestHeader(&qu ...

  4. docker容器中搭建kafka集群环境

    Kafka集群管理.状态保存是通过zookeeper实现,所以先要搭建zookeeper集群 zookeeper集群搭建 一.软件环境: zookeeper集群需要超过半数的的node存活才能对外服务 ...

  5. HTML5 Canvas ( 文字的度量 ) measureText

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. 【Javascript Demo】遮罩层和百度地图弹出层简单实现

    其实想做的就是显示百度地图的弹出层,现在已经简单实现了.示例和代码如下,点击按钮可以看到效果: 1.示例:   2.代码: <!DOCTYPE html PUBLIC "-//W3C/ ...

  7. leetcode973

    public class POINT { public int X; public int Y; public int Z; } public class Solution { public int[ ...

  8. 12.使用default-Action配置统一访问

    转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html default-action-ref,当访问没有找到对应的action时,默 ...

  9. TDictionary 是delphi用的,c++builder用起来太吃力。

    TDictionary 是delphi用的,c++builder用起来太吃力.c++还是用std::map代替.c++d map很好用啊.https://blog.csdn.net/ddkxddkx/ ...

  10. Spring MVC 自定义类型转换器

    新建一个自定义转换器 import org.springframework.core.convert.converter.Converter; import org.springframework.s ...