91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2.59MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-09-20
  • 語言: 其他
  • 標簽: 嵌入式??

資源簡介

實現了bmp格式圖像的顯示。主要包括16bit 565圖像的解碼和顯示。前翻、后翻觸摸屏事件的實現。? 需求設計 (1) 在ARM9平臺上,實現液晶屏顯示16位(R5 G6 B5)BMP彩色圖像; (2) 實現觸摸屏的功能,利用觸摸屏可以實現BMP圖像“上一張”和“下一張”的輪換顯示; (3) BMP文件的解碼函數的實現; (4) 觸摸屏功能的實現; ? 詳細設計: ? BMP文件的構成 (1) BMP文件可以看成4大塊的內容: (2) 位圖文件頭(bitmap-file header); (3) 位圖信息頭(bitmapinformation-header); (4) 色彩表(color table); (5) 位圖的字節陣列(即位圖數據流); (6) 如圖1所示。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?

#include?“msg.h“
#include?“utils.h“
#include?“key.h“
#include?“keyboard.h“
#include?“touch.h“
#include?“seatimer.h“
#include?“utils.h“

#include?“graph.h“
#include?“mainwindow.h“
#include?“button.h“
#include?“editbox.h“

#include?“cvcfg.h“

#ifdef?USING_CAL_DEMO

//以下是關于計算器幾何形狀的宏定義
#define?NBTN 15 //按鈕個數
#define?H_TEXTBOX?40//30 //結果顯示框的高度
#define?W_TEXTBOX?200//148 //結果顯示框的寬度
#define?G_DIGIT_BUTTON 6//按鍵之間的空隙
#define?W_DIGIT_BUTTON?((W_TEXTBOX?-?2*G_DIGIT_BUTTON)/3)//按鍵的寬度
#define?H_DIGIT_BUTTON H_PUSHBUTTON //按鍵的高度
#define?DW_DIGIT_BUTTON?(?W_DIGIT_BUTTON?+?G_DIGIT_BUTTON?) //按鍵加空隙的總長度
#define?DH_DIGIT_BUTTON?(H_DIGIT_BUTTON?+?G_DIGIT_BUTTON) //按鍵加空隙的總高度

//以下是按鍵編號1~9為數字按鍵1~9
#define?ZERO 10 //0
#define?PLUS 11 //加號
#define?MINUS 12 //減號
#define?EQUAL 13 //等于號
#define?BACKSPACE?14 //退格鍵
#define?CLEAR 15 //清除鍵

//以下是兩個加數的區分號
#define?ADDEND1 0
#define?ADDEND2 1


//為了簡化計算器輸入、計算、結果處理等過程,OPSTATE枚舉了計算器當前所處的狀態
typedef?enum?_OPSTATE{
O_ADDEND1_BEGIN?=?0 //開始輸入第一個加數
O_ADDEND1_GETTING?=1 //正在接收第一個加數的其他位
O_ADDEND2_BEGIN?=?2 //開始輸入第二個加數
O_ADDEND2_GETTING?=?3??//正在接收第二個加數的其他位
O_CALCULATE=?4 //計算結果
}OPSTATE;//請大家想想每個狀態是如何轉換的?每個狀態下對輸入按鍵應如何響應?

//為了標記每個狀態下的特征,DATASTATE枚舉了可能的情況
enum?DATASTATE
{
D_DIGIT_ONLY=0 //只能接收數字,在輸入加數時先輸入了符號,則接下來只能接收數字
D_NOMORE_ZERO=1 //輸入的零無效,在開始輸入一個數字時對個0只能當作一個0,例如000就是0
D_NOMORE_BS?=?2 //退格刪除時所有位都被刪除了,則對再次輸入退格鍵就無響應
D_BACKSPACE?=?3 //接收到的是退格鍵
D_ALL //可以接收所有按鍵輸入
};//這些標記對于加數的值和輸入結果在顯示框中更新很有用。

