国产精品一久久香蕉产线看/亚洲图区欧美/亚洲国产精品电影人久久网站/欧美日韩在线视频一区

歡迎光臨中圖網 請 | 注冊
> >
原子嵌入式Linux驅動開發詳解

包郵 原子嵌入式Linux驅動開發詳解

作者:左忠凱
出版社:清華大學出版社出版時間:2022-08-01
開本: 16開 頁數: 740
中 圖 價:¥111.5(6.6折) 定價  ¥169.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

原子嵌入式Linux驅動開發詳解 版權信息

原子嵌入式Linux驅動開發詳解 本書特色

全面解析基于ARM內核的嵌入式Linux驅動開發,幫助單片機開發者順利過渡到嵌入式Linux驅動開發。 本書配有數十個項目例程和源代碼,并配有豐富的教學視頻內容

原子嵌入式Linux驅動開發詳解 內容簡介

嵌入式Linux涉及的知識點很多,對初學者的基礎要求高,在知識儲備的廣度和深度上都對學習者提出了很高的要求。大多數轉型嵌入式Linux開發的朋友都是以前從事單片機開發工作的工程師,因此如何從單片機開發工程師轉型為嵌入式Linux開發工程師,這個過程非常重要。 單片機工程師大多數都是在Windows環境下工作,使用集成IDE編寫并編譯代碼,然后在IDE上通過DownLoad按鈕一鍵下載代碼到單片機中。至于集成IDE是怎么組織源文件,又是怎么編譯的并不清楚。 本書就以單片機工程*熟悉的“裸機”開發為例,講解如何在Ubuntu下搭建開發環境,如何使用VScode編寫程序,如何使用make工具編譯源碼。通過這些操作,大家就可以對集成式IDE與開源開發環境有很清晰的認識。當掌握了開發方式以后,剩下的就是通過大量的裸機案例來加深對I.MX6ULL這顆芯片的認識,了解各個外設的應用,為后面學習嵌人式Linux驅動開發打下堅實的基礎。本書后半部分詳細講解了如何移植uboot、Linux內核、根文件系統,*終在開發板上搭建出一個基礎的嵌入式Linux系統,后續的嵌入式Linux驅動開發就在這個小系統上進行。 本書可作為廣大從事嵌人式開發、MCU開發、物聯網應用開發等工程技術人員的學習和參考用書,也可作為高等院校計算機、電子、自動化等專業嵌入式系統、微機接口、物聯網、單片機等課程的教材。

原子嵌入式Linux驅動開發詳解 目錄

