SOM860E單板機(jī)用戶手冊(cè)_第1頁
SOM860E單板機(jī)用戶手冊(cè)_第2頁
SOM860E單板機(jī)用戶手冊(cè)_第3頁
SOM860E單板機(jī)用戶手冊(cè)_第4頁
SOM860E單板機(jī)用戶手冊(cè)_第5頁
已閱讀5頁,還剩73頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

SOM860E單板機(jī)

用戶手冊(cè)

版本V1.0

2019年07月12日

版權(quán)聲明:

?Microsoft,MS-DOS,Windows操作系統(tǒng),WindowsEmbeddedCompact7由

微軟公司授權(quán)使用。

版本更新記錄:

版本更新日期描述

1.02019-07-12初始版本

目錄

第1章概述........................................................1

1.1產(chǎn)品介紹....................................................1

1.2硬件特性....................................................1

1.2.1核心板.......................................................1

1.2.2擴(kuò)展板......................................................3

1.3硬件尺寸....................................................5

第2章LINUX操作系統(tǒng).............................................7

2.1軟件資源....................................................7

2.1.1軟件資源的位置...................................................................................7

2.1.2BSP軟件包.................................................8

2.2嵌入式LINUX的組成.........................................9

2.3開發(fā)環(huán)境搭建................................................9

2.3.1交叉編譯工具安裝...........................................10

2.3.2添加環(huán)境變量...............................................10

2.4準(zhǔn)備源代碼................................................10

2.4.1從產(chǎn)品光盤獲取源代碼.......................................10

2.4.2用網(wǎng)絡(luò)工具獲取源代碼.......................................12

2.5編譯.......................................................12

2.6系統(tǒng)定制...................................................13

2.6.1U-BootLOGO制作..........................................13

2.6.2進(jìn)入內(nèi)核配置菜單...........................................14

2.6.3內(nèi)核配置...................................................14

2.6.4編譯內(nèi)核...................................................15

2.6.5驅(qū)動(dòng)測(cè)試...................................................15

2.7驅(qū)動(dòng)介紹...................................................16

2.7.1BSP的所有驅(qū)動(dòng)源碼路徑:...................................16

2.7.2SD/MMC............................................................................................18

2.7.3LCDC..................................................................................................19

2.7.4AudioIn/Out......................................................................................20

2.8驅(qū)動(dòng)開發(fā)...................................................21

2.8.1GPIO_keys驅(qū)動(dòng)............................................21

2.8.2GPIOJeds驅(qū)動(dòng)............................................27

2.9系統(tǒng)更新...................................................29

2.9.1TF卡系統(tǒng)映像更新.........................................29

2.9.2eMMC更新/恢復(fù)............................................33

2.10顯示模式配置...............................................35

2.11測(cè)試和演示................................................36

2.11.1LED測(cè)試..................................................36

2.11.2KEYPAD測(cè)試..............................................36

2.11.3觸摸屏測(cè)試................................................37

2.11.4背光測(cè)試...................................................37

2.11.5ADC測(cè)試..................................................38

2.11.6RTC測(cè)試..................................................39

2.11.7TF卡測(cè)試..................................................39

2.11.8USBDEVICE測(cè)試..........................................40

2.11.9USBHOST測(cè)試............................................42

2.11.10AUDIO測(cè)試................................................43

2.11.11VIDEO測(cè)試................................................44

2.11.12網(wǎng)絡(luò)測(cè)試...................................................45

2.11.13CAN測(cè)試...................................................46

2.11.14RS485測(cè)試................................................48

2.11.15串口測(cè)試...................................................49

2.11.16蜂鳴器測(cè)試................................................49

2.11.17休眠喚醒測(cè)試...............................................49

2.11.18UniqueID..........................................................................................50

2.11.19GP1O測(cè)試.................................................51

2.11.20SPT測(cè)試...................................................52

2.11.21CAMERA測(cè)試..............................................53

2.11.22WIFI測(cè)試...................................................53

