版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 嵌入式課程設(shè)計(jì)</b></p><p> 《基于ARM平臺(tái)的打地鼠游戲》</p><p><b> 目錄</b></p><p><b> 課程設(shè)計(jì)內(nèi)容</b></p><p><b> 課程設(shè)計(jì)實(shí)驗(yàn)環(huán)境</b><
2、;/p><p><b> 課程設(shè)計(jì)原理分析</b></p><p><b> 課程設(shè)計(jì)開發(fā)計(jì)劃</b></p><p><b> 課程設(shè)計(jì)系統(tǒng)設(shè)計(jì)圖</b></p><p> 課程設(shè)計(jì)關(guān)鍵源碼分析</p><p><b> 課程設(shè)計(jì)成果展
3、示</b></p><p><b> 課程設(shè)計(jì)總結(jié)</b></p><p><b> 參考資料</b></p><p><b> 工程源代碼</b></p><p><b> 課程設(shè)計(jì)內(nèi)容</b></p><p>
4、; 本次課程設(shè)計(jì)基于課程《物聯(lián)網(wǎng)與嵌入式系統(tǒng)》的學(xué)習(xí),利用現(xiàn)有的硬件知識(shí)和計(jì)算機(jī)軟件編程知識(shí)從以下三個(gè)題目選擇一個(gè)作為課程設(shè)計(jì)內(nèi)容:測(cè)頻程序、交通燈演示系統(tǒng)、打地鼠游戲,難度依次遞增。基于個(gè)人實(shí)力和興趣的考慮,我選擇了打地鼠游戲作為我的課程設(shè)計(jì)題目。</p><p><b> 具體要求如下:</b></p><p> LCD正確顯示需求內(nèi)容</p>
5、<p><b> 觸摸屏功能正常使用</b></p><p> 基本的打地鼠游戲環(huán)節(jié)</p><p> 打地鼠游戲流暢運(yùn)行,無顯著BUG</p><p> 游戲結(jié)束后輸出統(tǒng)計(jì)數(shù)據(jù)</p><p><b> 課程設(shè)計(jì)實(shí)驗(yàn)環(huán)境</b></p><p> 軟
6、件:WindowsXP\Keil uVision4.72\ARM DeveloperSuite1.2\</p><p> H-JTAG\DNW\,其中keil編譯優(yōu)化等級(jí)為L(zhǎng)evel0.</p><p> 硬件:飛凌FL2440開發(fā)板,4.3寸(480*272)顯示屏、USB-JTAG仿真器</p><p> 實(shí)驗(yàn)室:中南大學(xué)-美國德州儀器聯(lián)合嵌入式實(shí)驗(yàn)室&l
7、t;/p><p> 三、課程設(shè)計(jì)原理分析</p><p><b> LCD顯示原理分析</b></p><p> S3C2440的LCD控制器由由一個(gè)邏輯單元組成,它的作用是:把LCD圖像數(shù)據(jù)從一個(gè)位于系統(tǒng)內(nèi)存的videobuffer傳送到一個(gè)外部的LCD驅(qū)動(dòng)器。LCD控制器使用一個(gè)基于時(shí)間的像素抖動(dòng)算法和偵速率控制思想,可以支持單色,2-b
8、itper pixel(4級(jí)灰度)或者4-bit-pixel(16級(jí)灰度)屏,并且它可以與256色(8BPP)和4096色(12BPP)的彩色STN LCD連接。它支持1BPP,2BPP,4BPP,8BPP的調(diào)色板TFT彩色屏并且支持64K色(16BPP)和16M色(24BPP)</p><p> 非調(diào)色板真彩顯示。LCD控制器是可以編程滿足不同的需求,關(guān)于水平,垂直方向的像素?cái)?shù)目,數(shù)據(jù)接口的數(shù)據(jù)線寬度,接口時(shí)
9、序和刷新速率。</p><p> S3C2440 LCD控制器被用來傳送視頻數(shù)據(jù)和生成必要的控制信號(hào),比如VFRAME, VLINE,VCLK,VM,等等。除了控制信號(hào)外,這S3C2440還有作為視頻數(shù)據(jù)的數(shù)據(jù)端口,它們是如圖15-1</p><p> 所示的VD[23:0]。LCD控制器由REGBANK,LCDCDMA,VIDPRCS, TIMEGEN,和LPC3600(看15-1L
10、CD控制器方塊圖)組成。REGBANK由17個(gè)可編程的寄存器組和一塊256*16的調(diào)色板內(nèi)存組成,</p><p> 它們用來配置LCD控制器的。LCDCDMA是一個(gè)專用的DMA,它能自動(dòng)地把在偵內(nèi)存中的視頻數(shù)據(jù)傳送到LCD驅(qū)動(dòng)器。通過使用這個(gè)DMA通道,視頻數(shù)據(jù)在不需要CPU的干預(yù)的情況下顯示在LCD</p><p> 屏上。VIDPRCS接收來自LCDCDMA的數(shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換為合
11、適的數(shù)據(jù)格式,比如說4/8位單掃,4位雙掃顯示模式,然后通過數(shù)據(jù)端口VD[23:0]傳送視頻數(shù)據(jù)到LCD驅(qū)動(dòng)器。TIMEGEN由可編程</p><p> 的邏輯組成,支持不同的LCD驅(qū)動(dòng)器接口時(shí)序和速率的需求。TIMEGEN塊可以產(chǎn)生VFRAME,VLINE,VCLK,VM等等。</p><p><b> 數(shù)據(jù)流描述如下:</b></p><p
12、> LCDCDMA中存在FIFO存儲(chǔ)器。當(dāng)FIFO為空,或者部分為空的時(shí)候,LCDCDMA請(qǐng)求從偵存儲(chǔ)器中取得數(shù)據(jù),是用突發(fā)的存儲(chǔ)傳輸模式取得數(shù)據(jù)的(每一個(gè)突發(fā)請(qǐng)求,連續(xù)的取4個(gè)字</p><p> (16bytes)在總線傳輸過程中,不允許總線控制權(quán)交給另一個(gè)總線控制)當(dāng)傳輸請(qǐng)求被存儲(chǔ)控制器中的總線仲裁器接收了后,將會(huì)產(chǎn)生連續(xù)的4個(gè)字的數(shù)據(jù)傳輸從系統(tǒng)內(nèi)存到內(nèi)部的FIFO。FIFO</p>
13、<p> 的總共大小為28個(gè)字,由12個(gè)字的FIFOL和16個(gè)字的FIFOH分別組成。S3C2440有2個(gè)FIFOs支持雙掃顯示模式。假如是單掃模式,F(xiàn)IFOH將會(huì)被用到。</p><p> 16BPP彩色模式:</p><p> 1個(gè)像素有16個(gè)位(5位紅,6位綠,5位藍(lán))視頻數(shù)據(jù)。但是STN控制器僅僅用到12位色彩數(shù)據(jù)。這意味著每一個(gè)彩色數(shù)據(jù)的高4位將被使用,作為像素
14、數(shù)據(jù)(R[15:12],G[10:7],B[4:1])。下面的表顯示了在字中的數(shù)據(jù)格式。</p><p><b> 觸摸屏原理</b></p><p> S3C2440A觸摸屏控制器</p><p> 觸摸屏的外接電路主要就是要控制上下兩層導(dǎo)電層的通斷情況以及如何取電壓,取電壓之后還需要將這個(gè)模擬量轉(zhuǎn)換成數(shù)字量,這部分工作主要是靠S3C2
15、440A芯片中的模數(shù)轉(zhuǎn)換器部分來實(shí)現(xiàn)的。即觸摸屏的功能實(shí)現(xiàn)實(shí)際上分兩部分,分別是觸摸屏的外接電路部分和S3C2440A芯片自帶的A/D轉(zhuǎn)換控制部分。S3C2440A芯片的A/D轉(zhuǎn)換器有8個(gè)輸入通道。轉(zhuǎn)換結(jié)果為10bit數(shù)字,轉(zhuǎn)換的過程是在芯片的內(nèi)部自動(dòng)實(shí)現(xiàn)的,轉(zhuǎn)換的結(jié)果可以直接從寄存器中取值出</p><p> 來,在進(jìn)行一定的轉(zhuǎn)后就可以得到觸摸點(diǎn)的坐標(biāo)。觸摸屏電路部分占用了ADC8個(gè)通道中的兩個(gè)通道作為X、Y
16、兩個(gè)坐標(biāo)軸方向的電壓輸入。</p><p><b> 觸摸屏接口模式</b></p><p> 1. 一般轉(zhuǎn)換模式:?jiǎn)为?dú)的轉(zhuǎn)換模式一般使用來作為通用的ADC轉(zhuǎn)換使用,這種模式可以通過初始化設(shè)置寄存器ADCCON,并且讀寫寄存器ADCDAT0來實(shí)現(xiàn)。</p><p> 2. 分別X/Y位置轉(zhuǎn)換模式:觸摸屏控制器可以通過X/Y兩個(gè)轉(zhuǎn)換模式中的
17、一個(gè)來完成,X位置模式寫X位置轉(zhuǎn)換數(shù)據(jù)到寄存ADCDAT0,這時(shí)觸摸屏接口產(chǎn)生中斷源到中斷控制器。Y位置模式寫Y位置轉(zhuǎn)換數(shù)據(jù)到寄存器ADCDAT1,,這時(shí)觸摸屏接口產(chǎn)生中斷源到中斷控制器。</p><p> 3. 自動(dòng)X/Y位置轉(zhuǎn)換模式:自動(dòng)X/Y位置轉(zhuǎn)換模式的工作方式如下:當(dāng)觸摸屏有觸點(diǎn)觸發(fā)時(shí),觸摸屏控制器依次轉(zhuǎn)換X位置和Y位置。在觸摸屏控制器寫X位置測(cè)試數(shù)據(jù)到寄存器ADCDAT0和寫Y位置測(cè)試數(shù)據(jù)到寄存器A
18、DCDAT1后,觸摸屏接口產(chǎn)生中斷源到中斷控制</p><p><b> 器。</b></p><p> 等待中斷模式:當(dāng)有觸摸筆按下的時(shí)候,觸摸屏控制器會(huì)產(chǎn)生中斷信號(hào)(INT_TC)。觸摸屏控制器在等待模式時(shí)必須設(shè)置觸摸屏接口XP、XM、YP、YM的狀態(tài)。</p><p><b> 課程設(shè)計(jì)開發(fā)計(jì)劃</b><
19、/p><p> 9月2日-9月3日:開發(fā)板連接測(cè)試各項(xiàng)功能是否正常</p><p> 9月4日-9月6日:LCD功能開發(fā),實(shí)現(xiàn)圖片顯示</p><p> 9月9日-9月10日:觸摸屏功能開發(fā),實(shí)現(xiàn)點(diǎn)擊中斷處理函數(shù)</p><p> 9月11日-9月12日:打地鼠游戲邏輯編寫,各功能整合</p><p> 9月13
20、日:檢查驗(yàn)收</p><p><b> 五、課程系統(tǒng)設(shè)計(jì)圖</b></p><p> 課程設(shè)計(jì)關(guān)鍵源碼分析</p><p> 480*272屏輸出控制</p><p> #define VBPD_480_272(3)</p><p> #define VFPD_480_272
21、(5)</p><p> #define VSPW_480_272(5)</p><p> #define HBPD_480_272(33)</p><p> #define HFPD_480_272(15)</p><p> #define HSPW_480_272(8)</p>&
22、lt;p> #define LCD_BLANK12</p><p> #define CLKVAL_TFT_480_272(3)</p><p> #define ADCPRS 9//YH 0627</p><p> static void Lcd_Init(U8 size)//標(biāo)準(zhǔn)的LCD初始化函數(shù)</p><p>&
23、lt;b> {</b></p><p> rGPCUP=0xffffffff; // Disable Pull-up register</p><p> rGPCCON=0xaaaa56a9; //Initialize VD[7:0],LCDVF[2:0],VM,VFRAME,VLINE,VCLK,LEND </p><p> rGPDUP
24、=0xffffffff; // Disable Pull-up register</p><p> rGPDCON=0xaaaaaaaa; //Initialize VD[15:8]</p><p> rLCDCON1=(CLKVAL_TFT_480_272<<8)|(MVAL_USED<<7)|(3<<5)|(12<<1)|0;<
25、/p><p> //比較關(guān)鍵的就是3<<5是將色彩輸出模式為16BPP(5:6:5)</p><p> rLCDCON2=(VBPD_480_272<<24)|(LINEVAL_TFT_480_272<<14)|(VFPD_480_272<<6)|(VSPW_480_272);</p><p> rLCDCON3=(
26、HBPD_480_272<<19)|(HOZVAL_TFT_480_272<<8)|(HFPD_480_272);</p><p> rLCDCON4=(MVAL<<8)|(HSPW_480_272);</p><p> rLCDCON5=(1<<11)|(1<<9)|(1<<8)|(1<<3)|(BS
27、WP<<1)|(HWSWP);</p><p> //rLCDCON5=(1<<11)|(0<<9)|(0<<8)|(0<<6)|(BSWP<<1)|(HWSWP);//FRM5:6:5,HSYNC and VSYNC are inverted</p><p> rLCDSADDR1=(((U32)LCD_BUF
28、FER>>22)<<21)|M5D((U32)LCD_BUFFER>>1);</p><p> rLCDSADDR2=M5D( ((U32)LCD_BUFFER+(SCR_XSIZE_480_272*LCD_YSIZE_480_272*2))>>1 );</p><p> rLCDSADDR3=(((SCR_XSIZE_480_272-L
29、CD_XSIZE_480_272)/1)<<11)|(LCD_XSIZE_480_272/1);</p><p> rLCDINTMSK|=(3); // MASK LCD Sub Interrupt</p><p> rTPAL=0; // Disable Temp Palette</p><p><b> }</b><
30、;/p><p><b> }</b></p><p> static void PutPixel(U32 x,U32 y, U32 c )//LCDBUFFER區(qū)控制,用以輸出LCD屏上像素點(diǎn),為加快編譯速度,直接操縱開發(fā)板固化內(nèi)存地址0x30100000,這里也是通過查閱參考手冊(cè)知道該地址起為L(zhǎng)CD數(shù)據(jù)存取區(qū)域,跟顯示屏分辨率有關(guān)系</p><p
31、><b> {</b></p><p> if ( (x < 480) && (y < 272) ){</p><p> (*(volatile unsigned char*)(0x30100000 + (y*480 + x)*2)) = c & 0x0ff;</p><p> (*(volat
32、ile unsigned char*)(0x30100000 + (y*480 + x)*2 + 1)) = c >> 8;</p><p><b> }</b></p><p><b> }</b></p><p> static void Paint_Bmp(int x0,int y0,int h,i
33、nt l,unsigned char bmp[])</p><p> {//該函數(shù)用以讀取圖片信息并輸出到LCD屏指定位置,其中bmp[]為圖片轉(zhuǎn)化為的16進(jìn)制數(shù)組,x0,y0分別為圖片起始坐標(biāo),h、l分別為圖片寬度和高度</p><p><b> int x,y;</b></p><p><b> U32 c;</b&g
34、t;</p><p> int p = 0;</p><p> for( y = 0 ; y < l ; y++ )</p><p><b> {</b></p><p> for( x = 0 ; x < h ; x++ )</p><p><b> {</
35、b></p><p> c = bmp[p+1] | (bmp[p]<<8) ;//這里由于色彩顯示為16BPP,所以需要16位,bmp[]為16進(jìn)制數(shù)據(jù),單字節(jié)8位,故需要移位8,高位在前。</p><p> if ( ( (x0+x) < SCR_XSIZE_480_272) && ( (y0+y) < SCR_YSIZE_480_27
36、2) )</p><p> PutPixel(x+x0,y+y0,c) ;</p><p> p = p + 2 ;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b><
37、;/p><p> void touchinit(void)//觸摸屏功能初始化函數(shù)</p><p><b> {</b></p><p> rADCDLY=50000; //Normal conversion mode delay about (1/3.6864M)*50000=13.56ms</p&g
38、t;<p> rADCCON=(1<<14)+(ADCPRS<<6); //ADCPRS En, ADCPRS Value</p><p> rADCTSC=0xd3; //Wfait,XP_PU,XP_Dis,XM_Dis,YP_Dis,YM_En</p><p> pISR_ADC = (int)AdcTsAuto2;</p>
39、;<p> rINTMSK=~BIT_ADC; //ADC Touch Screen Mask bit clear</p><p> rINTSUBMSK=~(BIT_SUB_TC);</p><p> Uart_Printf("\nTouch Screen init sucessfully!");</p><p>
40、;<b> }</b></p><p> void __irq AdcTsAuto2(void)//中斷處理函數(shù)</p><p><b> {</b></p><p><b> int i;</b></p><p> U32 saveAdcdly;</p>
41、<p> if(rADCDAT0&0x8000)</p><p><b> {</b></p><p> rADCTSC&=0xff;// Set stylus down interrupt bit</p><p><b> }</b></p><p> r
42、ADCTSC=(1<<3)|(1<<2); //Pull-up disable, Seq. X,Y postion measure.</p><p> saveAdcdly=rADCDLY;</p><p> rADCDLY=40000; //Normal conversion mode delay about (
43、1/50M)*40000=0.8ms</p><p> rADCCON|=0x1; //start ADC</p><p> while(rADCCON & 0x1);//check if Enable_start is low</p><p> while(!(rADCCON & 0x8000));
44、 //check if EC(End of Conversion) flag is high, This line is necessary~!!</p><p> while(!(rSRCPND & (BIT_ADC))); //check if ADC is finished with interrupt bit</p><p> xdata=(rADCDAT0
45、&0x3ff);//ADC數(shù)據(jù)寄存器低10位為有效數(shù)據(jù),其中0為x坐標(biāo)值,1為y坐標(biāo)值</p><p> ydata=(rADCDAT1&0x3ff);</p><p> //YH 0627, To check Stylus Up Interrupt.</p><p> rSUBSRCPND|=BIT_SUB_TC;</p>&l
46、t;p> ClearPending(BIT_ADC);</p><p> rINTSUBMSK=~(BIT_SUB_TC);</p><p> rINTMSK=~(BIT_ADC); </p><p> rADCTSC =0xd3; //Waiting for interrupt</p><p> rADCTSC=
47、rADCTSC|(1<<8); // Detect stylus up interrupt signal.</p><p> while(1)//to check Pen-up state</p><p><b> {</b></p><p> if(rSUBSRCPND & (BIT_SUB_TC))//che
48、ck if ADC is finished with interrupt bit</p><p><b> {</b></p><p> break;//if Stylus is up(1) state</p><p><b> }</b></p><p><b> }<
49、/b></p><p> TouchState=testPos(xdata,ydata);//testpos是由我自己編寫的LCD觸及位置判斷函數(shù),由于返回的xdata和ydata在LCD屏上與分辨率并不匹配,需要大致計(jì)算</p><p> if(TouchState==MouseState)</p><p><b> {</b>&
50、lt;/p><p> Uart_Printf("\nSuccessfully Hitted a mouse!");//X-position Conversion data </p><p> TouchState=6;</p><p> tnumplus();</p><p><b> }</b
51、></p><p> rADCDLY=saveAdcdly; </p><p> rADCTSC=rADCTSC&~(1<<8); // Detect stylus Down interrupt signal.</p><p> rSUBSRCPND|=BIT_SUB_TC;</p><p> rINTSUB
52、MSK=~(BIT_SUB_TC);// Unmask sub interrupt (TC) </p><p> ClearPending(BIT_ADC);//清中斷寄存器,比較重要,否則會(huì)陷入中斷循環(huán)中</p><p><b> }</b></p><p> void RandomMouse(void)//產(chǎn)生隨機(jī)數(shù)函數(shù),由
53、于ARM無法支持C語言中的srand()隨機(jī)數(shù)函數(shù),所以自作隨機(jī)函數(shù),經(jīng)本地測(cè)試,隨機(jī)種子生成數(shù)具備一定隨機(jī)性,滿足實(shí)驗(yàn)要求。</p><p><b> {</b></p><p> //srand(time(0));</p><p> unsigned long dongseed;</p><p> dongs
54、eed=((2617*seed)+123)/37;</p><p> seed=dongseed;</p><p> MouseState = dongseed%4;</p><p> sumplus();</p><p> //Uart_Printf("ms=%d",MouseState);</p>
55、<p><b> }</b></p><p><b> 課程設(shè)計(jì)成果展示</b></p><p> 開發(fā)板上電后主菜單:</p><p><b> 地鼠出現(xiàn)速度選擇:</b></p><p> 游戲啟動(dòng)界面:(董先生的打地鼠,董嘉偉@中南大學(xué)物聯(lián)網(wǎng)工程)&
56、lt;/p><p> (只能照到部分畫面)</p><p> 手機(jī)不太給力,拍攝比較模糊</p><p><b> 地鼠隨機(jī)出現(xiàn):</b></p><p> 正確敲擊后串口輸出以及最終結(jié)果顯示:</p><p><b> 課程設(shè)計(jì)總結(jié)</b></p>&l
57、t;p> 與之前去杰普實(shí)訓(xùn)所做的智能家居平臺(tái)不同的是,本次課程設(shè)計(jì)采用了功能更為強(qiáng)大的ARM9平臺(tái)。平時(shí)所學(xué)嵌入式大多針對(duì)部分51單片機(jī)來做的,但51單片機(jī)運(yùn)行主頻低、功能少不適合完成復(fù)雜的計(jì)算或者控制功能,此次全用全新的ARM9平臺(tái)來做,感覺上功能更加強(qiáng)大,開發(fā)難度也有所增加。</p><p> 本次課程設(shè)計(jì)完全按照實(shí)驗(yàn)老師的要求來進(jìn)行,經(jīng)過合理規(guī)劃,最終按時(shí)完成了開發(fā)任務(wù)。在開發(fā)過程中遇到了很多的問
58、題,對(duì)于我們這種經(jīng)常搞上層應(yīng)用開發(fā)的同學(xué)來說,底層的開發(fā)問題確實(shí)給了我們足夠多的壓力,除了參考資料的匱乏以外,再加上開發(fā)板本身存在一些問題,著實(shí)對(duì)調(diào)試代碼產(chǎn)生了巨大影響。像LCD的顯示分辨率,基本上如果按照參考手冊(cè)來配置的話,必然會(huì)出現(xiàn)尺寸超界,顯示不完全的問題。這就需要我們自己去摸索和嘗試,經(jīng)過多番查找和網(wǎng)上求救,最終確定LCD屏的最佳分辨率為480*272,才使圖片顯示完全不會(huì)出界。同時(shí)16BPP的色彩輸出模式也曾給我造成了巨大的困
59、擾,之前一直無法正確輸出色彩,我曾懷疑位運(yùn)算出現(xiàn)問題,但查看很久都未發(fā)現(xiàn)問題,后來意識(shí)到我的圖片轉(zhuǎn)換16進(jìn)制數(shù)組有可能存在問題。我使用的轉(zhuǎn)換軟件為Image2LCD3.2,發(fā)現(xiàn)它輸出16BPP時(shí)默認(rèn)輸出的位分配模式為5:5:6,而S3C2440中的LCD初始化選擇的是5:6:5,故出現(xiàn)顏色顯示錯(cuò)誤,重新輸出后解決問題。</p><p> 在測(cè)試觸摸屏中斷時(shí),我的代碼邏輯一直陷入中斷循環(huán)中,無法返回中斷現(xiàn)場(chǎng),令我
60、十分困惑。后來發(fā)現(xiàn)中斷處理結(jié)束后,忘了添加清中斷寄存器的代碼,以至于陷入了中斷循環(huán)中。最后一個(gè)比較煩人的問題便是keil C的編譯器問題了,很多定義的全局靜態(tài)volatile變量在中斷中都無法獲取到正常的初始化值,上網(wǎng)查詢后才知道keil C編譯器存在著這樣的問題,需要在中斷的現(xiàn)場(chǎng)再次初始化volatile變量值,才可以解決,在ADS下開發(fā)不會(huì)存在該問題。</p><p> 這次課程設(shè)計(jì)我不僅掌握了ARM開發(fā)的
61、基本流程,另外我的C語言水平再次得到提升,分析問題、解決問題的能力也得到鍛煉。此次課程設(shè)計(jì)的完成離不開老師、同學(xué)的幫助,同樣離不開網(wǎng)上的熱心網(wǎng)友的指點(diǎn),感謝諸位。</p><p><b> 參考資料</b></p><p> 《物聯(lián)網(wǎng)與嵌入式系統(tǒng)》 劉連浩 編著</p><p> 《ARM系統(tǒng)開發(fā)與設(shè)計(jì)》 李駒光 編著</p&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于plc的打地鼠游戲課程設(shè)計(jì)
- 打地鼠課程設(shè)計(jì)報(bào)告--木槌打老鼠
- 嵌入式觸摸屏課程設(shè)計(jì)---arm嵌入式系統(tǒng)
- 嵌入式課程設(shè)計(jì)--基于arm嵌入式圖像處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- arm嵌入式系統(tǒng)課程設(shè)計(jì)-基于嵌入式系統(tǒng)的煙氣檢測(cè)監(jiān)控系統(tǒng)
- 嵌入式課程設(shè)計(jì)報(bào)告---貪吃蛇游戲
- 嵌入式課程設(shè)計(jì)--基于嵌入式系統(tǒng)的開源游戲模擬器的設(shè)計(jì)
- arm9嵌入式系統(tǒng)課程設(shè)計(jì)
- 打地鼠vb課程設(shè)計(jì)
- 基于ARM的嵌入式控制平臺(tái)設(shè)計(jì).pdf
- arm7電子時(shí)鐘嵌入式課程設(shè)計(jì)報(bào)告
- 基于arm7的uclinux移植嵌入式課程設(shè)計(jì)
- 嵌入式系統(tǒng)課程設(shè)計(jì)--基于arm 的電子點(diǎn)菜系統(tǒng)
- 嵌入式課程設(shè)計(jì)報(bào)告2
- 嵌入式課程設(shè)計(jì)基于arm9的視頻監(jiān)控系統(tǒng)
- 基于ARM的嵌入式測(cè)控平臺(tái)設(shè)計(jì).pdf
- 基于ARM的嵌入式開發(fā)平臺(tái)設(shè)計(jì).pdf
- 嵌入式課程設(shè)計(jì)報(bào)告---嵌入式文件鎖應(yīng)用
- arm嵌入式系統(tǒng)課程設(shè)計(jì)報(bào)告高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
- 嵌入式課程設(shè)計(jì)報(bào)告 (2)
評(píng)論
0/150
提交評(píng)論