//_CState描述了計算器的狀態數據,每個狀態轉換函數會對其數據進行修改
typedef?struct?_CState{
int?state; //OPSTATE
int?flag; //DATASTATE
int?val[2]; //兩個加數的值
int?res; //結果的數字
char?addend[2][12];//兩個加數的字符數組
int?index[2]; //加數的字符數組的索引
char?result[12];//結果的加數的字符數組
char?op[2]; //運算符
}CState;
//一下是函數原型聲明
HSlot?void?onGetInput(Payload?*pdint?num);//按鈕的槽響應函數,每個按鈕是HButton類型控件,它有clicked信號,在按下后被觸發。也就是說每個按鈕按下后會調用此函數。
HSlot?void?onShowResult(Payload?*pdint?num);//每個按鈕初始化后加入了updateResult(int?key)信號。這個信號會觸發onShowResult函數,執行狀態轉換
HSlot?void?onFile(Payload?*pdint?num); //文件菜單響應槽
//下面的三個函數處理每個狀態下具體的細節,主要是對每個輸入的按鍵后的響應。參數:state,狀態參數;input,輸入按鈕的編號;key,按鍵的字符值;o,加數選擇,指明操作第一個加數還是第二個。返回值:是否需要更新顯示框
bool?stateChangeStepOne(CState*?stateint?inputchar?keyint?o);
bool?stateChangeStepTwo(CState*?stateint?inputchar?keyint?o);
bool?stateChangeStepThree(CState*?sint?inputchar?keyint?o);

void?updateResult(HWidget?*txtbxCState?*s);//更新結果顯示框。
HLocal?void?getResult(CState?*s);? //根據狀態數據計算結果
HLocal?void?cleanState(CState?*s); //清除狀態數據
//下面是初始化計算器,在窗口mwnd的xy位置,結果顯示框為txtbx,按鍵為btns
bool?initCalculator(HMainWindow?*mwndHWidget*txtbxint?nHButton?btns[]int?xint?y);

HSlot?void?onGetInput(Payload?*pdint?num)
{
int?kval;
object?*key;
key?=?getObj(pd); //得到接收者對象指針,即connect函數中指定的接收者。例如,本程序中是連接到按鈕本身,即指向按鈕的指針
if(strcmp(key->name“+“)?==?0) //每個按鍵的名字作為區分按鍵的標志。得到按鈕編號。
kval?=?PLUS;
else?if(strc

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????2513012??2010-04-14?21:14??rtware_arm9\lib\sealib_arm9.a

?????文件??????14408??2009-04-24?20:49??rtware_arm9\lib\2410init.o

?????文件?????????64??2009-08-30?22:14??rtware_arm9\lib\vssver.scc

?????文件????????129??2009-04-02?16:43??rtware_arm9\docs\說明.txt

?????文件?????????48??2009-08-30?22:14??rtware_arm9\docs\vssver.scc

?????文件?????165888??2010-03-30?08:54??rtware_arm9\docs\JPEG解碼算法的詳細分析.doc

?????文件?????846848??2010-03-30?08:58??rtware_arm9\docs\HGUI的文本框設計.doc

?????文件?????419328??2010-03-30?08:51??rtware_arm9\docs\HGUI的對話框設計.doc

?????文件????????274??2009-04-02?14:50??rtware_arm9\build\scat.scf

?????文件????????931??2000-11-05?02:28??rtware_arm9\build\reset.ini

?????文件?????221993??2010-04-15?08:03??rtware_arm9\build\rtware_arm9.mcp

?????文件?????????96??2009-08-30?22:14??rtware_arm9\build\vssver.scc

?????文件???????3450??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\CWSettingsWindows.stg

?????文件?????????48??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\vssver.scc

?????文件??????69613??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\Debug\TargetDataWindows.tdt

?????文件?????????48??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\Debug\vssver.scc

?????文件??????68239??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\Release\TargetDataWindows.tdt

?????文件?????????48??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\Release\vssver.scc

?????文件?????139512??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\TargetDataWindows.tdt

?????文件?????785832??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\rtware_arm9.axf

?????文件?????????64??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\DebugRel\vssver.scc

?????文件?????????64??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\DebugRel\rtware_arm9.bin\vssver.scc

?????文件????????928??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\rtware_arm9.bin\ROM1

?????文件?????366356??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\rtware_arm9.bin\ER_RO

?????文件????????160??2009-08-30?22:14??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\vssver.scc

?????文件??????35732??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\touchdev.o

?????文件??????91552??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\calculator.o

?????文件?????114460??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\clock.o

?????文件??????30552??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\cvled.o

?????文件??????35736??2010-04-15?08:03??rtware_arm9\build\rtware_arm9_Data\DebugRel\objectCode\feature.o

............此處省略108個文件信息

評論

共有 條評論