嵌入式Linux学习记录(3)

2019-07-12 23:00发布

class="markdown_views prism-dracula"> 2019-4-7
1.ARM裸机开发步骤简介
编辑-->编译(arm-linux-gcc)-->烧写-->运行 编辑器:source insight 和 notepad 编译器:arm-linux-gcc 入门误区:尽量不要使用IDE,如ADS、MDK
2.sourceinsight使用方法:
  • 1.增加文件类型
    options–>documents options中,将c source file 的文件过滤设置为 .c;.h;*.S
  • 2.新建项目(新建工程)
    project–>new project ,然后将相应的文件添加到项目中
    project–>rebuild project,编译文件,解析项目的宏定义、变量、调用等
  • 3.设置字体(解决中文乱码)
    options–>documents options中,将screen fonts设置为:宋体、常规、12、GB2312
    使用ALT+F12来调整字体的等宽
  • 4.sourceinsight的窗口:
    主窗口:显示当前打开文件的内容
    项目窗口:指明该项目中有哪些文件
    符号窗口:显示当前打开文件的函数名、结构体名、宏定义等
    上下文窗口:显示光标所在位置的函数的定义
  • 5.显示行号
    view–>line number
  • 6.快速跳转到某一行
    工具栏中:go to line
  • 7.高亮关键词
    光标放在关键词上,然后右键菜单–>highlight word
  • 8.查看函数定义位置
    光标放在函数上,ctrl+鼠标左键,或者右键菜单–>jump to defintion
    go back (alt + ,)
    go forward (alt + .)
  • 9.查找
    ctrl + / ,或者右键–>lookup references
3.安装使用notepad编辑器和二进制查看工具
4.安装交叉编译环境:
  • 1.把arm-linux-gcc-4.3.2.tar文件解压缩,把解压的arm文件夹放到 /usr/local 目录
  • 2.添加环境变量:/usr/local/arm/4.3.2/bin 命令:sudo vim ~/.bashrc //打开bash文件 末尾添加并保存:export PATH=$PATH:/usr/local/arm/4.3.2/bin 使环境变量生效:source ~/.bashrc 查看是否设置成功:arm-linux-gcc //可以使用tab补全
  • 3.第一次使用arm-linux-gcc编译出错,Ubuntu16.04需要安装支持32位的库 命令:sudo apt-get install lib32ncurses5 lib32z1
5.S3C2440框架与启动过程:(大多数ARM芯片从0地址启动)
  • 1.NOR启动:NOR-FLASH基地址为0,片内RAM地址为0x40000000
    CPU读出NOR上第一个指令(前4字节)执行
    CPU继续读出其他指令执行
  • 2.NAND启动:片内4K RAM基地址为0,NOR-FLASH不可访问
    2440硬件把NAND中的前4K内容复制到片内RAM
    然后CPU从0地址取出第一条指令执行
6.如何看原理图
基础知识:
  • 微机原理,侧重于计算机结构
  • 数字电路技术基础,侧重于门电路
硬件电路图大致可以分3类:
  • 1.GPIO和门电路
    1.1 输入、输出引脚,上拉电阻、三极管
    1.2 与门、或门、非门
    1.3 中断引脚
  • 2.协议类
    2.1 UART
    2.2 I2C
    2.3 SPI
    2.4 NAND
    2.5 LCD
  • 3.类似内存的接口
    3.1 NOR,SDRAM,网卡
    3.2 不同位宽外设的接线、访问过程
    3.3 怎么确定访问地址、设置内存控制器
  • 4.从头到尾看几个开发板的原理图