2.11.23BLUETOOTH測(cè)試.........................................55

2.11.24Debian配置................................................56

2.12上層開發(fā)...................................................58

2.12.1LED應(yīng)用程序開發(fā)示例......................................58

2.12.2CAN應(yīng)用程序開發(fā)示例.....................................59

2.12.3串行接口應(yīng)用程序開發(fā).......................................66

第1章概述

1.1產(chǎn)品介紹

SOM860E一款基于AM335X的嵌入式單板機(jī),它采用金手指式核心板加底板的分離

式結(jié)構(gòu)設(shè)計(jì),方便用戶二次開發(fā)。主板板載6路串口(其中1路帶隔離RS485接口)、1路

帶隔離CAN2.0接口、2路千兆以太網(wǎng)口、2路USBHost和1路USBOTG、LCD觸摸屏、

TF卡等接口。支持Linux-4.1操作系統(tǒng)。資料提供包括用戶手冊(cè)、PDF原理圖、外擴(kuò)接口

驅(qū)動(dòng)、BSP源碼包、開發(fā)工具等,為開發(fā)者提供完善的軟件開發(fā)環(huán)境,縮短開發(fā)時(shí)間,實(shí)

現(xiàn)面向包括便攜式導(dǎo)航系統(tǒng)、數(shù)字視頻機(jī)頂盒、便攜式教育/游戲設(shè)備、工業(yè)自動(dòng)化、樓宇

自動(dòng)化、人機(jī)界面、教學(xué)/醫(yī)療設(shè)備等行業(yè)應(yīng)用產(chǎn)品快速上市。

1.2硬件特性

SOM860E評(píng)估板是基于AM335X處理器,同時(shí)也是集成了此芯片主要功能與特性的評(píng)

估板,以下是板子的特性:

1.2.1核心板

電氣參數(shù)

?工作溫度:ooc~7(rc

?環(huán)境溫度:20%~90%,非冷凝

?機(jī)械尺寸:60mmx27mm

?輸入電壓:3.3V

處理器

?1GHzARMCortex?-A832-BitRISCMicroprocessor

■NEON?SIMDCoprocessor

■32KB/32KBofL1Instruction/DataCachewithSingle-ErrorDetection

(parity)

■256KBofL2CachewithErrorCorrectingCode(ECC)

?SGX530GraphicsEngine

?ProgrammableReal-TimeUnitSubsystem

存儲(chǔ)器

?8GByteeMMC

?2*256MBDDR3SDRAM

板對(duì)板連接器和引出接口信號(hào)

?兩個(gè)0.4mm間距2*40-pin排針

?TFTLCD信號(hào)(支持24-bpp并行RGB接口LCD)

?2路USB2.0High-SpeedOTG信號(hào)

?6路UART信號(hào)

?1路SPI信號(hào)

?2路10/100/1000Mbps以太網(wǎng)MAC(EMAC),帶管理數(shù)據(jù)輸入/輸出模塊

(MDIO)

?1路McASP信號(hào)

?8路12bitADC接口

?3路IIC總線信號(hào)

?1路4線SDMMC信號(hào)

?GPMC信號(hào)?

注意:

UART、IIC,SPLCAN存在部分引腳復(fù)用,詳細(xì)情況請(qǐng)參考芯片手冊(cè)和附帶原理圖

S0M-860-E

1.2.2擴(kuò)展板

電氣參數(shù)

?工作溫度:0。070毛

?環(huán)境濕度:20%~90%,非冷凝

?機(jī)械尺寸:95mx95m

?輸入電壓:12V

音頻/視頻接口

?LCD/4線電阻觸摸屏接口(24位數(shù)據(jù)RGB全彩色輸出,50-pinFPC連接器)

?一個(gè)音頻輸入接口(3.5mm音頻接口)

?一個(gè)雙聲道音頻輸出接口(3.5mm音頻接口)

數(shù)據(jù)傳輸接口

?兩個(gè)10/100/1000Mbps以太網(wǎng)接口(WinCE7僅支持一個(gè)以太網(wǎng)口)

?一個(gè)CAN2.0接口和一個(gè)RS485接口(8Pin鳳凰端子連接器)

?一個(gè)USB2.0High-SpeedOTGPortswithIntegratedPHY(480Mbps,Mini

USB接口)

?兩個(gè)USB2.0High-SpeedHOSTPortswithIntegratedPHY(480Mbps,

USB-A接口)

?一個(gè)TF卡接口(兼容SD/MMC通信,3.3V邏輯)

?串口

■UARTO,3線RS232電平,DB9調(diào)試串口

■UART2,3線RS232電平,DB9普通串口

■UART3,3線TTL電平,排針弓I出

■UART4,3線TTL電平,排針引出

■UART5,3線TTL電平,排針弓I出

?GPI。接口

輸入接口及其他

?二個(gè)自定義按鍵(MENU、BACK)

?一個(gè)復(fù)位按鍵

?一個(gè)蜂嗚器

?一個(gè)電源指示燈

?兩個(gè)用戶自定義燈

SBC-860

1.3硬件尺寸

圖1-1SOM-860-E硬件尺寸圖

8

9

0

0

7

p

2

11

-7K

03

3

0

0a0

oCD

o

cn

oo

o

o

o

o

o

b-T□OOOODOOOO

Ooooo0oooooooooo

op()0()C)

