原创 2.1.1.10自制USB攝像頭硬件的驅動編寫_修改myuvc

  目錄 1.1 修改全局變量 1.2修改函數 1.2.1 1.2.2 1.3 修改數據處理函數 1.3.1 myuvc_video_complete

原创 4.[RK3288][Android6.0] Camera HAL流程小結

  Platform: RK3288 OS: Android 6.0 Kernel: 3.10.92   雖然是Android6.0, 但是rockchip用的是Camera HAL 1.0的架構,沒有更新到3.x. 開機:(MediaS

原创 7.1.1顯示系統框架_framebuffer原理及改進

      在該章之後的幾個小節會講解解android顯示系統的框架,主要爲以下3點: a.顯示驅動framebuffer的原理及改進 b.多任務系統的顯示:必定有一個顯示管理者 c.android顯示系統框架初探 首先我們先來看看顯示驅

原创 Camera模組介紹&電路介紹

目錄 1、攝像頭瞭解 1.1、模組結構 1.2、成像原理 1.3、攝像頭的分類

原创 3399 Camera HAL

  [RK3399][Android7.1] Camera HAL初始化流程 Platform: rk3399 OS: Android 7.1 Kernel: v4.4.83 rk3399對HAL的處理基本上和rk3288一樣沒什麼變化,

原创 2.[RK3288][Android6.0] USB UVC Camera是否支持的查詢方法

  Platform: ROCKCHIP OS: Android 6.0 Kernel: 3.10.92 有看到其他文章判斷是否支持UVC Camera是通過lsusb -t以及lsusb -d命令實現, 但Android的lsusb命令

原创 1.[RK3288][Android6.0] USB UVC 協議簡結

  Platform: ROCKCHIP OS: Android 6.0 Kernel: 3.10.92 UVC協議官方文檔:http://www.usb.org/developers/docs/devclass_docs/ USB_Vi

原创 7.1.2顯示系統框架_初步分析

    該小節我們初步的瞭解一下android系統的框架,看看其有那些構成部分。我們知道一個應用程序要去操作LCD,需要把數據寫入到framebuffer,如果有多個應用程序對一個framebuffer同時進行操作,那麼最終屏幕的顯示肯定

原创 OV13850 Camera移植

      [RK3399][Android7.1] 移植筆記 OV13850 Camera 平臺 內核版本 安卓版本 RK3399 Linux4.4 Android7.1 開發板: 參考: 1、基本配置與編譯 1.1、DTS 配置 打

原创 surfaceflinger原理講解

  概念 SurfaceFlinger是一個系統服務,如:audioflinger,audiopolicyservice等等,系統的主要服務通過這個文章進行了解,Android的系統服務一覽。這個系統服務主要實現了Surface的建立、控

原创 7.2修改源碼禁用hwc和GPU

    爲什麼禁用,因爲廠家不提供源碼,這樣就無法分析 回顧分析 參考:修改tiny4412_android源碼禁用hwc和GPU_去除廠家gralloc_hwc模塊_P 首先要去掉廠家提供的gralloc,hwcopser HAL模塊,

原创 調換dsi和dsi1兩路通道數據

    Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 背景: 此問題是網友Brian遇到的,需求如下: 點一個2560*1600的mipi屏,用的dsi和dsi1,這個屏有8 lane,

原创 2.1.1.16 3G上網卡1_工具及使用

    使用3G上網卡(或稱爲3G modem) 1.選型: 選擇linux上支持的3G上網卡 更多型號可參考: usb_modeswitch的device_reference.txt 2 使用步驟(以windows爲例) a. 接上

原创 2.1.1.6 節_從零寫 USB 攝像頭驅動之分析描述符

  1: USB 標準描述符和 USB video 設備描述符 1.一般的 USB 設備有設備描述符、配置描述符、接口描述符、端點描述符四種描述符。特定的 USB 設備還有它自己獨特的描 述符。 上圖中就是我們的標準描述符,也就是所有的

原创 2.1.1.11在LCD上顯示攝像頭圖像3_實現視頻轉換模塊

  目錄 分析 (1)convert_manege.h和convert_manege.c ① convert_manege.h ② convert_manege.c (2)Yuv2RGB.c :實現Y