freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式課程-第8講(嵌入式linux設(shè)備驅(qū)動程序)(編輯修改稿)

2025-03-11 08:08 本頁面
 

【文章內(nèi)容簡介】 設(shè)備的輪詢和中斷處理設(shè)備的輪詢和中斷處理167。 輪詢方式輪詢方式216。 對于不支持中斷的硬件設(shè)備,讀寫時(shí)需要對于不支持中斷的硬件設(shè)備,讀寫時(shí)需要輪流查詢設(shè)備的狀態(tài),以便決定隨后的數(shù)輪流查詢設(shè)備的狀態(tài),以便決定隨后的數(shù)據(jù)操作。據(jù)操作。216。 如果輪詢處理方式的驅(qū)動程序被鏈接到內(nèi)如果輪詢處理方式的驅(qū)動程序被鏈接到內(nèi)核,則意味著查詢過程中,內(nèi)核一直處于核,則意味著查詢過程中,內(nèi)核一直處于閑置狀態(tài)。閑置狀態(tài)。216。 解決辦法是使用內(nèi)核定時(shí)器,進(jìn)行定期查解決辦法是使用內(nèi)核定時(shí)器,進(jìn)行定期查詢。詢。 設(shè)備的輪詢和中斷處理設(shè)備的輪詢和中斷處理167。 中斷處理方式216。 硬件在需要的時(shí)候,向內(nèi)核發(fā)出中斷請求信號,而內(nèi)核則負(fù)責(zé)把中斷信號傳遞給相應(yīng)的設(shè)備驅(qū)動。216。 驅(qū)動程序必須在設(shè)備驅(qū)動的初始化時(shí)申請中斷資源,并注冊中斷處理函數(shù):– 申請: request_irq(irq , irq_handler, flag, dev_name, dev_id)。– 釋放: free_irq(irq, dev_id)。216。 其中 irq為申請的中斷線號, irq_handler為注冊的中斷處理函數(shù), dev_id 用于共享中斷信號線。典型字符驅(qū)動程序框架典型字符驅(qū)動程序框架staticstructfile_operationsdemo_fops={read: demo_readwrite: demo_writeopen: demo_open……}。intinit_module(void){ returndemo_init()。}用于用于注冊設(shè)備驅(qū)動、申請中斷線,初始化等注冊設(shè)備驅(qū)動、申請中斷線,初始化等voidcleanup_module(void){ demo_cleanup()。}用于注銷設(shè)備驅(qū)動、釋放中斷線等用于注銷設(shè)備驅(qū)動、釋放中斷線等接口函數(shù)的實(shí)現(xiàn)接口函數(shù)的實(shí)現(xiàn)………… Example1PXA270開發(fā)系統(tǒng)的按鍵驅(qū)動程開發(fā)系統(tǒng)的按鍵驅(qū)動程序與數(shù)碼顯示驅(qū)動序與數(shù)碼顯示驅(qū)動數(shù)碼顯示源代碼數(shù)碼顯示源代碼按鍵驅(qū)動源代碼按鍵驅(qū)動源代碼調(diào)試驅(qū)動程序,使用調(diào)試驅(qū)動程序,使用 printk輸出信息,信息的優(yōu)先級依輸出信息,信息的優(yōu)先級依次為:次為:1. KERN_EMERG2. KERN_ALERT3. KERN_CRIT4. KERN_ERR5. KERN_WARNING6. KERN_NOTICE7. KERN_INFO8. KERN_DEBUGn 如果要在終端輸出信息,編譯選項(xiàng):如果要在終端輸出信息,編譯選項(xiàng): Wall –O2n 根據(jù)根據(jù) /kernel/,不顯示的信息會的不同設(shè)置,不顯示的信息會出現(xiàn)在出現(xiàn)在 /var/log/messages中中n 驅(qū)動調(diào)試方法參見驅(qū)動調(diào)試方法參見 Linux Device Drivers chapter 3幀緩沖設(shè)備驅(qū)動程序幀緩沖設(shè)備驅(qū)動程序LCD分類分類n LCD可由為液晶照明的方式有兩種:傳送式和反射式n 傳送式屏幕要使用外加光源照明,稱為背光(backlight),照明光源要安裝在 LCD的背后。傳送式 LCD在正常光線及暗光線下,顯示效果都很好,但在戶外,尤其在日光下,很難辯清顯示內(nèi)容。 n 反射式屏幕,則不需要外加照明電源,使用周圍環(huán)境的光線(或在某些筆記本中,使用前部照明系統(tǒng)的光線)。這樣,反射式屏幕就沒有背光,所以,此種屏幕在戶外或光線充足的室內(nèi),才會有出色的顯示效果,但在一般室內(nèi)光線下,這種顯示屏的顯示效果就不及背光傳送式的。 幀緩沖幀緩沖 (Framebuffer)n 幀緩沖 (framebuffer)-顯示緩沖區(qū)n 是 Linux為顯示設(shè)備提供的一個接口,是把顯存抽象后的一種設(shè)備,他允許上層應(yīng)用程序在圖形模式下直接對顯示緩沖區(qū)進(jìn)行讀寫操作。 n Xwindow繪制窗口,顯示漢字都是通過fb幀緩沖設(shè)備幀緩沖設(shè)備n Linux可支持最多 32個 /dev/fb0~/dev/fb31缺省是 /dev/fb0n 可以直接拷貝位圖到 fb來顯示到屏幕n cp /bitmap/ /dev/fb0幀緩沖設(shè)備驅(qū)動原理幀緩沖設(shè)備驅(qū)動原理n 幀緩沖設(shè)備屬于字符設(shè)備, 其目的就是通過配置 PXA270的寄存器,在一段指定的內(nèi)存與LCD之間建立一個自動傳輸?shù)耐ǖ?。這樣,任何程序只要修改這段內(nèi)存中的數(shù)據(jù),就可以改變 LCD上的顯示內(nèi)容。 幀緩沖設(shè)備的文件操作層接口幀緩沖設(shè)備的文件操作層接口n staticstructfile_operationsfb_fops={owner:THIS_MODULE,read:fb_read,/*讀操作 */write:fb_write,/*寫操作 */ioctl:fb_ioctl,/*控制操作 */mmap:fb_mmap,/*映射操作 */open:fb_open,/*打開操作 */release:fb_release,/*關(guān)閉操作 */}。其中的成員函數(shù)都在文件linux/driver/video/ 幀緩沖設(shè)備的文件操作層接口幀緩沖設(shè)備的文件操作層接口n 控制操作函數(shù) fb_ioctl通過以下參數(shù)來傳遞控制命令n FBIOGET_VSCREENINFOn FBIOPUT_VSCREENINFOn FBIOGE
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1