• 韦东山嵌入式Linux学习笔记4-裸板程序开发


    在Linux进行x86平台的应用程序开发

    开发步骤

    编辑源代码->编译->运行

    在Linux上编辑源代码

    使用前面讲到的vi工具即可;

    编译代码

    使用GCC工具;
    * GCC是GNU Compiler Collection,GNU编译器套件;
    * 除了可以编译C/C++语言的程序,还能编译Java等语言的程序;
    * GCC的初衷是为GNU操作系统专门编写的一款编译器.

    GCC的优势: 功能强大,稳定,开源免费;

    1. gcc -v :查看GCC的版本;
    2. gcc -o hello hello.c :将hello.c编译为hello(可执行程序);
    3. ./hello:执行hello程序(注意不能直接hello来运行,因为当前目录不在PATH里).

    在Linux进行Arm平台的裸板程序开发

    开发步骤

    编辑源代码->交叉编译(使用arm-linux-gcc编译器)->烧写->运行;

    编辑

    • 使用Source insight软件查看编辑: c文件,h文件, ARM汇编文件;
      • 在Option-> File Type Option->C source File-> 在File Filter中填写*.c;*.h;*.S,将C源文件的文件设置为这几种文件;
      • 在源文件所在目录,新建文件夹SourceInsightPrj,然后新建工程,工程目录选择SourceInsightPrj,工程名字任选;
      • 自动向该工程添加文件,选择所有的.c,.h, .S文件,点击Add;
      • Options->Perferences->Files选项卡->最后的Default encoding选择System Default(Window ANSI)Chinese Simplified(GB2312);
      • File->Reload As Encoding->选择Chinese Simplified(GB2312);
      • 点击Project->Rebuild对工程进行组织,软件会对该工程的组织信息进行索引,以方便用户进行查找;
    • 使用notepad++软件查看编辑:其他文件,如Makefile.

    编译

    使用arm-linux-gcc编译器进行编译,开源,免费,强大,支持芯片多,更新速度快;

    烧写

    使用EOP进行烧写;

    第一个程序-LED流水灯

    原理图-确定控制LED的引脚

    芯片手册-如何控制芯片的相应引脚

    1. 设置引脚的功能为GPIO,并配置为输出: 设置GPFCON[9:8] = b'01;
    2. 设置该引脚的值: 设置GPFDAT[4]为0或1.

    写程序

    请看下一节(等着吧~)


    JZ2440的启动方法:

    从Nor Flash启动

    Nor Flash大小为2MB, 当从Nor Flash启动时, Nor Flash的基地址被设置为0,(片内SRAM的地址为0x4000_0000), ARM芯片从Nor Flash开始读取第一条指令并执行,然后不断读取第2条,第三条等。

    从Nand Flash启动

    Nand Flash大小为256MB, 当从Nand Flash启动,片内SRAM的基地址被设置为0,(Nor Flash的地址不可用),然后硬件上把Nand Flash的前4KB的代码复制到片内SRAM,然后CPU从0地址读取命令,不断地读取执行

  • 相关阅读:
    一点技巧
    题解G
    WA七次,疯了》》》》》OTZ
    就是过不了啊无奈。。。。。水题都过不了…………OTZ OTZ OTZ
    [IOS]使用UIScrollView和UIPageControl显示半透明帮助蒙板
    [System]几种同步方式
    [Objective C] Singleton类的一个模版
    [IOS] 自定义AlertView实现模态对话框
    [IOS] UIKit Animation
    [IOS]使用genstrings和NSLocalizedString实现App文本的本地化
  • 原文地址:https://www.cnblogs.com/charleechan/p/11944529.html
Copyright © 2020-2023  润新知