裸机开发流程

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. python入门-类(一)

    1 最简单的一个类 class Dog(): """一次模拟小狗的简单尝试""" def __init__(self,name,age): ...

  2. 前端-javascript-DOM(重点)文档对象模型

    1.DOM概念-文档对象模型 // 什么是DOM ? /* Document Object Model 文档对象模型 面向对象: 三个特性 封装 继承 多态 一个对象: 属性和方法 说 万事万物皆对象 ...

  3. SpringBoot application.yml文件不生效

    yml格式对缩进有严格的要求,检查你的yml配置文件是否有不合格的缩进项. 正确的格式如下: server: port: 8881 port前必须有空格,  port后的冒号 后面也需要有空格

  4. FP-growth算法高效发现频繁项集(Python代码)

    FP-growth算法高效发现频繁项集(Python代码) http://blog.csdn.net/leo_xu06/article/details/51332428

  5. k-means处理图片

    问题描述:把给定图片,用图片中最主要的三种颜色来表示该图片 k-means思想: 1.选择k个点作为初始中心 2.将每个点指派到最近的中心,形成k个簇cluster 3.重新计算每个簇的中心 4.如果 ...

  6. c# 结构体 集合 复习

    添加5个学生的信息到集合中,每个学生都有:学号,姓名,成绩,3个内容,添加完毕后将学生的分数从高到低排列并打印出来,使用结构体 using System; using System.Collectio ...

  7. powerdns

    powerdns http://bbs.51cto.com/thread-880297-1.html https://blog.csdn.net/kepa520/article/details/791 ...

  8. Ansible Playbook Variables

    虽然自动化存在使得更容易使事情重复,但所有的系统可能不完全一样. 在某些系统上,您可能需要设置一些与其他操作略有不同的行为或配置. 此外,一些观察到的远程系统的行为或状态可能需要影响如何配置这些系统. ...

  9. Electron Browser加载iframe(webview src属性)

    browser或者webcontents 的高度与宽度比例对webview中src的页面结构也是有一定影响的

  10. Fragment 实现拍照,相册选图,设置头像功能

    设置不成功,http://bbs.csdn.net/topics/391112964 采纳问题回答:这个是fragment没有收到这个回调,原因不多说了,,,你用你对应的ragment.startAc ...