6DOOOd

°o°o

qowo

°o°oE口

7

9

0

0

9

/

0

Unit:mm

圖1-2擴(kuò)展板硬件尺寸

第2章Linux操作系統(tǒng)

本章節(jié)將簡要介紹產(chǎn)品附帶的DVD光盤中的Linux軟件資源,并且會(huì)詳細(xì)講解嵌入式

Linux系統(tǒng)開發(fā)的過程、驅(qū)動(dòng)程序及開發(fā)、系統(tǒng)更新操作、功能測(cè)試、應(yīng)用程序開發(fā)實(shí)例等

內(nèi)容。

注意:

C3本文檔使用UbuntuLinux系統(tǒng)作為操作系統(tǒng)。如果您的PC尚未安裝Linux系統(tǒng),請(qǐng)參考章節(jié)錯(cuò)誤!

未找到引用源。錯(cuò)誤!未找到引用源。的內(nèi)容。

2.1軟件資源

產(chǎn)品附帶光盤中包含了Demo程序、應(yīng)用程序、Linux源代碼和工具等,便于用戶輕松

快速地使用SOM860E開發(fā)套件進(jìn)行Linux應(yīng)用和系統(tǒng)的開發(fā)。

2.1.1軟件資源的位置

您可以通過下列表格中的內(nèi)容,在產(chǎn)品附帶的DVD-ROM中找到相應(yīng)的程序和代碼;

表2-1程序和代碼

類別位置

應(yīng)用程序CD\Source\App\uart.tar.xz

CD\Source\linux-am335x.tar.xz

源代碼CD\lmage\rootfs.tar.xz

CD\Source\u-boot-am335x.tar.xz

工具CD\Tools

映像CDMmage

2.1.2BSP軟件包

下方的表格列出了BSP軟件包所包含的內(nèi)容以及文件格式;

表2-2BSP軟件包內(nèi)容

名稱備注源碼/二進(jìn)制文件

MMC/SD提供源碼

SPL

FAT提供源碼

BootloaderMMC/SD提供源碼

u-bootFAT提供源碼

NET提供源碼

支持ROM/CRAM/EXT4/FA

Kernellinux-4.1T/NFS/JFFS2/UBIFS等多種提供源碼

文件系統(tǒng)

Serial串口驅(qū)動(dòng)提供源碼

RTC硬件時(shí)鐘驅(qū)動(dòng)提供源碼

NET10/100M/1000M以太網(wǎng)驅(qū)動(dòng)提供源碼

CANCAN總線驅(qū)動(dòng)提供源碼

SPISPI驅(qū)動(dòng)提供源碼

