




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、,字符與塊設(shè)備驅(qū)動程序,字符設(shè)備驅(qū)動程序要解決的主要問題,輸入: 按鍵驅(qū)動程序設(shè)計 觸摸屏接口設(shè)計與Linux 驅(qū)動程序,按鍵的原理圖,按鍵的抖動,硬件去抖動 軟件去抖動,軟件去抖的流程,按鍵驅(qū)動程序的實現(xiàn)s3c2410_kbd_init(初始化),利用set_external_irq函數(shù),把3個連接輕觸開關(guān)的IO初始化成電平觸發(fā)中斷模式,并開啟S3C2410的內(nèi)部上拉電阻。 注冊一個字符設(shè)備,創(chuàng)建設(shè)備文件節(jié)點 注冊中斷處理函數(shù),使用同一個中斷處理函數(shù)s3c2410_isr_kbd 結(jié)構(gòu)體kbddev的初始化和定義,按鍵驅(qū)動程序的測試,命令測試: cat /dev/keyboard/0raw
2、hexdump /dev/keyboard/0raw 自己編寫代碼:,#include #include #include #include #include #defineKBD_DEV/dev/keyboard/0raw static int kbd_fd = -1; static int init_device(void) if(kbd_fd=open(KBD_DEV, O_RDONLY)0)printf(Error opening %s devicen,KBD_DEV); return -1; return 0; int main(void) int i;char data; if(i
3、nit_device()0)return -1; for(;) read(kbd_fd, ,異步串口與Linux驅(qū)動程序,串口概述,常見的數(shù)據(jù)通信的基本方式有兩種: 并行通信: 串行通信: 串行通信是計算機常用的接口,如:RS-232-C接口。該標(biāo)準(zhǔn)規(guī)定采用一個DB25芯引腳連接器或DB9芯引腳連接器。 芯片內(nèi)部常具有UART(通用異步串行接口)控制器,其可工作于Interrupt(中斷模式)或DMA(直接內(nèi)存訪問模式),計算機通信是將計算機技術(shù)和通信技術(shù)的相結(jié)合,完成計算機與外部設(shè)備或計算機與計算機之間的信息交換 。 并行通信通常是將數(shù)據(jù)字節(jié)的各位用多條數(shù)據(jù)線同時進行傳送 。,并行通信控制簡
4、單、傳輸速度快;由于傳輸線較多,長距離傳送時成本高且接收方的各位同時接收存在困難。,串行通信是將數(shù)據(jù)字節(jié)分成一位一位的形式在一條傳輸線上逐個地傳送。,串行通信的特點:傳輸線少,長距離傳送時成本低,且可以利用電話網(wǎng)等現(xiàn)成的設(shè)備,但數(shù)據(jù)的傳送控制比并行通信復(fù)雜。,一、異步通信與同步通信 1、異步通信 異步通信是指通信的發(fā)送與接收設(shè)備使用各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。為使雙方的收發(fā)協(xié)調(diào),要求發(fā)送和接收設(shè)備的時鐘盡可能一致。,異步通信是以字符(構(gòu)成的幀)為單位進行傳輸,字符與字符之間的間隙(時間間隔)是任意的,但每個字符中的各位是以固定的時間傳送的,即字符之間不一定有“位間隔”的整數(shù)倍的關(guān)系,但
5、同一字符內(nèi)的各位之間的距離均為“位間隔”的整數(shù)倍。,異步通信的數(shù)據(jù)格式 :,異步通信的特點:不要求收發(fā)雙方時鐘的嚴(yán)格一致,實現(xiàn)容易,設(shè)備開銷較小,但每個字符要附加23位用于起止位,各幀之間還有間隔,因此傳輸效率不高。,異步 VS 同步,和同步傳輸相比: 異步通信系統(tǒng)的數(shù)據(jù)傳輸過程中,接收器時鐘與發(fā)射時鐘是不同步的 異步串口信號連接簡單 接收端需要事先知道發(fā)送端的波特率 異步串口速度不如同步,五、傳輸速率與傳輸距離 1、傳輸速率 比特率是每秒鐘傳輸二進制代碼的位數(shù),單位是:位秒(bps)。如每秒鐘傳送240個字符,而每個字符格式包含10位(1個起始位、1個停止位、8個數(shù)據(jù)位),這時的比特率為:
6、10位240個/秒 = 2400 bps,2、傳輸距離與傳輸速率的關(guān)系 串行接口或終端直接傳送串行信息位流的最大距離與傳輸速率及傳輸線的電氣特性有關(guān)。當(dāng)傳輸線使用每0.3m(約1英尺)有50PF電容的非平衡屏蔽雙絞線時,傳輸距離隨傳輸速率的增加而減小。當(dāng)比特率超過1000 bps 時,最大傳輸距離迅速下降,如9600 bps 時最大距離下降到只有76m(約250英尺)。,RS-232C標(biāo)準(zhǔn),1969年產(chǎn)生的RS-232C標(biāo)準(zhǔn)也許是世界上應(yīng)用最為普及的通信接口 RS-232C接口定義:,交叉電纜連接標(biāo)準(zhǔn),采用RS-232-C接口存在的問題 1、傳輸距離短,傳輸速率低 RS-232C總線標(biāo)準(zhǔn)受電容
7、允許值的約束,使用時傳輸距離一般不要超過15米(線路條件好時也不超過幾十米)。最高傳送速率為20Kbps。,2、有電平偏移 RS-232C總線標(biāo)準(zhǔn)要求收發(fā)雙方共地。通信距離較大時,收發(fā)雙方的地電位差別較大,在信號地上將有比較大的地電流并產(chǎn)生壓降。,3、抗干擾能力差 RS-232C在電平轉(zhuǎn)換時采用單端輸入輸出,在傳輸過程中當(dāng)干擾和噪聲混在正常的信號中。為了提高信噪比,RS-232C總線標(biāo)準(zhǔn)不得不采用比較大的電壓擺幅。,RS-422和RS-485標(biāo)準(zhǔn),RS-422、 RS-485時序和RS-232完全相同 通過差分信號改進RS-232的通信距離短、速率低的缺點 RS-422速率可達(dá)10Mbps,傳
8、輸距離延長到4000英尺(低于100kbps時) RS-422和RS-485標(biāo)準(zhǔn)只有電氣特性的規(guī)定,而不涉及接插件、電纜和上層協(xié)議標(biāo)準(zhǔn),在此基礎(chǔ)上用戶可以建立自己的高層通信協(xié)議 很多業(yè)界的異步串行總線都是以此為基礎(chǔ)建立的,三、RS-485接口,RS-485是RS-422A的變型:RS-422A用于全雙工,而RS-485則用于半雙工。RS-485是一種多發(fā)送器標(biāo)準(zhǔn),在通信線路上最多可以使用32 對差分驅(qū)動器/接收器。如果在一個網(wǎng)絡(luò)中連接的設(shè)備超過32個,還可以使用中繼器。 RS-485的信號傳輸采用兩線間的電壓來表示邏輯1和邏輯0。由于發(fā)送方需要兩根傳輸線,接收方也需要兩根傳輸線。傳輸線采用差動
9、信道,所以它的干擾抑制性極好,又因為它的阻抗低,無接地問題,所以傳輸距離可達(dá)1200米,傳輸速率可達(dá)1Mbps。,異步串口的硬件設(shè)計,從UART發(fā)出的異步串口時序的邏輯電平都是處理器IO電壓標(biāo)準(zhǔn) 要想符合RS-232、RS-422或者RS-485的電氣特性要有接口電路做轉(zhuǎn)換 RS-232的電氣特性: +5+15V(邏輯0) -5-15V(邏輯1) 從3.3V或者5V邏輯轉(zhuǎn)換到RS-232邏輯,需要有DC-DC轉(zhuǎn)換 常用芯片:MAX3232其特點: 可以提供兩路輸入、兩路輸出的電平轉(zhuǎn)換 最高可以滿足250kbps的速度(也有1Mbps或者更快的版本) 外接電路簡單,只需外接4個0.1uF的電容給
10、電荷泵使用 帶有ESD靜電保護 2.7V5V寬電壓供電,UART的操作主要包括以下幾個部分,數(shù)據(jù)發(fā)送 數(shù)據(jù)接收 產(chǎn)生中斷 產(chǎn)生波特率 Loopback模式 紅外模式 自動流控模式 串口參數(shù)的配置主要包括:波特率、數(shù)據(jù)位、停止位、流控協(xié)議,Linux中的串口文件存放于/dev目錄下,其中串口一,串口二對應(yīng)設(shè)備名為“/dev/ttyS0”、 “/dev/ttyS1” 在linux下操作串口與操作文件相同,串口詳細(xì)配置,在使用串口前必須設(shè)置相關(guān)配置,包括:波特率、數(shù)據(jù)位、校驗位、停止位等,串口設(shè)置實現(xiàn)。 打開串口:fd=open(“/dev/ttyS0”,O_RDWR|O_NOCTTY|O_NDEL
11、AY),讀寫串口,串口的讀寫與普通文件一樣,使用read、write函數(shù)。 Read(fd,buf,8); write(fd,buf,8);,Linux存儲器接口軟硬件設(shè)計,嵌入式系統(tǒng)上常用的存儲媒體,Flash芯片 Flash媒質(zhì)存儲器: SD/MMC卡、CF卡、 SM卡、U盤 IC卡、SIM卡 硬盤:CF接口、IDE接口,Linux對存儲設(shè)備的管理,塊設(shè)備 -文件系統(tǒng) 字符設(shè)備也可以完成簡單的存儲工作 嵌入式Linux的存儲通常通過MTD設(shè)備,MTD設(shè)備驅(qū)動,MTD(memory technology device)是用于訪問memory設(shè)備(ROM、flash)的Linux子系統(tǒng) 在硬件
12、和上層之間提供了一個抽象的接口 ,MTD把文件系統(tǒng)和Flash設(shè)備相隔離,MTD與文件系統(tǒng),MTD原始設(shè)備有兩部分組成 MTD原始設(shè)備的通用代碼, 各個特定的Flash的數(shù)據(jù),例如分區(qū)。 mtd_info、mtd_table(mtdcore.c)、mtd_part(mtd_part.c) MTD設(shè)備層 linux系統(tǒng)定義出MTD的塊設(shè)備(主設(shè)備號31)和字符設(shè)備(設(shè)備號90)。設(shè)備節(jié)點:通過mknod在/dev子目錄下建立MTD字符設(shè)備節(jié)點(主設(shè)備號為90)和MTD塊設(shè)備節(jié)點(主設(shè)備號為31),通過訪問此設(shè)備節(jié)點即可訪問MTD字符設(shè)備和塊設(shè)備。 根文件系統(tǒng) 在Bootloader中將文件系統(tǒng)映
13、像燒錄到flash的某一個分區(qū)中,在啟動的時候,將該分區(qū)作為根文件系統(tǒng)掛載。 文件系統(tǒng): 內(nèi)核啟動后,mount,NAND和NOR性能比較,NOR和NAND是現(xiàn)在市場上兩種主要的非易失閃存技術(shù) NOR的讀速度比NAND稍快一些 NAND的寫入速度比NOR快很多 NAND的擦除速度遠(yuǎn)比NOR的快 大多數(shù)寫入操作需要先進行擦除操作 NAND的擦除單元更小,相應(yīng)的擦除電路更少,接口差別,NOR flash帶有SRAM接口,線性尋址,可以很容易地存取其內(nèi)部的每一個字節(jié) NAND flash使用復(fù)用接口和控制IO多次尋址存取數(shù)據(jù) NAND讀和寫操作采用512字節(jié)的塊,這一點有點像硬盤管理此類操作易于取代
14、硬盤等類似的塊設(shè)備,從NAND Flash啟動,經(jīng)典2410試驗箱不帶NOR Flash,只能從NAND Flash啟動。由硬件實現(xiàn)選擇從NAND啟動。 系統(tǒng)上電或者復(fù)位時NAND Flash控制器自動將NAND Flash的前4KB拷貝到一段內(nèi)置RAM中,并將這段RAM映射到0 x00000000地址處。,Nand Flash連接原理,Nand上yaffs文件系統(tǒng)的優(yōu)勢,專門為Nand flash設(shè)計的日志文件系統(tǒng) jffsjffs2不適合大容量的Nand flash jffs的日志通過jffs_node建立在RAM中,占用RAM空間:對于128MB的Nand大概需要4MB的空間來維護節(jié)點
15、啟動的時候需要掃描日志節(jié)點,不適合大容量的Nand flash,使用yaffs文件系統(tǒng),通過cat /proc/yaffs命令可以看到y(tǒng)affs系統(tǒng)的相關(guān)信息 mount -t yaffs /dev/mtdblock/0 /mnt/yaffs,IDE接口軟硬件設(shè)計,IDE接口簡介,Integrated Drive Electronics(IDE)本意是指把控制器與盤體集成在一起的硬盤驅(qū)動器。 通常說的IDE接口,稱之為ATA(Advanced Technology Attachment)接口 控制器是載有芯片的小型電路板,這些芯片對硬盤驅(qū)動器如何正確存儲和訪問數(shù)據(jù)進行控制。大多數(shù)控制器還帶有一
16、些內(nèi)存,它充當(dāng)緩沖器以增強硬盤驅(qū)動器性能。也就是說它提供了將完整設(shè)備與計算機(主機)連接的方法。,UP-2410CL上IDE接口邏輯原理圖,IDE接口標(biāo)準(zhǔn),低電平有效,IDE設(shè)備寄存器,IDE接口的驅(qū)動程序,在include/asm-arm/arch-s3c2410/ide.h中實現(xiàn): IO空間分配 入口在ide_init_default_hwifs ide_register_hw注冊驅(qū)動器 IDE設(shè)備工作在PIO模式下 Linux 2.6的結(jié)構(gòu)有所調(diào)整,比如:drivers/ide/arm/pxa-ide.c,A/D,型電阻網(wǎng)絡(luò)D/A轉(zhuǎn)換器 :,轉(zhuǎn)換器的原理及主要技術(shù)指標(biāo),一、逐次逼近式ADC的轉(zhuǎn)換原理,二、雙積分式ADC的轉(zhuǎn)換原理,A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo),1、分辨率 ADC的分辨率是指使輸出數(shù)字量變化一個相鄰數(shù)碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 跨境電商與本地市場的融合策略-洞察闡釋
- 適應(yīng)障礙網(wǎng)絡(luò)成癮的干預(yù)模式比較研究-洞察闡釋
- 網(wǎng)拍產(chǎn)業(yè)鏈上下游研究-洞察闡釋
- 從市場需求角度探討農(nóng)產(chǎn)品區(qū)塊鏈溯源行業(yè)的發(fā)展策略
- 漢馬科技財務(wù)風(fēng)險評價與控制研究
- 出租店鋪合同協(xié)議書
- 城市房屋買賣合同(15篇)
- 合作代理協(xié)議書
- 分包協(xié)議書(集合15篇)
- 智能化社區(qū)供暖設(shè)施安裝與運營管理合同
- 專題 完形填空 七年級英語下冊期末復(fù)習(xí)考點培優(yōu)專項北師大版(2024版)(含答案解析)
- 余料使用管理制度
- 2025至2030年中國彩涂鋁材行業(yè)市場動態(tài)分析及發(fā)展趨向研判報告
- 農(nóng)業(yè)面源防治課件
- 2025至2030中國氨基吡啶行業(yè)項目調(diào)研及市場前景預(yù)測評估報告
- 2025-2030中國商業(yè)展示道具市場應(yīng)用前景及投資價值評估報告
- 拉薩市墨竹工卡縣思金拉措小學(xué)-2025年春季英語教研組工作總結(jié)-一路求索不停歇【課件】
- 山東省菏澤市2023?2024學(xué)年高一下學(xué)期7月期末考試 數(shù)學(xué)試題(含解析)
- (三級)人工智能訓(xùn)練師職業(yè)技能鑒定理論考試題(附答案)
- 2025杭州市臨安區(qū)事業(yè)單位招聘80人考前自測高頻考點模擬試題附答案詳解(鞏固)
- 2025年北京二十中中考英語零模試卷
評論
0/150
提交評論