久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: linux+ARM6818開發板電子相冊源程序 [打印本頁]

作者: 烏蘇    時間: 2019-12-19 20:21
標題: linux+ARM6818開發板電子相冊源程序
可以簡單的實現電子相冊的瀏覽圖片的功能,同時也可以通過往目標文件夾中添加圖片文件來瀏覽

1、linux下 一切皆是文件
    那么對于屏幕的操作也是文件操作 只不過這個文件是一個設備
   
    所以屏幕操作分為以下幾步:
    //第一步:打開
    //第二步:寫數據
    //第三步:關閉文件
2、屏幕介紹:
    800*480 32位真彩色
    800*480 表示片屏幕大小 單位是像素 480行 每一行 800個像素點
    32位真彩色 每一個像素點是由32位數據表示的
        對應4字節 分別為 a透明度 r red g green b blue
3、屏幕文件所在路徑
    /dev/fb0  
4、顏色對照表 是24位的沒有透明度
    顯示時將透明度補充為00 即可
   
5、bmp圖片簡介
    bmp圖片是windows下標準的位圖格式
    位圖就是顯示在屏幕像素上的點一位位數據表示出來 不經過任何壓縮算法 所以
    bmp圖片一般比較大
    800*480 32位圖 的大小為 800*480*4+54 個字節
   
    每一張bmp圖片都有54字節的文件頭 其決定文件的類型 大小 色深等信息  
    接下來我們看以下具體的內容:
        見圖片
   
        
作業:將項目中讀取文件列表 與今日內容整合  實現 自動循環播放 24位bmp圖
    請實現32位的bmp圖
6、通過觸摸屏切換顯示
    linux輸入子系統:
        linux下的輸入設備主要有: 鍵盤 鼠標 麥、寫字板、觸摸屏等等
        
        linux將所有的輸入設備歸于一個驅動設備文件管理 該設備被稱之為 事件文件  位于
            GEC210 位于 /dev/event0
            GEC6818 位于 /dev/input/event0
            
        在linux下獲取輸入事件其本質就是在輸入設備文件中讀取數據 而這個數據的格式由輸入子系統決定 本質就是一個結構體
            即struct input_event
            該結構體位于 linux/input.h頭文件下!
        結構體解析:
            struct input_event{
                struct timeval time; //事件觸發的時間
                _u16 type;
                    表示輸入事件的類型
                _u16 code;
                    表示輸入事件的數據即輸入事件類型的子集
                _s32 value; //值 子集對應的鍵值
            }
            
            type: 取值有以下幾個:
                #define EV_SYN  0x00 表示同步事件
                #define EV_KEY    0x01 表示按鍵事件  //鍵盤
                #define EV_REL    0x02 表示相對事件  //鼠標
                #define EV_ABS    0x03 表示絕對事件  //觸摸屏
               
            根據type的取值不同 code取值也不同
                如果type == EV_KEY
                    code 取值如下
                        KEY_A         按鍵A
                        KEY_B        按鍵B
                        ......
                如果type == EV_ABS
                    code取值如下:
                        #define ABS_X    0x00 表示觸摸屏x軸坐標
                        #define ABS_Y     0x01 表示觸摸屏y軸坐標
                        #define ABS_PRESSURE 0x18 表示觸摸點的壓力 用來判斷是按下還是離開
                                壓力值是一個量化值:
            對于value而言 type和code的值共同決定其值的含義:
                如果type == EV_ABS && code == ABS_x 則 value就是x軸的坐標
                如果type == EV_ABS && code == ABS_Y 則 value就是Y軸的坐標
                如果type == EV_ABS && code == ABS_PRESSURE 則 value就是壓力值的大小 value == 0 表示離開 value > 0表示按下
                如果type == EV_KEY && code == KEY_A 則value對應 按鍵鍵值 1 表示按下 0表示松開
            
            注意: 6818開發板將 壓力值歸為EV_KEY中    即0x01 中 壓力值的宏為 0x14a
               
        //第一步:打開觸摸屏
        //第二步:讀取數據
        //第三步:解析
        //第四步從第二步開始循環
                直到一次操作完位置
               
        思考: 怎么判斷一次操作的開始 當第一次value>0 就按下
                                結束 當第一次value == 0就是離開
                                
全部資料51hei下載地址:
項目電子相冊.zip (1.13 MB, 下載次數: 120)






歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 色爱区综合 | 亚洲视频中文字幕 | 成人a视频在线观看 | 在线播放日韩 | 成人免费在线视频 | 日韩视频一区二区在线 | 亚洲国产一区二区三区 | a级毛片基地 | 久久久精品一区 | 亚洲欧美视频 | 日本aⅴ中文字幕 | 夜夜草| 久久久免费观看视频 | 久久成人激情 | 狠狠操狠狠色 | 精品综合久久久 | 一区二区高清 | 在线观看第一页 | 亚洲毛片网站 | 中文字幕亚洲精品在线观看 | 日本三级电影免费观看 | 国产精品色婷婷久久58 | 99久久精品免费看国产四区 | 免费精品一区 | 精品乱人伦一区二区三区 | 欧美中文字幕在线观看 | 91偷拍精品一区二区三区 | 99成人精品 | 成人国产精品一级毛片视频毛片 | 亚洲一区二区三区在线播放 | 久久这里只有精品首页 | 中文字幕精品一区二区三区精品 | 国产情品 | 久久久久久久一区 | 一级a爱片久久毛片 | 91久久网站 | 夜夜骚视频 | 日韩爱爱网 | 99国产在线 | 日本在线观看视频 | 日韩av一区二区在线观看 |