I2C12c驅(qū)動(dòng)提供源碼

LCDTFTLCD驅(qū)動(dòng)提供源碼

TouchScreen4線觸摸屏控制器驅(qū)動(dòng)提供源碼

ADC4路普通ADC通道提供源碼

DeviceDriver

MMC/SDMMC/SD控制器驅(qū)動(dòng)提供源碼

USBOTGUSBOTG驅(qū)動(dòng)提供源碼

Audio聲卡驅(qū)動(dòng)(支持錄/放音)提供源碼

KeypadGPIO鍵盤驅(qū)動(dòng)提供源碼

LED用戶LED燈驅(qū)動(dòng)提供源碼

(JVCCameraUSB攝像頭驅(qū)動(dòng)提供源碼

VGAVGA8000-A模塊驅(qū)動(dòng)提供源碼

WIFIUSBWIFI模塊驅(qū)動(dòng)提供源碼

BluetoothUSB藍(lán)牙模塊驅(qū)動(dòng)提供源碼

RamdiskBusyBox精簡文件系統(tǒng)提供映像

RootfsDebian8精簡版,不帶桌面系統(tǒng)提供映像

2.2嵌入式Unux的組成

SOM860E出廠默認(rèn)在eMMC中寫入了的Linux-4.1操作系統(tǒng),支持4.3寸觸摸屏。該

系統(tǒng)的基本組成包括SPL(ML。)、u-boot、kerneLramdisk和rootfs五個(gè)部分。以下為

系統(tǒng)結(jié)構(gòu)示意圖:

SPLu-bootkernelramdiskrootfs

圖2-1嵌入式Linux系統(tǒng)結(jié)構(gòu)

1)SPL是一級(jí)引導(dǎo)程序,系統(tǒng)上電后由CPU內(nèi)部ROM自動(dòng)拷貝到內(nèi)部RAM并執(zhí)行。

主要作用為初始化CPU,拷貝u-boot到內(nèi)存中,然后把控制權(quán)交給u-boot;

2)u-boot是二級(jí)引導(dǎo)程序,主要用于和用戶進(jìn)行交互,提供映像更新、引導(dǎo)內(nèi)核等

功能;

3)kernel使用Linux4.1內(nèi)核,根據(jù)SOM860E的硬件定制驅(qū)動(dòng)程序;

4)ramdisk采用busybox系統(tǒng),用于支持系統(tǒng)升級(jí);

5)rootfs采用開源文件系統(tǒng)EXT4格式的armDebian8?

2.3開發(fā)環(huán)境搭建

用戶使用SOM860E進(jìn)行軟件開發(fā)之前,必須先搭建Linux交叉開發(fā)環(huán)境,并安裝到電

腦的Linux系統(tǒng)。下面以Ubuntu操作系統(tǒng)為例,介紹如何搭建交叉開發(fā)環(huán)境。

新安裝的Ubuntu系統(tǒng)建議聯(lián)網(wǎng)執(zhí)行下列指令安裝必要軟件工具,以便接下來的操作順

利進(jìn)行:

?sudoapt-getupdate;sudoapt-getinstall-yxz-utilsncurses-devautoconflibt

oolautomaketexinfobisonflexIibc6:i386Iibncurses5:i386Iibstdc++6:i386

注意:

£□每條指令前都加上了符號(hào)“?",以免指令換行導(dǎo)致誤解。

2.3.1交叉編譯工具安裝

將產(chǎn)品附帶的光盤放入PC的光盤驅(qū)動(dòng)器,Ubuntu會(huì)自動(dòng)將其掛載到/media/cdrom目

錄下,然后在Ubuntu的終端窗口中執(zhí)行以下命令來將/media/cdrom/Tools目錄下的交叉編

譯工具解壓到$HOME目錄下;

?mkdir$HOM曰tools

?cd/media/cdrom/Tools

?tar-xvfgcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz-C$HOME/tools

2.3.2添加環(huán)境變量

