S3C2440—2.裸机开发步骤及工具使用
文章目录
一.裸机开发步骤简介
1.在X86架构的Windows系统中
1.建立工程
2.编辑源代码
3.编译(VC6.0)
4.运行
2.在X86架构的Ubuntu系统中
1.编辑源代码(vim)
2.编译(gcc)
3.运行
3.ARM裸机开发
1.编辑源代码(Windows:Source insight或者Notepad++)
2.编译(涉及到交叉编译:arm-linux-gcc)
arm-linux-gcc是基于Linux系统的arm编译器,功能强大、稳定、支持qrm芯片多。
3.烧写
4.运行
注意:
使用ads(停止更新)、MDK编译器,是win系统的编译器,功能很弱,只适合个人或者小团队开发,不适合大型开发,而且收费。
学习嵌入式目的是找工作,所以要掌握企业里面,嵌入式实际的开发流程。
使用Soucre insight 编写查看.c、.h、.S文件
使用Notepad++查看.bin、makefil文件
使用Hex Editor Neo 查看.hex文件
二.soucre insight使用
1.sourec insight介绍
soucre insight主要用来编写和查看:c文件、h文件、ARM汇编文件
notepad主要负责其他文件:makefile(makefile指明了要编译哪些源文件和编译后的输出名)
source insight收费软件,但是可以免费试用一个月,推荐使用3.5版本
2.操作流程
Ⅰ.增加文件类型
(就是使C源文件可以包含.s文件)

Ⅱ.创建工程
Project中新建,并添加现成文件
Ⅲ.编译工程

Ⅳ.设置中文字体

Ⅴ.界面说明

右边项目窗口:说明该项目中有哪些文件
中间主窗口:显示当前打开的文件内容
左边符号窗口:显示当前打开文件的:宏定义、函数名、结构体名
下面是上下文窗口:光标放在某个函数或者变量上,下面的上下文窗口就可以看到相应的定义
Ⅵ.小技巧
- 可以通过View里面设置行号
- 可以通过工具栏里面的go to line 来跳转到指定的某一行
- 可以通过选定关键词,鼠标右键设置高亮关键词
- Control+鼠标左键,可以跳转到函数定义
- Control+/ ,可以查找名词出现的位置
S3C2440—2.裸机开发步骤及工具使用的更多相关文章
- ARM裸机开发之交叉工具链和MakeFile工程管理
一.交叉工具链 嵌入式Linux开发采用交叉开发,简单来说就是在宿主机(PC机)上面编译出能够在其他硬件平台上面运行的程序.在这个过程中,需要用到许多的交叉工具,这些交叉工具的集合就叫做交叉工具链.下 ...
- S3C2440—3.用点亮LED来熟悉裸机开发的详细流程
文章目录 一.硬件知识 1.LED原理图 2.芯片手册 Ⅰ.找LED原理图 Ⅱ.找对应引脚 Ⅲ.在芯片手册中查找引脚信息 Ⅳ.查看寄存器说明 Ⅴ.配置寄存器 二.S3C2440框架与启动过程 三.要用 ...
- 【转载】s3c2440裸机开发调试环境(MDK4.6,Jlink v8,mini2440)
用于arm裸机程序开发的IDE基本有 以下3个:MDK,IAR,还有ADS.具体它们的具体情况在这里我就不多说了,百度一下就明白了.由于之前开发c51,stm32时候都使用了MDK开发环境,而且MDK ...
- Android(java)学习笔记262:JNI之工具快速开发步骤
下面通过一个案例说明一下,利用工具jni快速开发步骤 1.新建一个Android工程,命名为"03_对int数组加1",如下: 2. 在MainActivity.java中对add ...
- Android(java)学习笔记206:JNI之工具快速开发步骤
下面通过一个案例说明一下,利用工具jni快速开发步骤 1.新建一个Android工程,命名为"03_对int数组加1",如下: 2. 在MainActivity.java中对add ...
- ARM-Linux基本开发步骤
拿到一块YC2440(s3c2440)的开发板,经过几天的学习,我对arm-linux系统开发步骤有了一些认识.就以开发这个开发板为例,arm-linux开发工作大概分4个部分 1. 硬件 ...
- iOS应用内付费(IAP)开发步骤列表
iOS应用内付费(IAP)开发步骤列表 前两天和服务端同事一起,完成了应用内付费(以下简称IAP, In app purchase)的开发工作.步骤繁多,在此把开发步骤列表整理如下.因为只是步骤列表, ...
- Cubieboard2裸机开发之(四)定时器操作
前言 在Cubieboard2裸机开发之(三)里用到了一个延时函数delay,它的延时时间是不精确的,因此为了能够精确延时,就需要定时器的配合.定时器可以精确延时的一个重要原因是它的计时时钟(或者说频 ...
- hibernate学习笔记6--Criteria查询方式、完整小练习(开发步骤)
一.Criteria查询方式没有sql语了,因此更加面向对象一些.Criteria是一种比HQL更面向对象的查询方式:Criteria的创建方式: Criteria c = s.createCrite ...
随机推荐
- 1.3.3、通过Header属性匹配
server: port: 8080 spring: application: name: gateway cloud: gateway: routes: - id: guo-system4 uri: ...
- 知识全聚集 .Net Core 技术突破 丨ABP vNext 开始
介绍 很久没有更新博客了,之前想更新但是发现博客园崩了,外加工作上的调换也比较忙,最近有了点时间我来继续更新下这个系列的文章. 今年3月份我带着我们研发组同事,将公司产品从老Abp重构到Abp vNe ...
- 实验 1 Linux 系统的安装和常用命令
实验 1 Linux 系统的安装和常用命令 (题目) 一.实验目的 (1)掌握 Linux 虚拟机的安装方法.Spark 和 Hadoop 等大数据软件在 Linux 操作系统 上运行可以发挥最佳性能 ...
- lxml的使用(节点与xpath爬取数据)
lxml安装 lxml是python下功能很丰富的XML和HTML解析库,性能非常的好,是对libxml3和libxlst的封装.在Windows下载这个库直接使用 pip install lxml ...
- java面向对象程序设计(下)-枚举类
在某些情况下,一个类的对象是有限而且固定的,比如季节类,它只有4个对象;再比如行星类,目前只有8个对象,这些实例有限而且固定的类,在Java中被称为枚举类 JDK1.5新增了一个enum关键字,(它与 ...
- VS Code 与 ESP32 官方SDK配置
开发基于 ESP XXX 微控制器应用,最简单的环境搭建方案是像 MicroPython.CircuitPython.NanoFramework 等,下载固件,直接开刷:或者基于 Arduino 的开 ...
- P5147-数学-随机数生成器
P5147-数学-随机数生成器 (洛谷第一篇题解说这是高一数学题,新高二感觉到被吊打) 我们设work(x)的期望值为\(f_x\) 注意\(f_1\)是边界.不过对下列式子没有影响.原因参照必修的数 ...
- javascript里面的document.getElementById
一.getElementById:获取对 ID 标签属性为指定值的第一个对象的引用,它有 value 和 length 等属性 1.获取当前页面的值input标签值:var attr1=documen ...
- Java键盘获取数据
java录入键盘数据,整型.浮点型.布尔型.字符串. 通过导入java.util.Scanner实现各类操作 import java.util.Scanner;//导入包 public class H ...
- Pycharm关联gitlab(http方式)
Pycharm支持关联gitlab仓库,关联后对远端项目的克隆和提交都很方便.当初笔者在关联时遇到了很多坑,网上也没找到相关解决办法,所以在这里分享下完整的关联过程. 一.安装git 下载地址http ...