版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、物理與電子工程學(xué)院設(shè)計(jì)實(shí)驗(yàn)報(bào)告 物理與電子工程學(xué)院 嵌入式系統(tǒng)設(shè)計(jì)設(shè)計(jì)性實(shí)驗(yàn)報(bào)告 題 目 基于UCOS-II操作系統(tǒng)的簡(jiǎn)易計(jì)算器設(shè)計(jì)系 別 電子科學(xué)與技術(shù)系 年 級(jí) 電科111 班 級(jí) 050211101 學(xué)生姓名 卜建鋒 指導(dǎo)教師 浦 煒 實(shí)驗(yàn)時(shí)間 2014-5-29 目 錄課題要求21.本課題的目的32.運(yùn)行環(huán)境3正文4一.課題分析4二系統(tǒng)設(shè)計(jì)9三.技術(shù)實(shí)現(xiàn)問題23四.總結(jié)與體會(huì)24設(shè)計(jì)性實(shí)驗(yàn)報(bào)告成績(jī): 指導(dǎo)教師簽名:24課題要求1. 本課題的目的 在ucOS-II下設(shè)計(jì)一個(gè)圖形化界面的計(jì)算器,實(shí)現(xiàn)計(jì)算器功能。利用ucOS-II下圖形界面設(shè)計(jì)的API函數(shù)設(shè)計(jì)一個(gè)操作界面,含數(shù)字鍵、運(yùn)算鍵。
2、可以利用觸摸屏功能進(jìn)行操作運(yùn)算,同時(shí)利用實(shí)驗(yàn)箱上的小鍵盤輸入進(jìn)行運(yùn)算。該項(xiàng)目將主要涉及對(duì)ucOS-II下相關(guān)API函數(shù)的使用、基本圖形控件的使用、消息傳遞機(jī)制的掌握運(yùn)用等方面的綜合設(shè)計(jì)能力的培養(yǎng)和提高。2. 運(yùn)行環(huán)境代碼編譯使用:CodeWarrior for ARM Developer SuiteCodeWarrior for ARM Developer Suite是 ARM 公司推出的新一代 ARM 集成開發(fā)工具。 (圖1-1)代碼修改使用:source insight 為了方便的修改代碼使用,source insight。Source Insight是一個(gè)面向項(xiàng)目開發(fā)的程序編輯器和代碼瀏
3、覽器,能分析源代碼并在工作的同時(shí)動(dòng)態(tài)維護(hù)它自己的符號(hào)數(shù)據(jù)庫(kù),并自動(dòng)顯示有用的上下文信息。 Source Insight提供了快速和革新的訪問源代碼和源信息的能力。(圖1-2)1. 課題分析 圖形化界面的計(jì)算器的設(shè)計(jì)包括以下幾個(gè)部分:觸摸屏界面的設(shè)計(jì),觸摸屏按鍵功能設(shè)計(jì),文本框界面設(shè)計(jì),小鍵盤按鍵功能設(shè)計(jì),計(jì)算器邏輯功能的設(shè)計(jì)。1、觸摸屏界面以及功能設(shè)計(jì)觸摸屏界面設(shè)計(jì)包括文本框的設(shè)計(jì)以及模擬按鍵的設(shè)計(jì)主要用到繪圖API以及圖形控件,觸摸屏尺寸為320*240。文本框的尺寸為20*260,模擬按鍵尺寸30*40。具體分布見下(圖1-3)。(0,0) (0,320) +089 *7 / -564CL
4、EAR2310B=(240,0) (圖1-3) 計(jì)算機(jī)界面設(shè)計(jì)完畢后既是設(shè)計(jì)相應(yīng)的按鍵功能,相應(yīng)觸摸屏按鍵用到了消息循環(huán),觸摸屏消息的類型pMsg->Message 為OSM_TOUCH_SCREEN,參數(shù)pMsg->WParam中包含坐標(biāo)信息。用下面的語(yǔ)句獲得(x,y)坐標(biāo)值:Touch_Position.x=pMsg->WParam&0xffff;Touch_Position.y=pMsg->WParam>>16;得到了點(diǎn)擊觸摸點(diǎn)的坐標(biāo)后,用if(IsInRect2(X, Y)語(yǔ)句判斷這個(gè)坐標(biāo)點(diǎn)落在哪個(gè)按鍵區(qū)域范圍內(nèi),便可知道點(diǎn)擊的是哪個(gè)按鍵。此
5、時(shí)將按鍵值存在全局變量sysnumber中,以備下面處理使用。為了調(diào)試方便使用Uart_Printf("the key is Xn");及時(shí)的將按下的鍵值通過超級(jí)終端接受查看。例如語(yǔ)句: if(IsInRect2(pLine_Button_RECT, pTouch_Position) /'7'Uart_Printf("the key is 7n"); sysnumber = 7;可知按鍵按下的是7 鍵,按鍵與sysnumber值的對(duì)應(yīng)表如下:按鍵012345678鍵值012345678按鍵9+-*/=CEB鍵值91112131417161
6、5 (圖1-4)2、 文本框的設(shè)計(jì)文本框控件的設(shè)計(jì),使用CreateTextCtrl()函數(shù)來創(chuàng)建文本框控件,同樣必須指定文本框的唯一ID。用SetTextCtrlText()函數(shù)即可將Unicode 文本添加到文本框中, 而GetTextCtrlText() 函數(shù)用來獲取文本框中字符串的指針。用AppendChar2TextCtrl()函數(shù)和TextCtrlDeleteChar()函數(shù)分別在文本框中追加一個(gè)字符或刪除最后一個(gè)字符。也可以用SetTextCtrlEdit()函數(shù)設(shè)置文本框?yàn)榫庉嫚顟B(tài),使文本框可以響應(yīng)鍵盤消息,通過鍵盤輸入文字。創(chuàng)建文本框的代碼如下,創(chuàng)建一個(gè)20*260的文本框用
7、于顯示計(jì)算結(jié)果。void CreateText() structRECT rect;/定義矩形框結(jié)構(gòu)U16 str20=0;SetRect(&rect, 50,10,270,30);/設(shè)置PID參數(shù)軸1P的文本框pTextCtrl=CreateTextCtrl(ID_MainTextCtrl,&rect,FONTSIZE_MIDD LE,CTRL_STYLE_FRAME,NULL,NULL); Int2Unicode(sysnumber,str);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù)SetTextCtrlText(pTextCtrl, str,TRUE);/設(shè)置文本框內(nèi)容3、
8、小鍵盤按鍵功能設(shè)計(jì) 對(duì)于鍵盤消息來說其類型pMsg->MessageOSM_KEY,參數(shù)pMsg->WParam 則是按鍵的鍵碼。鍵盤中斷服務(wù)程序只向鍵盤郵箱中發(fā)送一個(gè)消息,通知鍵盤掃描任務(wù)發(fā)生按鍵事件。當(dāng)鍵盤掃描任務(wù)等到該郵箱的消息后就會(huì)從鍵盤掃描芯片讀取掃描碼,繼而將該掃描碼對(duì)應(yīng)的鍵碼用鍵盤消息發(fā)送到消息隊(duì)列。 應(yīng)用程序在Main_Task 任務(wù)中等待消息,并對(duì)該消息進(jìn)行判斷和處理,如果是鍵盤消息則提取出鍵碼,變換為對(duì)應(yīng)字符,然后通過超級(jí)終端接受查看。實(shí)際設(shè)計(jì)時(shí),可通過超級(jí)終端接受按鍵值,查看小鍵盤各個(gè)按鍵對(duì)應(yīng)的按鍵值,再按照上表(圖1-4),設(shè)置按鍵值變量sysnumber
9、。4、 計(jì)算器邏輯功能的設(shè)計(jì)計(jì)算邏輯是本設(shè)計(jì)的關(guān)鍵所在,根據(jù)觸摸屏或小鍵盤按下不同的鍵,設(shè)置不同的狀態(tài)。本次設(shè)計(jì)所實(shí)現(xiàn)的功能是:實(shí)現(xiàn)兩位數(shù)的加法,減法,乘法,除法,結(jié)果支持負(fù)數(shù)顯示。參與運(yùn)算的數(shù)值不能太大,不然在進(jìn)行乘法的時(shí)候可能會(huì)溢出,導(dǎo)致結(jié)果出錯(cuò)。所以設(shè)置參與運(yùn)算的數(shù)最大100 0000,若超出視為溢出,向開始用戶報(bào)錯(cuò),并清零要求重新輸入。在做除法時(shí),考慮到除數(shù)不能為零,所以在程序設(shè)計(jì)時(shí),進(jìn)行判斷,當(dāng)除數(shù)為零時(shí),向用戶報(bào)錯(cuò),并要求重新輸入除數(shù)。本設(shè)計(jì)支持輸入清零功能,當(dāng)用戶在輸入運(yùn)算數(shù)出錯(cuò)的,可以點(diǎn)擊“CLEAR”按鍵,清零并進(jìn)行再次輸入。支持觸摸屏和按鍵交叉輸入,并視為有效參與運(yùn)算數(shù)。運(yùn)
10、算流程圖如下:輸入第一個(gè)數(shù)超出范圍清零清零報(bào)錯(cuò) YCLEARN YN輸入運(yùn)算符號(hào) 輸入第二個(gè)數(shù) 清零清零報(bào)錯(cuò)超出范圍YCLEAR NY輸入等號(hào)執(zhí)行運(yùn)算2 系統(tǒng)設(shè)計(jì)1、 硬件系統(tǒng)液晶電路:觸摸屏用于顯示,并通過觸摸屏功能輸入數(shù)據(jù)用于計(jì)算(圖1-5)鍵盤電路:鍵盤實(shí)現(xiàn)輸入數(shù)據(jù)用于計(jì)算。(圖1-6)2、 軟件系統(tǒng) 基于UCOS-II操作系統(tǒng)的簡(jiǎn)易計(jì)算器設(shè)計(jì),主要在UCOS-II操作系統(tǒng)的基礎(chǔ)上,結(jié)合硬件進(jìn)行進(jìn)一步的功能開發(fā)與設(shè)計(jì)。uCOS-II任務(wù)是一個(gè)無返回的無窮循環(huán)。uc/os-ii總是運(yùn)行進(jìn)入就緒狀態(tài)的最高優(yōu)先級(jí)的任務(wù),所以,確定哪個(gè)任務(wù)優(yōu)先級(jí)最高,下面該哪個(gè)任務(wù)運(yùn)行,這個(gè)工作就是由調(diào)度器(s
11、cheduler)來完成的。任務(wù)級(jí)的調(diào)度是由函數(shù)OSSched()完成的,而中斷級(jí)的調(diào)度是由函數(shù)OSIntExt()完成。對(duì)于OSSched(),它內(nèi)部調(diào)用的是OS_TASK_SW()完成實(shí)際的調(diào)度;OSIntExt()內(nèi)部調(diào)用的是OSCtxSw()實(shí)現(xiàn)調(diào)度。任務(wù)切換分為兩部,第一步:將被掛起任務(wù)的處理器寄存器推入自己的任務(wù)堆棧。第二步:然后將進(jìn)入就緒狀態(tài)的最高優(yōu)先級(jí)的任務(wù)的寄存器值從堆棧中恢復(fù)到寄存器中。任務(wù)的5種狀態(tài)睡眠態(tài):任務(wù)駐留于程序空間中,暫時(shí)沒交給ucos-ii處理。就緒態(tài):任務(wù)一旦建立,這個(gè)任務(wù)就進(jìn)入了就緒態(tài)。運(yùn)行態(tài):調(diào)用OSStart()可以啟動(dòng)多任務(wù)。OSStart()函數(shù)只
12、能調(diào)用一次,一旦調(diào)用,系統(tǒng)將運(yùn)行進(jìn)入就緒態(tài)并且優(yōu)先級(jí)最高的任務(wù)。等待狀態(tài):正在運(yùn)行的任務(wù),通過延遲函數(shù)或pend(掛起)相關(guān)函數(shù)后, 將進(jìn)入等待狀態(tài)。中斷狀態(tài):正在運(yùn)行的任務(wù)是可以被中斷的,除非該任務(wù)將中斷關(guān)閉或者ucos-ii將中斷關(guān)閉。基于UCOS-II操作系統(tǒng)的簡(jiǎn)易計(jì)算器只用到了一個(gè)任務(wù),所以無需創(chuàng)建其他的任務(wù)。任務(wù)的主要功能是:響應(yīng)觸摸屏消息,讀取觸摸屏對(duì)于點(diǎn)的按鍵信息;響應(yīng)小鍵盤按鍵消息,讀取對(duì)應(yīng)的按鍵值信息。讀取完成后,進(jìn)行相應(yīng)的計(jì)算邏輯,最終將計(jì)算的結(jié)果通過文本框顯示在觸摸屏上。同時(shí)通過超級(jí)終端串口,向上位機(jī)及時(shí)發(fā)送對(duì)應(yīng)的按鍵信息,以便調(diào)試程序,以及查看觸摸屏校準(zhǔn)情況。3、 核心
13、代碼for(;)pMsg=WaitMessage(0); switch(pMsg->Message)case OSM_KEY:/鍵盤消息 Uart_Printf("C_flag=%d",pMsg->WParam); switch(pMsg->WParam) case 1: sysnumber=14; break;/ '/'case 2: sysnumber=13; break;/ '*'case 3: sysnumber=12; break;/ '-'case 7: sysnumber=11; break;/
14、 '+'case 14: sysnumber=17; break;/ '=' case 4: sysnumber=7; break;/ '/'case 5: sysnumber=8; break;/ '/'case 6: sysnumber=9; break;/ '/'case 8: sysnumber=4; break;/ '/'case 9: sysnumber=5; break;/ '/'case 10: sysnumber=6; break;/ '/'case
15、 11: sysnumber=1; break;/ '/'case 12: sysnumber=2; break;/ '/'case 13: sysnumber=3; break;/ '/'case 15: sysnumber=0; break;/ '/'case 16: sysnumber=16; break;/ 'claer' /*/*計(jì)算器處理部分*/ /*/if(sysnumber >= 11)&&(sysnumber<=14) /加減乘除功能C_flag = sysnumber
16、; Uart_Printf("C_flag=%d",C_flag); else if(sysnumber = 17) /等于號(hào)switch(C_flag)case 11: ans = Tmp1 + Tmp2; break;/加case 12: ans = Tmp1 - Tmp2; break; /減case 13: ans = Tmp1 * Tmp2; break;/乘case 14:if(Tmp2 = 0) Uart_Printf("error !ans = Tmp1 / Tmp2. Tmp2 must != 0 !n"); break; elsean
17、s = Tmp1 / Tmp2;break; / end switch Uart_Printf("ans=%dn",ans); Int2Unicode(ans,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容C_flag = 0;Tmp1 = 0;Tmp2 = 0;elseif(C_flag = 0) ans = Tmp1;ans *=10;ans+=sysnumber;if(ans>10000000) /溢出報(bào)錯(cuò),清零重新輸入 Uart_Printf("T
18、he number is too large !n"); Tmp1 = 0; ans = 0;else Tmp1 = ans; Uart_Printf("Tmp1=%dn",Tmp1); Int2Unicode(Tmp1,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容elseans = Tmp2;ans *=10;ans+=sysnumber;if(ans>10000000) /溢出報(bào)錯(cuò),清零重新輸入 Uart_Printf("The numbe
19、r is too large !n"); Tmp2 = 0; ans = 0;elseTmp2= ans; Uart_Printf("Tmp2=%dn",Tmp2); Int2Unicode(Tmp2,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容 if(sysnumber = 15) /清零鍵ans = 0;Tmp2 = 0; Tmp1 = 0; Int2Unicode(ans,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù)SetTextCtrlText
20、(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容 break;case OSM_TOUCH_SCREEN: / 觸摸屏消息Touch_Position.x=pMsg->WParam&0xffff;Touch_Position.y=pMsg->WParam>>16;/*按鍵值得讀取*/說明: 數(shù)值鍵盤 0-9 對(duì)應(yīng)數(shù)值0-9 / 功能鍵盤 B (15) CE(16) =(17)/ + (11) *(13)/ - (12) /(14)/*/if(IsInRect2(pLine_Button_RECT, pTouch_Position) /'
21、7'Uart_Printf("the key is 7n"); sysnumber = 7;else if(IsInRect2(pCircle_Button_RECT, pTouch_Position)/'4'Uart_Printf("the key is 4 n");sysnumber = 4;else if(IsInRect2(pCurve_Button_RECT, pTouch_Position)/'1'Uart_Printf("the key is 1n");sysnumber = 1;
22、else if(IsInRect2(pClear_Button_RECT, pTouch_Position)/'0' Uart_Printf("the key is 0n"); sysnumber = 0;else if(IsInRect2(pEIGHT_Button_RECT, pTouch_Position)/'8' Uart_Printf("the key is 8n"); sysnumber = 8;else if(IsInRect2(pFIVE_Button_RECT, pTouch_Position)/'
23、;5' Uart_Printf("the key is 5n"); sysnumber = 5;else if(IsInRect2(pTWO_Button_RECT, pTouch_Position)/'2' Uart_Printf("the key is 2n"); sysnumber = 2;else if(IsInRect2(pB_Button_RECT, pTouch_Position)/'B' Uart_Printf("the key is Bn"); sysnumber = 15;
24、else if(IsInRect2(pNINE_Button_RECT, pTouch_Position)/'9' Uart_Printf("the key is 9n"); sysnumber = 9;else if(IsInRect2(pSIX_Button_RECT, pTouch_Position)/'6' Uart_Printf("the key is 6n"); sysnumber = 6;else if(IsInRect2(pTHREE_Button_RECT, pTouch_Position)/'3
25、' Uart_Printf("the key is 3n"); sysnumber = 3;else if(IsInRect2(pEQUAL_Button_RECT, pTouch_Position)/'=' Uart_Printf("the key is =n");sysnumber = 17; else if(IsInRect2(pADD_Button_RECT, pTouch_Position)/'+' Uart_Printf("the key is +n");sysnumber = 11
26、;else if(IsInRect2(pDEC_Button_RECT, pTouch_Position)/'-' Uart_Printf("the key is -n");sysnumber = 12; else if(IsInRect2(pMUL_Button_RECT, pTouch_Position)/'*' Uart_Printf("the key is *n"); sysnumber = 13;else if(IsInRect2(pDIV_Button_RECT, pTouch_Position)/'/
27、' Uart_Printf("the key is /n"); sysnumber = 14;else if(IsInRect2(pCLEAR_Button_RECT, pTouch_Position)/'CE' Uart_Printf("the key is CE !n"); sysnumber = 15; Uart_Printf("C_flag=%dn",sysnumber); /說明: 數(shù)值鍵盤 0-9 對(duì)應(yīng)數(shù)值0-9 / 功能鍵盤 B (15) CE(16) =(17)/ + (11) *(13)/ -
28、 (12) /(14)/*/ /*計(jì)算器處理部分*/ /*/if(sysnumber >= 11)&&(sysnumber<=14) /加減乘除功能C_flag = sysnumber; Uart_Printf("C_flag=%d",C_flag); else if(sysnumber = 17) /等于號(hào)switch(C_flag)case 11: ans = Tmp1 + Tmp2; break;/加case 12: ans = Tmp1 - Tmp2; break; /減case 13: ans = Tmp1 * Tmp2; break;
29、/乘case 14:if(Tmp2 = 0) Uart_Printf("error !ans = Tmp1 / Tmp2. Tmp2 must != 0 !n"); break; elseans = Tmp1 / Tmp2;break; / end switch Uart_Printf("ans=%dn",ans); Int2Unicode(ans,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容C_flag = 0;Tmp1 = 0;Tmp2 = 0;
30、elseif(C_flag = 0) ans = Tmp1;ans *=10;ans+=sysnumber;if(ans>10000000) /溢出報(bào)錯(cuò),清零重新輸入 Uart_Printf("The number is too large !n"); Tmp1 = 0; ans = 0;else Tmp1 = ans; Uart_Printf("Tmp1=%dn",Tmp1); Int2Unicode(Tmp1,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/
31、設(shè)置文本框內(nèi)容elseans = Tmp2;ans *=10;ans+=sysnumber;if(ans>10000000) /溢出報(bào)錯(cuò),清零重新輸入 Uart_Printf("The number is too large !n"); Tmp2 = 0; ans = 0;elseTmp2= ans; Uart_Printf("Tmp2=%dn",Tmp2); Int2Unicode(Tmp2,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù) SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本框內(nèi)容 if(sysnumber = 15) /清零鍵ans = 0;Tmp2 = 0; Tmp1 = 0; Int2Unicode(ans,string);/將整形數(shù)據(jù)轉(zhuǎn)換為Unicode數(shù)據(jù)SetTextCtrlText(pTextCtrl, string,TRUE);/設(shè)置文本
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 帶你認(rèn)識(shí)什么是結(jié)構(gòu)化面試
- 化學(xué)反應(yīng)工程試卷
- 2024美容院美容院與養(yǎng)生館合作經(jīng)營(yíng)協(xié)議范本3篇
- 2024年度現(xiàn)代農(nóng)業(yè)技術(shù)研發(fā)人員聘用合同模板3篇
- 2025年度酒店廚師團(tuán)隊(duì)承包與客房服務(wù)一體化合同3篇
- 2025年度校園食堂食品安全培訓(xùn)及供餐服務(wù)協(xié)議3篇
- 馬鞍山師范高等??茖W(xué)?!豆夥O(shè)備概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 四川工商學(xué)院《英語(yǔ)聽說Ⅰ》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州電子信息職業(yè)技術(shù)學(xué)院《微生物學(xué)實(shí)驗(yàn)C》2023-2024學(xué)年第一學(xué)期期末試卷
- 天津財(cái)經(jīng)大學(xué)《橋牌與博弈論》2023-2024學(xué)年第一學(xué)期期末試卷
- 風(fēng)力發(fā)電收購(gòu)協(xié)議書
- 水質(zhì)監(jiān)測(cè)服務(wù)水質(zhì)自動(dòng)監(jiān)測(cè)系統(tǒng)運(yùn)行維護(hù)方案
- 2024年度-指南美術(shù)課件農(nóng)民畫
- 住宅小區(qū)公共部分裝修施工組織設(shè)計(jì)完整
- 重慶市豐都縣2023-2024學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 四年級(jí)數(shù)學(xué)思維訓(xùn)練題100道
- DB43-T 2897-2023 竹纖維復(fù)合波紋管材技術(shù)規(guī)范
- 人情往來(禮金)賬目表
- 2023年安全總監(jiān)年終工作總結(jié)
- GB/T 43543-2023漱口水
- 法拍輔助工作管理制度
評(píng)論
0/150
提交評(píng)論