執(zhí)行以下命令來將之前安裝的工具添加到臨時(shí)環(huán)境變量中;

?exportPATH=$HOME/tools/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin:

$HOM曰otols:$PATH

?exportARCH=arm

?exportCROSS_COMPILE=arm-linux-

注意:

£□您可以將添加環(huán)境變量的命令復(fù)制到用戶目錄下的.bashrc文件中,以便讓系統(tǒng)啟動(dòng)時(shí)自動(dòng)添加環(huán)境

變量。

£3通過echo$PATH命令可以查看路徑。

2.4準(zhǔn)備源代碼

Linux源代碼可從產(chǎn)品附帶的光盤獲取,也可通過網(wǎng)絡(luò)工具獲取,具體方法如下:

2.4.1從產(chǎn)品光盤獲取源代碼

系統(tǒng)所有組成部分的源碼位于光盤的linux/source目錄下,用戶在進(jìn)行開發(fā)前需要把

它們解壓至Ubuntu系統(tǒng):

?mkdir$HOM曰work

?cd$HOM曰work

tar-xvf/media/cdrom/Source/u-boot-am335x.tar.xz

tar-xvf/media/cdrom/Source/linux-am335x.tar.xz

?mkdirrootfs

?sudotar-xvf/media/cdrom/lmage/rootfs.tar.xz-Crootfs

執(zhí)行完以上操作后,當(dāng)前目錄下會(huì)生成u-boot-am335xsIinux-am335x和rootfs目錄。

注意:

ffil源碼文件請(qǐng)不要解壓到其他位置,以免編譯時(shí)出錯(cuò)。

2.4.2用網(wǎng)絡(luò)工具獲取源代碼

用戶還可以在ubuntu系統(tǒng)下通過網(wǎng)絡(luò)工具下載源碼:

1)通過以下命令獲取項(xiàng)目源碼和映像等資料:

?$cd~

?$svncosvn://05/TI/SOM860E

賬戶名和密碼均為guest

2.5編譯

D編譯啟動(dòng)代碼

SOM860E支持MMC/SD啟動(dòng)與eMMC啟動(dòng),如果不短接SOM860E底板上的JP5

跳線,系統(tǒng)優(yōu)先選擇eMMC啟動(dòng),如果短接JP5跳線,系統(tǒng)優(yōu)先選擇SD啟動(dòng)。

下面介紹啟動(dòng)代碼映像文件的生成方法:

?cdu-boot-am335x

?makedistclean

?makeam335x_som860e_defconfig

?make

執(zhí)行完以上操作后,當(dāng)前目錄下會(huì)生成我們需要的啟動(dòng)代碼映像MLO和u-boot.imgo

2)編譯內(nèi)核

對(duì)于Linux系統(tǒng),在Ubuntu終端輸入如下命令:

?cdIinux-am335x

?makedistclean

?makeam335x_som860e_defconfig

?makezlmageam335x-som860e.dtb

執(zhí)行完以上操作后,arch/arm/boot目錄下會(huì)生成我們需要的zlmage文件,

arch/arm/boot/dts下生成am335x-som860e.dtbc

2.6系統(tǒng)定制

Linux內(nèi)核有很多內(nèi)核配置選項(xiàng),用戶可以在默認(rèn)配置的基礎(chǔ)上,增加或裁減驅(qū)動(dòng)和一

些內(nèi)核特性,以更適合用戶的需要。下面舉例說明系統(tǒng)定制的一般流程。

2.6.1U-BootLOGO制作

以Photoshop為例簡要說明制作u-bootLOGO的基本步驟和要點(diǎn)。

?新建圖像

圖2-2RGB顏色-8位

?保存圖像,另存為logo.bmp,彈出對(duì)話框:

BKPOptions

文件格式

?Windows

OOS/2

深度

1位

4位

8位

016位

C24仿

□翻轉(zhuǎn)行序|高級(jí)模式]

圖2-3保存為32位色格式

2.6.2進(jìn)入內(nèi)核配置菜單

