zoukankan      html  css  js  c++  java
  • [学习指南]运动是基于4412嵌入式技术开发板学习步骤

    本文转自快:http://www.topeetboard.com

    地址:http://v.youku.com/v_show/id_XOTI4Njc0NDIw.html

    嵌入式技术的知识体系:

    适用于iTOP-4412开发板及配套教程的学习步骤

    嵌入式的知识面广泛,刚開始学习的人难于入门

    本节阐述嵌入式技术学习步骤,适用于刚開始学习的人

    力图起到提纲挈领的作用。在大量学习资料中有一个比較清晰的脉络

    最后会介绍一个实战案例

    首先要搞明确几个关键文件的意义:

    学习方法:首先要掌握基础架构

    对于架构来说。最主要的东西就是要搞清楚几个概念(几个文件的意义):

    bootloader引导程序(UBOOT)

    linux操作系统内核(kernel)

    文件系统(可能包括2个文件)

    推荐大家首先研读:“澄清几个基本概念-迅为精英版聊天记录.doc

    该文件在QQ群共享中

    开发编译环境的搭建、源码的编译和烧写、应用和驱动的建立等等都是环绕这几个文件展开的!

    第二步:搭建开发编译环境

    64WIN7系统--》虚拟机--ubuntu

    对于刚開始学习的人,推荐依照教程的要求和步骤来做,这样少走弯路,效率更高

    其它系统不是不能够。但可能会遇到各种安装和编译过程的问题

    熟练掌握以后,再去创新。这时才干够去做各种不同的尝试

    搭建开发环境,有的时候并不顺利,须要克服一些安装问题

    迅为已经把安装步骤做了非常大程度的简化,比方虚拟机上的ubuntu镜像,直接拷贝进去就能够用了,避免了通过网络安装各种插件

    搭建完毕,就能够依照教程学习源码编译和系统的烧写。

    再次强调:这些工作都是环绕那三个文件展开的(实际是4个文件)

    LinuxAndroid系统的编译和烧写都是依赖于这个开发环境的。

    第三步:Linux应用程序的设计

    学会系统文件的编译和烧写后,应进一步学习嵌入式Linux应用程序开发。

    要依照网盘里的视频文件夹:“ iTOP4412开发板视频教程及其相关”--->“嵌入式Linux视频”,进行该部分的学习。

    刚開始学习的人要依照该视频教程来学习linux应用开发,有两个方面须要注意:

    第一个实验(第0个),制作最小系统。即最小文件系统(简化的linux文件系统)。当中砍掉了图形系统等功能(图形系统往往最耗资源)。像非常多设备不须要屏幕,如路由器、通讯类控制类产品等须要这种最小系统。

    这些实验除了视频中的方法(直接烧写)外,能够通过网络文件系统(NFS)来实现。这样的方法非常重要,一定要掌握(參照实验12)。

    它能够使得调试工作更加方便和快捷。

    第四步:Linux驱动程序的学习

    全面掌握Linux驱动程序设计非常困难

    Linux驱动从整体上分三种:网络设备、块设备、字符类设备驱动

    网络设备和块设备的相关驱动是默认移植好的。可直接使用

    重点学习字符类设备驱动设计,当中针对GPIO的操作是基础内容(步进电机、开关量、继电器、电流电压模拟量、PWM)。

    RFIDGPSGPRSCAN等实际是利用Linux系统自身的串口、I2C以及SPI总线等来实现。

    网络设备编程,直接在应用程序使用SOCKET就能够了。不须要改动底层

    学习驱动之前,建议大家首先研读一个文档:“Linux驱动初探_精英版QQ群聊天记录.doc”。此文档在售后QQ群共享中。

    调试Linux驱动,也要用到网络文件系统(NFS

    学会用模块(module)的方法来编写驱动

    使用模块能够动态载入和卸载驱动

    insmod    rmmod

    学完这部分内容能够学一些Android上层应用,并開始尝试做一些小的产品了。

    不须要过多分析Linux源代码,不须要过多研究ARM体系结构!

    Ready now!

    实战案例(门禁系统)

    改项目主要实现四个功能:

    实时监控RFID   

    通过SPI总线读取数据

    採集到信号并核对通过后,驱动(门)继电器

    GPIO来控制

    通过网络把记录信息传递到数据库

    SOCKET通讯(在Linux实验教程中讲过)

    须要一个屏幕,用于状态显示与交互。

    使用C++QT)或者JAVAAndroid)来编写上层应用程序

    我们将提供整套案例源代码供大家使用和參考

    嵌入式产品开发,屏幕的选择非常重要,它是首先要做的事情。

    PC显示器接口全然兼容

    VGADVIHDMI

    嵌入式尽管规范同样,但接口大多不兼容

    RGBLVDSMIPIeDP

    比方三星和苹果手机屏幕不能混用,华为、小米、联想也如此

    各种嵌入式设备屏幕大多不兼容

    嵌入式产品追求差异化。以及外观上的创新

    对于不同规格的屏幕,须要针对性定制驱动板,并改动驱动

    产品开发时。须要project师自己进行屏幕选型。随后外壳以及产品外形才确定下来。屏幕一旦选定则不easy再更换其它型号。所以要谨慎!

    屏幕选定以后,对应驱动程序开发的难度并不大

    硬件接口设计会遵循RGBLVDS等接口规范,仅仅需依照接口定义制作驱动板。并添加背光电路(一般依据參考电路来设计就可以)

    Linux驱动程序一般已经完好。仅仅需改动分辨率、刷新频率等參数,这部分内容开发板有配套教程可參考。

    总结

    提供该实战项目源代码

    读懂这个项目-----嵌入式学习是否入门的标志

    明白目标:做出产品,成为合格的project师

    不须要读通Linux源代码,不须要过多研究ARM处理器本身体系结构的知识,甚至不须要搞裸机程序!

    兴许继续研究细化---高手之路。

    物联网的发展,嵌入式发展也将无处不在。

    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    18_09_05 textarea高度自适应 和 Z-index
    18_08_20 jQuery 获取URL中的参数
    18_08_20 jQuery 光标聚焦文字之后
    18_08_20 jQuery 将前台 多张图片 和 多个附件 转化为 附件 向后台请求
    18_8_20 Bootstrap ul标题太多的处理方式
    Http (java)的post和get方式
    18_8_20 java 时间延后的通用写法
    iOS设计模式-组合
    iOS设计模式-迭代器
    iOS设计模式-观察者
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4917163.html
Copyright © 2011-2022 走看看