上海嵌入式實訓ARM+LINUX系統(tǒng)班 2023-02-23 15:04:28
課程介紹
發(fā)布日期:2023-02-23 15:04:28
全面模擬IT公司的嵌入式軟硬件開發(fā)、管理、組織、實施過程來強化個人能力和技術(shù)能力。主要包括:工程實踐能力、團隊協(xié)作能力、技術(shù)創(chuàng)新能力、專業(yè)能力、編程能力、軟硬件平臺應用能力、項目開發(fā)能力、解決關(guān)鍵技術(shù)問題能力等。
理工科類??疲ò▽??,計算機相關(guān)專業(yè)、計算機科學與技術(shù)、計算機應用、軟件開發(fā)、網(wǎng)絡(luò)工程、電子、通訊、機械等)以上學歷,有C/C++語言基礎(chǔ)或數(shù)據(jù)結(jié)構(gòu)、微機原理、操作系統(tǒng)等基礎(chǔ)優(yōu)先,喜歡并有志投身于IT事業(yè),通過入學測試。另有同等水平的社會青年。
實驗環(huán)境:
為培訓效果,增加互動環(huán)節(jié),我們堅持小班授課,每班10人以內(nèi),滿班將依據(jù)報名先后順序進行分班。每班選組長1名。每位學員每人配置高性能電腦1臺+1套ARM實驗工具。
公司研發(fā)實驗室全部面向?qū)W員開放,學員可根據(jù)需要額外免費學習萬用表、示波器、邏輯分析儀、數(shù)字電橋、耐壓測試儀、EMC測試儀、頻譜儀等的用法。
實訓過程:增強補弱階段+實訓ARM階段+實訓LINUX階段+項目實戰(zhàn)+推薦階段
純小班授課的優(yōu)勢
1、使教學具有更強的針對性,有利于因材施教。
2、促進了師生的互動。
3、小班化教學繼承了班級授課制的所有合理內(nèi)核,又克服了大班授課制的弊端,增加了個別教學的優(yōu)點。
1.1熟悉常用電子元器件、常用芯片知識及其使用方法;
1.2介紹電子產(chǎn)品開發(fā)、生產(chǎn)的基本流程;
1.3熟悉C語言、C++編程及編程;
1.4嵌入式概要、仿真軟件、工具、開發(fā)平臺使用;
1.5嵌入式C語言典型范例、數(shù)據(jù)類型;
1.6嵌入式C經(jīng)典語句詳解、函數(shù)、數(shù)組、指針精講;
1.7字符IO和輸入輸出;
1.8存儲類、鏈接和內(nèi)存管理;
1.9宏定義、復雜聲明;
1.10結(jié)構(gòu)體、共用體和枚舉;
1.11嵌入式高級議題:編程經(jīng)典案例分析、編程規(guī)范、編程優(yōu)化、編程可靠性;
1.12嵌入式常見編程錯誤:“野指針”、“異常宏定義”、“異常數(shù)組定義”等分析。
2、嵌入式底層驅(qū)動開發(fā)階段
學員在完成本階段內(nèi)容后,將系統(tǒng)掌握嵌入式底層開發(fā),對單片機,ARM核開發(fā)熟悉的掌握,通過一些項目設(shè)計,讓學員具備嵌入式產(chǎn)品設(shè)計中級以上能力,可以獨立承擔中小型嵌入式項目的組織及開發(fā)工作;如果學員本身已經(jīng)擁有一些輔助性經(jīng)驗,將達到嵌入式行內(nèi)高級工程師水平,可以獨立承擔大型嵌入式項目的組織及開發(fā)工作??稍O(shè)計的產(chǎn)品包括消費電子、工業(yè)控制、醫(yī)療電子等無操作系統(tǒng)產(chǎn)品開發(fā)。
2.1 ARM體系結(jié)構(gòu)、ARM簡介、流水線
2.2處理器工作模式
2.3 ARM處理器核
2.4 ARM指令集
2.5 ARM與Thumb交互
1交互工作基礎(chǔ)
2子程序交互和veneers
3 ARM V5TE架構(gòu)擴展
4 RealView MDK、ARM-KEIL開發(fā)軟件介紹、J-LINK、H-JTAG、U-LINK、USB轉(zhuǎn)RS232、USB轉(zhuǎn)并口等常用開發(fā)工具使用練習
2.6異常處理
1中斷處理
2 Abort處理
3 SWI處理
4、復位和未定義指令處理
2.7 ARM模塊的實戰(zhàn)環(huán)節(jié)。
嵌入式編程最終目標還是對接口設(shè)備的操作。通過該課程的學習,學員可以掌握基于ARM的嵌入式硬件平臺接口設(shè)計以及各種常用接口模塊的開發(fā)。
1基于ARM的嵌入式硬件平臺接口設(shè)計
1)基于ARM的SOC組成
2)構(gòu)建ARM嵌入式系統(tǒng)
2嵌入式硬件平臺接口操作
GPIO模塊實驗
UART模塊實驗
TFT LCD彩屏模塊實驗
中斷實驗
AD模塊實驗
觸摸屏模塊實驗
RTC模塊實驗
定時器模塊實訓
PWM模塊實驗
SDRAM模塊實驗
NOR FLASH模塊
NAND FLASH模塊
IIC、IIS模塊
SPI模塊
看門狗模塊
協(xié)處理器:MMU、CACHE、DMA模塊
音頻AC97模塊
視頻Camera模塊
USB接口模塊
SD卡模塊
3、嵌入式Linux系統(tǒng)開發(fā)實戰(zhàn)
嵌入式系統(tǒng)和軟件是指嵌入在硬件中的非PC操作系統(tǒng)和開發(fā)工具軟件,分為嵌入式操作系統(tǒng)、嵌入式驅(qū)動軟件、嵌入式應用軟件,被稱為“驅(qū)動系統(tǒng)的靈魂?!痹摴?jié)課重點學習嵌入式linux操作系統(tǒng)的結(jié)構(gòu)及啟動、內(nèi)核移植等。
3.1 LINUX平臺搭建與環(huán)境熟悉
了解Linux系統(tǒng);區(qū)分各種版本的Linux系統(tǒng),以便于拓展Linux視野。
1 Linux簡介;
2 Linux系統(tǒng)的主要特點;
3 Linux的組成;
4主要的Linux版本;
5嵌入式Linux簡介與發(fā)展
3.2虛擬機安裝和LINUX系統(tǒng)安裝
1虛擬機安裝;
2 Linux系統(tǒng)的安裝;
3 Linux系統(tǒng)的常用軟件的安裝;
4 Linux快速入門
5熟悉運用Linux環(huán)境下,常用命令的操作與系統(tǒng)設(shè)置,如常用的Shell;掌握基本的Shell應用
3.3嵌入式LINUX環(huán)境搭建
1建立嵌入式Linux開發(fā)環(huán)境
2熟悉嵌入式開發(fā)平臺
3嵌入式Linux開發(fā)工具
4 Linux下的調(diào)試技巧
5 MAKE工程管理器
6硬件環(huán)境的搭建;arm-linux-gcc與gcc安裝配置
3.4 U-Boot
了解U-Boot的作用及工作流程;了解Bootloader的代碼結(jié)構(gòu)、編譯過程;移植U-Boot;掌握常用的U-Boot命令。
1 Bootloader介紹
2 u-boot工程介紹
3 u-boot的編譯使用
4 u-boot源碼分析
5 u-boot資源分配
6配置編譯u-boot
7 u-boot移植過程
8.U-Boot常用命令操作
9.添加u-boot新命令
10.設(shè)置u-boot環(huán)境變量
11.u-boot驅(qū)動添加,如網(wǎng)卡:DM9000
3.5 LINUX內(nèi)核移植
熟悉內(nèi)核的原碼結(jié)構(gòu)和kbuild Makefile語法;掌握和內(nèi)核、驅(qū)動模塊編譯相關(guān)的原理及方法。
1 Linux內(nèi)核介紹
2 Linux內(nèi)核特點
3 Linux內(nèi)核源代碼結(jié)構(gòu)
4 Linux內(nèi)核選項解析
5 Linux內(nèi)核編譯鏈接
6內(nèi)核模塊編譯、使用方法
3.6 LINUX根文件系統(tǒng)
1 busybox包移植、編譯
2 Linux跟文件系統(tǒng)制作過程
3根文件系統(tǒng)介紹
4 nfs文件服務器系統(tǒng)搭建
3.7 LINUX驅(qū)動開發(fā)
驅(qū)動開發(fā)是嵌入式Linux開發(fā)難度最高的內(nèi)容,也是目前嵌入式行業(yè)最緊缺的人才之一。本課程介紹嵌入式Linux驅(qū)動開發(fā)相關(guān)概念及開發(fā)流程,了解驅(qū)動開發(fā)的關(guān)鍵技術(shù)點,重點講解嵌入式Linux下常用接口驅(qū)動的編寫方法,包括:
1字符型LED驅(qū)動開發(fā)(GPIO口驅(qū)動)
2按鍵驅(qū)動開發(fā)(中斷驅(qū)動,在驅(qū)動中中斷程序的編寫,消息隊列的應用
3 ADC驅(qū)動開發(fā)
4網(wǎng)卡驅(qū)動開發(fā)
5串口驅(qū)動開發(fā)
6液晶屏(TFT彩屏驅(qū)動開發(fā)
7觸摸屏驅(qū)動+tslib(中間插件移植與設(shè)置)
8 IIS驅(qū)動開發(fā)+maplay移植與應用(mp3播放)
3.8 LINUX應用學習
嵌入式Linux應用開發(fā)和系統(tǒng)開發(fā)是嵌入式Linux中最重要的一部分,也是企業(yè)人才需求最廣的一部分。主要目標是精通嵌入式Linux下的程序設(shè)計,熟練掌握嵌入式Linux的開發(fā)環(huán)境、系統(tǒng)編程以及網(wǎng)絡(luò)編程,熟悉C++、QT編程并且深刻體會整個嵌入式Linux項目開發(fā)流程,強化學員對Linux應用開發(fā)的能力。
1 Linux系統(tǒng)中的進程的概念,在應用程序中線程與父子進程的創(chuàng)建與應用
2線程之間、進程之間的通信
3進程間通信基本概念
4信號(SIGNAL)
5內(nèi)存映射(MAPPED MEMORY)
6消息隊列(MESSAGE QUEUE)
7信號量(SEMAPHORE)
8 tcPip協(xié)議在應用程序中的編程開發(fā)(SOCKET套接字編程開發(fā))9 ISO/OSI七層協(xié)議模型與IP網(wǎng)絡(luò)四層模式
1)TCP/IP協(xié)議簇
2)基于嵌入式Linux的TCP/IP網(wǎng)絡(luò)結(jié)構(gòu)
3)基于嵌入式Linux的SOCKET編程
3.9 QT移植與開發(fā)
通過本課程的學習,學員能夠了解嵌入式Linux下的幾種常見GUI及其特點,重點能掌握QT的有關(guān)內(nèi)容,具備QT程序設(shè)計能力。了解嵌入式數(shù)據(jù)庫的配置與開發(fā)。
1嵌入式LinuxGUI介紹
2嵌入式QT開發(fā)包移植
3.10嵌入式系統(tǒng)應用程序,驅(qū)動程序調(diào)試
1 Linux基本工具調(diào)試使用。GDB,insight調(diào)試等
2 Linux應用程序的編程
3嵌入式產(chǎn)品程序打包與發(fā)布
3.11嵌入式項目綜合調(diào)試,產(chǎn)品發(fā)布
本課程將通過一個真實完整的項目案例,讓學員了解真實項目的開發(fā)流程,掌握如何將所學知識應用到項目開發(fā)中。將模擬真實項目的管理過程,培養(yǎng)學員項目團隊協(xié)同開發(fā)能力,項目文檔編寫能力和新知識的學習能力,為下一步做好知識上和心理上的充分準備。
4、項目實戰(zhàn)階段(多項目實戰(zhàn))
4.1國際項目管理、電子產(chǎn)品項目管理知識詳解
1國際項目管理概述
2國際項目管理三要素
3電子產(chǎn)品開發(fā)規(guī)劃、流程
4工作分解表WBS
5甘特圖
6電子產(chǎn)品項目計劃書編制
4.2嵌入式模塊實踐階段:嵌入式開發(fā)剖析,項目分析方法
1基于Qtopia的GUI開發(fā)、linux應用程序調(diào)試技術(shù)
2 FAT16/32文件系統(tǒng)剖析與移植
3 TCPIP協(xié)議剖析,移植及應用
4圖象采集
5操作系統(tǒng)平臺上的編程實戰(zhàn)
6基于操作系統(tǒng)的底層驅(qū)動的移植
7 USB傳輸剖析,移植及應用(也可討論選擇)
8嵌入式開發(fā)工程師經(jīng)驗交流,基于嵌入式產(chǎn)品開發(fā)項目管理、項目開發(fā)規(guī)范
4.3實戰(zhàn)開發(fā)
通過系統(tǒng)的學習后,我們來個實際的項目實戰(zhàn):從所列出的項目中選出3-5個項目在工程師指導下自獨立開