出廠內(nèi)核源碼中提供有默認(rèn)配置文件:

Iinux-am335x/arch/arm/configs/am335x_som860e_defconfig

執(zhí)行以下命令來進(jìn)入系統(tǒng)配置菜單;

?cdIinux-am335x

?makeam335x_som860e_defconfig

?makemenuconfig

注意:

CQl若輸入makemenuconfig系統(tǒng)出錯(cuò),Ubuntu系統(tǒng)是需要安裝ncurse,ncurses庫是字符圖形庫,用

于kernel的makemenuconfig,具體的安裝指令:

sudoapt-getinstallncurses-dev0

2.6.3內(nèi)核配置

進(jìn)入配置菜單后根據(jù)定制要求進(jìn)行修改,下面以u(píng)sbgadget模擬USBSrialDevice為

例:

進(jìn)入配置菜單

->DeviceDrivers

->USBsupport

->USBGadgetSupport

->USBGadgetDrivers

?config-Linux/ara4.1.6KernelConfiguration

>DeviceDrivers>USBsupport>USBGadgetSupportqqqqqqqqqqqqqqqqqqqqqqqqqqq

USBGadgetSupport

Arrowkeysnavigatethemenu.<Enter>selectssubmenus---->(orempty

submenus------)?Highlightedlettersarehotkeys.Pressing<Y>

includes.<N>excludes.<M>modularizesfeatures.Press<Eso<Esoto

exit,<?>forHelp,</>forSearch.Legend:[*]built-in[]excluded

Iqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

X----USBGadgetSupport

XDebuggingmessages(DEVELOPMENT)

XDebugginginformationfiles(DEVELOPMENT)

Debugging-informationfilesindebugfs(DEVELOPMENT)

x(2)MaximumVBUSPowerusage(2-500mA)

X⑵Numberofstoragepipelinebuffers

XUSBPeripheralController---->_______