**篇Ubuntu操作系統入門 (掃描封底“本書資源”二維碼獲取) 第二篇裸機開發 第1章開發環境搭建 1.1Ubuntu和Windows文件互傳 1.2Ubuntu下NFS和SSH服務開啟 1.2.1NFS服務開啟 1.2.2SSH服務開啟 1.3Ubuntu交叉編譯工具鏈安裝 1.3.1交叉編譯器安裝 1.3.2安裝相關庫 1.3.3交叉編譯器驗證 1.4Visual Studio Code軟件的安裝和使用 1.4.1Visual Studio Code軟件的安裝 1.4.2Visual Studio Code插件的安裝 1.4.3Visual Studio Code新建工程 1.5CH340串口驅動安裝 1.6MobaXterm軟件安裝和使用 1.6.1MobaXterm軟件安裝 1.6.2MobaXterm軟件使用 第2章CortexA7 MPCore架構 2.1CortexA7 MPCore簡介 2.2CortexA處理器運行模型 2.3CortexA寄存器組 2.3.1通用寄存器 2.3.2程序狀態寄存器 第3章ARM匯編基礎 3.1GNU匯編語法 3.2CortexA7常用匯編指令 3.2.1處理器內部數據傳輸指令 3.2.2存儲器訪問指令 3.2.3壓棧和出棧指令 3.2.4跳轉指令 3.2.5算術運算指令 3.2.6邏輯運算指令 第4章匯編LED燈實驗 4.1I.MX6U GPIO詳解 4.1.1STM32 GPIO回顧 4.1.2I.MX6ULL I/O命名 4.1.3I.MX6ULL I/O復用 4.1.4I.MX6ULL I/O配置 4.1.5I.MX6ULL GPIO配置 4.1.6I.MX6ULL GPIO時鐘使能 4.2硬件原理分析 4.3實驗程序編寫 4.4編譯、下載和驗證 4.4.1編譯代碼 4.4.2創建Makefile文件 4.4.3代碼燒寫 4.4.4代碼驗證 第5章I.MX6U啟動方式詳解 5.1啟動方式選擇 5.1.1串行下載 5.1.2內部BOOT模式 5.2BOOT ROM初始化內容 5.3啟動設備 5.4鏡像燒寫 5.4.1IVT和Boot Data 5.4.2DCD數據 第6章C語言版LED燈實驗 6.1C語言版LED燈簡介 6.2硬件原理分析 6.3實驗程序編寫 6.3.1匯編部分實驗程序編寫 6.3.2C語言部分實驗程序編寫 6.4編譯、下載和驗證 6.4.1編寫Makefile 6.4.2鏈接腳本 6.4.3修改Makefile 6.4.4下載和驗證 第7章模仿STM32驅動開發格式實驗 7.1模仿STM32寄存器定義 7.1.1STM32寄存器定義簡介 7.1.2I.MX6ULL寄存器定義 7.2硬件原理分析 7.3實驗程序編寫 7.4編譯、下載和驗證 7.4.1編寫Makefile和鏈接腳本 7.4.2編譯和下載 第8章官方SDK移植實驗 8.1官方SDK移植簡介 8.2硬件原理分析 8.3實驗程序編寫 8.3.1SDK文件移植 8.3.2創建cc.h文件 8.3.3編寫實驗代碼 8.4編譯、下載和驗證 8.4.1編寫Makefile和鏈接腳本 8.4.2編譯和下載 第9章BSP工程管理實驗 9.1BSP工程管理簡介 9.2硬件原理分析 9.3實驗程序編寫 9.3.1創建imx6ul.h文件 9.3.2編寫led驅動代碼 9.3.3編寫時鐘驅動代碼 9.3.4編寫延時驅動代碼 9.3.5修改main.c文件 9.4編譯、下載和驗證 9.4.1編寫Makefile和鏈接腳本 9.4.2編譯和下載 第10章蜂鳴器實驗 10.1有源蜂鳴器簡介 10.2硬件原理分析 10.3實驗程序編寫 10.4編譯、下載和驗證 10.4.1編寫Makefile和鏈接腳本 10.4.2編譯和下載 第11章按鍵輸入實驗 11.1按鍵輸入簡介 11.2硬件原理分析 11.3實驗程序編寫 11.4編譯、下載和驗證 11.4.1編寫Makefile和鏈接腳本 11.4.2編譯和下載 第12章主頻和時鐘配置實驗 12.1I.MX6ULL時鐘系統詳解 12.1.1系統時鐘來源 12.1.27路PLL時鐘源 12.1.3時鐘樹簡介 12.1.4內核時鐘設置 12.1.5PFD時鐘設置 12.1.6AHB、IPG和PERCLK根時鐘設置 12.2硬件原理分析 12.3實驗程序編寫 12.4編譯、下載和驗證 12.4.1編寫Makefile和鏈接腳本 12.4.2編譯和下載 第13章GPIO中斷實驗 13.1CortexA7中斷系統詳解 13.1.1STM32中斷系統回顧 13.1.2CortexA7中斷系統簡介 13.1.3GIC控制器簡介 13.1.4CP15協處理器 13.1.5中斷使能 13.1.6中斷優先級設置 13.2硬件原理分析 13.3實驗程序編寫 13.3.1移植SDK包中斷相關文件 13.3.2重新編寫start.s文件 13.3.3通用中斷驅動文件編寫 13.3.4修改GPIO驅動文件 13.3.5按鍵中斷驅動文件編寫 13.3.6編寫main.c文件 13.4編譯、下載和驗證 13.4.1編寫Makefile和鏈接腳本 13.4.2編譯和下載 第14章EPIT定時器實驗 14.1EPIT定時器簡介 14.2硬件原理分析 14.3實驗程序編寫 14.4編譯、下載和驗證 14.4.1編寫Makefile和鏈接腳本 14.4.2編譯和下載 第15章定時器按鍵消抖實驗 15.1定時器按鍵消抖簡介 15.2硬件原理分析 15.3實驗程序編寫 15.4編譯、下載和驗證 15.4.1編寫Makefile和鏈接腳本 15.4.2編譯和下載 第16章高精度延時實驗 16.1高精度延時簡介 16.1.1GPT定時器簡介 16.1.2定時器實現高精度延時原理 16.2硬件原理分析 16.3實驗程序編寫 16.4編譯、下載和驗證 16.4.1編寫Makefile和鏈接腳本 16.4.2編譯和下載 第17章UART串口通信實驗 17.1I.MX6ULL串口通信簡介 17.1.1UART簡介 17.1.2I.MX6ULL UART簡介 17.2硬件原理分析 17.3實驗程序編寫 17.4編譯、下載和驗證 17.4.1編寫Makefile和鏈接腳本 17.4.2編譯和下載 第18章串口格式化函數移植實驗 18.1串口格式化函數移植簡介 18.2硬件原理分析 18.3實驗程序編寫 18.4編譯、下載和驗證 18.4.1編寫Makefile和鏈接腳本 18.4.2編譯和下載 第19章DDR3實驗 19.1DDR3內存簡介 19.1.1何為RAM和ROM 19.1.2SRAM簡介 19.1.3SDRAM簡介 19.1.4DDR簡介 19.2DDR3關鍵時間參數 19.3I.MX6ULL MMDC控制器簡介 19.3.1MMDC控制器 19.3.2MMDC控制器信號引腳 19.3.3MMDC控制器時鐘源 19.4ALPHA開發板DDR3L原理圖 19.5DDR3L初始化與測試 19.5.1ddr_stress_tester簡介 19.5.2DDR3L驅動配置 19.5.3DDR3L校準 19.5.4DDR3L超頻測試 19.5.5DDR3L驅動總結 第20章RGB LCD顯示實驗 20.1LCD和eLCDIF簡介 20.1.1LCD簡介 20.1.2eLCDIF接口簡介 20.2硬件原理分析 20.3實驗程序編寫 20.4編譯、下載和驗證 20.4.1編寫Makefile和鏈接腳本 20.4.2編譯和下載 第21章RTC實時時鐘實驗 21.1I.MX6ULL RTC實時時鐘簡介 21.2硬件原理分析 21.3實驗程序編寫 21.3.1修改文件MCIMX6Y2.h 21.3.2編寫實驗程序 21.4編譯、下載和驗證 21.4.1編寫Makefile和鏈接腳本 21.4.2編譯和下載 第22章I2C實驗 22.1I2C和AP3216C簡介 22.1.1I2C簡介 22.1.2I.MX6ULL I2C簡介 22.1.3AP3216C簡介 22.2硬件原理分析 22.3實驗程序編寫 22.4編譯、下載和驗證 22.4.1編寫Makefile和鏈接腳本 22.4.2編譯和下載 第23章SPI實驗 23.1SPI & ICM20608簡介 23.1.1SPI簡介 23.1.2I.MX6ULL ECSPI簡介 23.1.3ICM20608簡介 23.2硬件原理分析 23.3實驗程序編寫 23.4編譯、下載和驗證 23.4.1編寫Makefile和鏈接腳本 23.4.2編譯和下載 第24章多點電容觸摸屏實驗 24.1多點電容觸摸屏簡介 24.2硬件原理分析 24.3實驗程序編寫 24.4編譯、下載和驗證 24.4.1編寫Makefile和鏈接腳本 24.4.2編譯和下載 第25章LCD背光調節實驗 25.1LCD背光調節簡介 25.2硬件原理分析 25.3實驗程序編寫 25.4編譯、下載和驗證 25.4.1編寫Makefile和鏈接腳本 25.4.2編譯和下載 第26章ADC實驗 26.1ADC簡介 26.1.1什么是ADC 26.1.2I.MX6ULL ADC簡介 26.2硬件原理分析 26.3實驗程序編寫 26.4編譯、下載和驗證 26.4.1編寫Makefile和鏈接腳本 26.4.2編譯和下載 第三篇系統移植 第27章UBoot使用實驗 27.1UBoot簡介 27.2UBoot初次編譯 27.3UBoot燒寫與啟動 27.4UBoot命令使用 27.4.1信息查詢命令 27.4.2環境變量操作命令 27.4.3內存操作命令 27.4.4網絡操作命令 27.4.5EMMC和SD卡操作命令 27.4.6FAT格式文件系統操作命令 27.4.7EXT格式文件系統操作命令 27.4.8NAND操作命令 27.4.9BOOT操作命令 27.4.10其他常用命令 第28章UBoot頂層Makefile詳解 28.1UBoot工程目錄分析 28.2VSCode工程創建 28.3UBoot頂層Makefile分析 28.3.1版本號 28.3.2MAKEFLAGS變量 28.3.3命令輸出 28.3.4靜默輸出 28.3.5設置編譯結果輸出目錄 28.3.6代碼檢查 28.3.7模塊編譯 28.3.8獲取主機架構和系統 28.3.9設置目標架構、交叉編譯器和配置文件 28.3.10調用scripts/Kbuild.include 28.3.11交叉編譯工具變量設置 28.3.12導出其他變量 28.3.13make xxx_defconfig過程 28.3.14Makefile.build腳本分析 28.3.15make過程 第29章UBoot啟動流程詳解 29.1鏈接腳本uboot.lds詳解 29.2UBoot啟動流程解析 29.2.1reset函數源碼詳解 29.2.2lowlevel_init函數詳解 29.2.3s_init函數詳解 29.2.4_main函數詳解 29.2.5board_init_f函數詳解 29.2.6relocate_code函數詳解 29.2.7relocate_vectors函數詳解 29.2.8board_init_r函數詳解 29.2.9run_main_loop函數詳解 29.2.10cli_loop函數詳解 29.2.11cmd_process函數詳解 29.3bootz啟動Linux內核過程 29.3.1images全局變量 29.3.2do_bootz函數 29.3.3bootz_start函數 29.3.4do_bootm_states函數 29.3.5bootm_os_get_boot_func函數 29.3.6do_bootm_linux函數 第30章UBoot移植 30.1NXP官方開發板uboot編譯測試 30.1.1查找NXP官方的開發板默認配置文件 30.1.2編譯NXP官方開發板對應的uboot 30.1.3燒寫驗證與驅動測試 30.2在UBoot中添加自己的開發板 30.2.1添加開發板默認配置文件 30.2.2添加開發板對應的頭文件 30.2.3添加開發板對應的板級文件夾 30.2.4修改UBoot圖形界面配置文件 30.2.5使用新添加的板子配置編譯uboot 30.2.6LCD驅動修改 30.2.7網絡驅動修改 30.2.8其他需要修改的地方 30.3bootcmd和bootargs環境變量 30.3.1環境變量bootcmd 30.3.2環境變量bootargs 30.4uboot啟動Linux測試 30.4.1從EMMC啟動Linux系統 30.4.2從網絡啟動Linux系統 第31章UBoot圖形化配置及其原理 31.1UBoot圖形化配置體驗 31.2menuconfig圖形化配置原理 31.2.1make menuconfig過程分析 31.2.2Kconfig語法簡介 31.3添加自定義菜單 第32章Linux內核頂層Makefile詳解 32.1Linux內核獲取 32.2Linux內核初次編譯 32.3Linux工程目錄分析 32.4VSCode工程創建 32.5頂層Makefile詳解 32.5.1make xxx_defconfig過程 32.5.2Makefile.build腳本分析 32.5.3make過程 32.5.4builtin.o文件編譯生成過程 32.5.5make zImage過程 第33章Linux內核啟動流程 33.1鏈接腳本vmlinux.lds 33.2Linux內核啟動流程分析 33.2.1Linux內核入口stext 33.2.2__mmap_switched函數 33.2.3start_kernel函數 33.2.4rest_init函數 33.2.5init進程 第34章Linux內核移植 34.1創建VSCode工程 34.2NXP官方開發板Linux內核編譯 34.2.1修改頂層Makefile 34.2.2配置并編譯Linux內核 34.2.3Linux內核啟動測試 34.2.4根文件系統缺失錯誤 34.3在Linux中添加自己的開發板 34.3.1添加開發板默認配置文件 34.3.2添加開發板對應的設備樹文件 34.3.3編譯測試 34.4CPU主頻和網絡驅動修改 34.4.1CPU主頻修改 34.4.2使能8線EMMC驅動 34.4.3修改網絡驅動 34.4.4保存修改后的圖形化配置文件 第35章根文件系統構建 35.1根文件系統簡介 35.2BusyBox構建根文件系統 35.2.1BusyBox簡介 35.2.2編譯BusyBox構建根文件系統 35.2.3向根文件系統添加lib庫 35.2.4創建其他文件夾 35.3根文件系統初步測試 35.4完善根文件系統 35.4.1創建/etc/init.d/rcS文件 35.4.2創建/etc/fstab文件 35.4.3創建/etc/inittab文件 35.5根文件系統其他功能測試 35.5.1軟件運行測試 35.5.2中文字符測試 35.5.3開機自啟動測試 35.5.4外網連接測試 第36章系統燒寫 36.1MfgTool工具簡介 36.2MfgTool工作原理簡介 36.2.1燒寫方式 36.2.2系統燒寫原理 36.3燒寫NXP官方系統 36.4燒寫自制的系統 36.4.1系統燒寫 36.4.2網絡開機自啟動設置 36.5改造自己的燒寫工具 36.5.1改造MfgTool 36.5.2燒寫測試 36.5.3解決Linux內核啟動失敗
展開全部

原子嵌入式Linux驅動開發詳解 作者簡介

左忠凱,14年參加工作以來一直從事于嵌入式教育,以第一作者身份著有《FreeRTOS源碼詳解與應用開發》,參與編寫了正點原子大量的手把手教你STM32系列書籍,比如《精通STM32F4庫函數版》、《STM32F7原理與應用》等。同時錄制了大量的STM32相關教學視頻,廣受好評。18年開始負責公司Linux教育平臺的研發,編寫了1800多頁的Linux驅動開發教程,錄制了200多講Linux開發視頻,負責的I.MX6ULL開發板自從發布至今,銷量一直處于淘寶第一,Linux驅動開發相關視頻在各大平臺的點擊量超過30萬次。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服