原创 JZ2440開發板移植Qtopia2.2.0

參考文獻:        《嵌入式Linux應用開發》韋東山編著          http://emb.hqyj.com/column/column97.htm (1)移植環境:          環境:ubuntu9.10      

原创 Input子系統詳解-基於Linux2.6.22內核

(1)輸入子系統框架  Input子系統框架 app: open() read()  write()    --------------------------------------------- 內核: xxx_drv的 fos 結

原创 spi總線設備驅動模型詳解(Linux3.4)

(一)spi總線設備驅動框架:     app:                  open() read() write()     ---------------------------------------------------

原创 VS環境下動態庫和靜態庫的建立和使用

1 動態庫和靜態庫的定義 1.1 庫的定義 庫是寫好的現有的,成熟的,可以複用的代碼。所謂靜態、動態是指鏈接。        靜態庫在鏈接階段,會將彙編生成的目標文件.o與引用到的庫一起鏈接打包到可執行文件中。因此對應的鏈接方式稱爲靜態鏈

原创 Cortex-M3內核之位帶操作

       位帶操作(Bit-Band Operations ),顧名思義,就是開發人員可以單獨對CPU寄存器的某一位進行讀寫操作,這無疑將會簡化我們開發代碼的難度。我們也許已經在8051單片機中體會到了這種位帶操作帶來的好處,比喻說我

原创 sysfs和proc文件系統解析

(1)sysfs        1.1) Linux設備驅動模型中的總線、驅動和設備都可以在sysfs文件系統中找到對應的節點。當內核檢測到在系統中出現了新設備後,內核會在sysfs文件系統中生成一項新的記錄它會產生一個包括所有系統硬件的

原创 Nand Flash驅動程序編寫(linux 3.4.2內核)

參考文件  drivers\mtd\nand\s3c2410.c(當內核啓動時,會打印相關nand的信息,搜索相關打印信息,找到這個文件)          內核提供的nand flash 驅動例子,從這個例子中我們可以總結出nand f

原创 (1)電源管理-S3C2440芯片電源管理模塊解析

(1)電源模塊解析         電源管理塊通過軟件控制系統時鐘,以降低S3C2440的功耗。這些方案涉及鎖相環、時鐘控制邏輯(FCLK、HCLK和PCLK)和喚醒信號。圖1顯示了S3C2440A的時鐘分佈。              

原创 Ubuntu16.04安裝gcc-3.4

第一步:下載所需gcc安裝包(.deb格式)      手動:老版本gcc下載地址:http://old-releases.ubuntu.com/ubuntu/pool/universe/g/ ; http://archive.ubunt

原创 spi總線設備驅動模型詳解(Linux2.6.22)

(一)spi總線設備驅動框架:     app:                  open() read() write()     ---------------------------------------------------

原创 I2C總線設備驅動框架

編寫I2C驅動程序,我們可以參考 \linux-3.4.2\Documentation\i2c 中的一些文檔 (1)大致框架 app:   open  read write --------------------------------

原创 攝像頭驅動框架(v4l2)詳細分析

          在分析v4l2(video for linux 2.0)框架之前,我們需先了解驅動程序分層的概念。           所謂分層,其實是利用了面向對象的思想---繼承,我們知道,子類繼承父類,並且對於父類提供的資源,合

原创 不帶緩存I/O和標準I/O(帶緩存)之間的區別

先來看看不帶緩存的I/O和標準(帶緩存的)I/O都有那些 不帶緩存的I/O:       read,write,open...... 標準(帶緩存的)I/O: fgets,fread,fwrite..... 這裏使用兩個對應的函數進行比較

原创 虛擬機下Ubuntu16.04橋接模式不能上網問題解決

橋接模式老是無法上網,查看本機IP發現被分配了一個私網地址,猜測應該是虛擬DHCP服務器沒有打開,於是查看Ubuntu的網絡配置:  /etc/network/interfaces 發現沒有dhcp配置的信息,只有loopback: 手動

原创 輸入子系統框架詳解

輸入子系統框架詳解 (1)爲什麼要使用輸入子系統框架        我們在剛開始學習字符設備驅動程序的編寫時,都會用到這樣一個框架:       首先分配一個主設備號( alloc_chrdev_region(),推薦用這個函數 ),接着