XUSBIgetDrivers(5er~ia-CDCACMandCDCOBI

X

X

X

X

X

X

X

X

m

<Exit><Help><Save><Load>

圖2-4USBGadgetDriverConfiguration

選擇"USBGadgetDrivers(SerialGadget……)”為v*>,然后退出并保存配置。

2.6.4編譯內(nèi)核

請(qǐng)執(zhí)行以下命令重新編譯內(nèi)核:

?makeam335x-som860e.dtbzlmage

執(zhí)行完以上操作后,目錄下生成新的內(nèi)核映像arch/arm/boot/zlmaqe更新到ARM板

上。

2.6.5驅(qū)動(dòng)測(cè)試

連接miniUSB端口和PC的USB插口,設(shè)備管理器中將提示發(fā)現(xiàn)GadgetSerialv2.4

硬件設(shè)備。安裝驅(qū)動(dòng)linux-cdc-acm.inf[Win7系統(tǒng)會(huì)自動(dòng)搜索服務(wù)器中的驅(qū)動(dòng)程序并自動(dòng)

安裝]。

linux-cdc-acm.inf取自內(nèi)核源碼:linux-am335x/Documentation/usb/linux-cdc-ac

m.inf

圖2-5GadgetSerial驅(qū)動(dòng)安裝完成

PC上運(yùn)行串口工具,選擇連接對(duì)應(yīng)的串口號(hào)(本機(jī)上為COM47);ARM板上執(zhí)行串

口測(cè)試程序,對(duì)應(yīng)的串口為/dev/ttvGSO,即可看到雙方收發(fā)的數(shù)據(jù)。

2.7驅(qū)動(dòng)介紹

2.7.1BSP的所有驅(qū)動(dòng)源碼路徑:

表2-3驅(qū)動(dòng)路徑

類別名稱說明驅(qū)動(dòng)源碼路徑

MMC/SDdrivers/mmc/omap_hsmmc.c

SPL

FATfs/

BootloaderMMC/SDdrivers/mmc/omap_hsmmc.c

u-bootFATfs/

NETdrivers/net/cpsw.c

支持ROM/CRAM/EXT4/

fs/

內(nèi)核Linux-4.1FAT/NFS/JFFS2/UBIFS

等多種文件系統(tǒng)

Serial串口驅(qū)動(dòng)drivers/tty/serial/8250/8250_omap.c

設(shè)備驅(qū)動(dòng)

RTG硬件時(shí)鐘驅(qū)動(dòng)drivers/rtc/rtc-omap.c

10/100M/1000M以太網(wǎng)

NETdrivers/net/ethernet/ti/ti_cpsw.c

驅(qū)動(dòng)

drivers/net/can/c_can/c_can_platform.

CANCAN總線驅(qū)動(dòng)

c

SPISPI驅(qū)動(dòng)drivers/spi/spi-omap2-mcspi.c

drivers/gpu/drm/tilcdc/tilcdc_drv.c

LCDTFTLCD驅(qū)動(dòng)

drivers/video/ofdisplaytiming.c

TouchScreen4線觸摸屏控制器驅(qū)動(dòng)drivers/input/touchscreen/ti_tscadc.c

ADC4路普通ADC通道drivers/iio/adc/ti_am335x_adc.c

MMC/SDMMC/SD控制器驅(qū)動(dòng)drivers/mmc/host/omap_hsmmc.c

USBUSB控制器驅(qū)動(dòng)drivers/usb/musb/musb_am335x.c

Audio聲卡驅(qū)動(dòng)(支持錄/放音)sound/soc/codecs/sgtl5000.c

KeypadGPIO鍵盤驅(qū)動(dòng)drivers/input/keyboard/gpio_keys.c

LED用戶LED燈驅(qū)動(dòng)drivers/leds/leds-gpio.c

UVCCameraUSB攝像頭驅(qū)動(dòng)drivers/media/usb/uve

VGAVGA8000-A模塊驅(qū)動(dòng)drivers/video/of_display_timing.c

WIFIUSBWIFI模塊驅(qū)動(dòng)drivers/net/wireless/rt2x00

BluetoothUSB藍(lán)牙模塊驅(qū)動(dòng)drivers/bluetooth/btusb.c

2.7.2SD/MMC

圖2-6ModularstructureforSD/MMC

Linux下SD/MMC卡驅(qū)動(dòng)主要分為SD/MMCcore>mmc_block>mmc_queueSD/MMC

driver四大部分:

1)SD/MMCcore實(shí)現(xiàn)SD/MMC卡操作中與結(jié)構(gòu)無關(guān)的核心代碼。

2)mmc_block實(shí)現(xiàn)SD/MMC卡作為塊設(shè)備使用時(shí)的驅(qū)動(dòng)結(jié)構(gòu)。

3)mmc_queue實(shí)現(xiàn)請(qǐng)求隊(duì)列的管理。

4)SD/MMCdriver實(shí)現(xiàn)具體的控制器驅(qū)動(dòng)。

驅(qū)動(dòng)參考文件:

Iinux-am335x/drivers/mmc/

Iinux-am335x/drivers/mmc/host/omap_hsmmc.c

2.7.3LCDC

AM335x下的LCD控制器(LCDC)是OMAP-L138SoC中LCDC的更新版本,與

OMAP-L138比較具有如下特點(diǎn):

1)中斷配置和狀態(tài)寄存器是不同的

2)分辯率最高可支持2048*2048

3)每像素24位有源TFT光柵配置

因此LinuxLCD驅(qū)動(dòng)可用于LCD_VERSION2代碼下的改進(jìn)。通過讀PID寄存器可以

檢測(cè)到LCDC版本的更新。

驅(qū)動(dòng)參考文件:

Iinux-am335x/drivers/video/

Iinux-am335x/drivers/gpu/drm/tilcdc/tilcdcj)anel.c

Iinux-am335x/drivers/video/of_display_timing.c

2.7.4AudioIn/Out

圖2?7ModularstructureforAudio

ASoC嵌入式音頻系統(tǒng)基本分割以下三部分:

1)編解碼器驅(qū)動(dòng):編解碼器驅(qū)動(dòng)是一個(gè)平臺(tái)無關(guān),包括audiocontrols,audiointerface

capabilities,codecdapmdefinitionandcodecIOfunctions;

2)平臺(tái)驅(qū)動(dòng):平臺(tái)驅(qū)動(dòng)包括平臺(tái)相關(guān)的audiodmaengineandaudiointerfacedrivers

(e.g.I2S,AC97,PCM);

3)Machine驅(qū)動(dòng):Machine驅(qū)動(dòng)管理任何machine相關(guān)的controlsandaudioevents

i.e.turningonanampatstartofplayback;

驅(qū)動(dòng)參考文件:

Iinux-am335x/sound/soc/

Iinux-am335x/sound/soc/davinci/davinci-evm.c

Iinux-am335x/sound/soc/codecs/sgtl5000.c

2.8驅(qū)動(dòng)開發(fā)

2.8.1GPIO_keys驅(qū)動(dòng)

1)設(shè)備定義

Iinux-am335x/arch/arm/boot/dts/am335x-som860e.dts

配置gpio0.20為“menu”鍵,返回鍵值"KEY_F1",低電平觸發(fā);gpio2.1為“back”鍵,

返回鍵值"KEY_ESC”,低電平觸發(fā)。

gpio_keys{

compatible="gpio-keys";

pinctrl-names="default";

pinctrl-0=<&buttonjDins>;

key@0{

label="MENU”;

linux.code=<KEY_F1>;

gpios=<&gpioO20GPIO_ACTIVE_LOW>;

gpio-key,wakeup;

};

key@1{

label="BACK";

linux.code=<KEY_ESC>;

gpios=<&gpio21GPIO_ACTIVE_LOW>;

gpio-key,wakeup;

);

2)GPIOpinmux配置

在文件Iinux-am335x/arch/arm/boot/dts/am335x-som860e.dts

下配置GPIO0.20和GPIO2.1為MODE7(gpio模式)、AM33XX_PIN_INPUT(配置輸

入)

button_pins:pinmux_button_pins{

pinctrl-single.pins=<

0x1B4(PIN」NPUT_PULLUP|MUX_MODE7)/*xdma_eventjntr1.gpi

o0_207

0x08C(PIN」NPUT_PULLUP|MUX_MODE7)「gpmc_clk.gpio2_1*/

);

3)驅(qū)動(dòng)設(shè)計(jì)

Iinux-am335x/drivers/input/keyboard/gpio_keys.c

a)調(diào)用platform_driver_registergpio_keys馬區(qū)動(dòng)

staticstructplatform_drivergpio_keys_device_driver={

.probe=gpio_keys_probe,

.remove=gpio_keys_remove,

.driver={

.name="gpio-keys",

.pm=&gpio_keys_pm_ops,

.of_match_table=gpio_keys_of_match,

)

);

staticint_initgpio_keys_init(void)

(

returnplatform_driver_register(&gpio_keys_device_driver);

)

staticvoid_exitgpio_keys_exit(void)

(

platform_driver_unregister(&gpio_keys_device_driver);

)

latejnitcall(gpio_keys_init);

module_exit(gpio_keys_exit);

MODULE_LICENSE("GPL");

MODULE_AUTHOR("PhilBlundell<>");

MODULE_DESCRIPTION(',KeyboarddriverforGPIOsM);

MODULE_ALIAS("platform:gpio-keys");

b)調(diào)用input_register_device注冊(cè)input驅(qū)動(dòng)

staticint_devinitgpio_keys_probe(structplatform_device*pdev)

(

if(!pdata){

pdata=gpio_keys_get_devtree_pdata(dev);

if(IS_ERR(pdata))

returnPTR_ERR(pdata);

}

input=devm_input__allocate_device(dev);

for(i=0;i<pdata->nbuttons;i++){

conststructgpio_keys_button*button=&pdata->buttons[i];

structgpio_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論