• 韦东山嵌入式Linux学习笔记-1-为什么要学习嵌入式Linux


    论单片机

    1. 学习单片机的前途:没工作啊~没人会用月薪2万来招聘一个博士写本科生都能做的事;
    2. 不要使用C51、STM32这种单片机专用的开发板;
    3. 不要使用Keil等MDK,集成度太高的软件(内部封装了很多技术细节).

    嵌入式Linux与Windows的区别

    1. windows系统: 上电->BIOS->启动Windows内核->挂载C盘,D盘等系统盘,应用盘->启动应用程序;
    2. 嵌入式Linux系统: 上电->BootLoader->启动Linux内核->挂载根文件系统->启动应用程序.

    BootLoader的功能

    要从Flash/SD卡读取内核,需要:
    1. 初始化时钟,初始化内存,设置网卡;
    2. 从Flash/SD卡中读取内核启动;
    3. 显示logo,需要操作LCD.

    * 那怎么写这些呢?
    * 一步步地写!从LED,时钟,网卡,Flash等一步步去写.(**本质就是单片机程序!**)
    **BootLoader是单片机程序大全.**
    

    Linux内核的功能

    内核要挂载根文件系统,意味着内核也要能操作硬件!,这就是驱动程序.

    简单驱动程序框架:驱动程序=软件框架+硬件配置.
    * (软件)应用程序调用: open, read, write;
    * (硬件)驱动程序执行: drv_open要配置硬件,GPIO设置为输出;drv_read要返回GPIO状态;drv_write要写GPIO的值.
    * 要掌握硬件开发的能力:学会看原理图,看芯片手册,知道怎么读写寄存器.
    

    开发嵌入式Linux系统的硬件需求

    * 开发板选择: `单片机->bootloader->linux驱动->APP(纯C++无界面应用程序,Qt/Android); ` 
    * 开发板种类:三星(S3C2440, S3C6410, S5PV210, EXYNOS4412), TI(AM437X,AM335X), Freescale(I.MX6), 国产芯片(全志,瑞芯微).
    * 选择原则:资料丰富-S3C2440为首选!
    * 使用S3C2440开发板,在Ubuntu下使用arm-linux-gcc工具来编译程序.
    

    JZ2440开发板上电

    * 插上电源,打开开关;可以看到linux的企鹅以及后面的Qt桌面;
    * 连接串口,在PC上打开串口工具`MobaXterm`,点击左上角的`Session`,点击弹出窗口的`Serial`,Serial Port选择 Prolific开头的那个端口,波特率选择115200, Advance Settings里的Serial Engine选择`PuTTY`,硬件流控制选择`None`,点击`OK`.
    * 按空格键,可以查看到开发板上运行的Linux内核系统,在这里可以运行Linux命令行指令. 可以理解为,这里直接连接了Linux开发板.
    

    嵌入式Linux开发概述

  • 相关阅读:
    软件工程实践总结
    用户使用调查报告
    Beta 冲刺 随笔合集
    Beta 冲刺 七
    Beta 冲刺 六
    Beta 冲刺 五
    Beta 冲刺 四
    Beta 冲刺 三
    Beta 冲刺 二
    Beta 冲刺 一
  • 原文地址:https://www.cnblogs.com/charleechan/p/11938413.html
Copyright © 2020-2023  润新知