freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于stm32μcos-ii貪吃蛇的設(shè)計課程設(shè)計(更新版)

2024-08-01 18:48上一頁面

下一頁面
  

【正文】 II最大程度上使用ANSI C語言進行開發(fā),并且已經(jīng)移植到近40多種處理器體系上,涵蓋了從8位到64位各種CPU(包括DSP)。 LCD_ShowString(60,150,GAME OVER! )。//繪制一個矩形框, 0127 LCD_Fill(232,0,240,280,DARKBLUE)。[i]==[]) { Game_Over()。amp。 = 1。 //判斷是否吃到食物,若吃到長度加1,而且再放一個 if(([]==)amp。 //蛇頭向你要求的方向移動 for(i=0。 }}void Snake_Move(int dir_x,int dir_y) //移動蛇{ u8 i。 =1。 u8 Yes。 u8 Y[SNAKE_MAX_LONG]。void LCD_WriteRAM_Prepare(void)。 void LCD_Fill(u16 sx,u16 sy,u16 ex,u16 ey,u16 color)。void LCD_Clear(u16 Color)。amp。 return 1。 //PA13上拉,PA0默認(rèn)下拉 GPIOAODR|=115。// 設(shè)置成輸入void KEY_Init(void){ RCCAPB2ENR|=12。=0XFFFFFFF0。R34,寫數(shù)據(jù)到GRAM命令,當(dāng)寫入了這個命令之后,地址計數(shù)器才會自動的增加和減少。該命令CL位用來控制是8位彩色,還是26萬色。因為93xx系列的初始化,其實都比較類似,我們完全可以用一個代碼兼容好幾個控制器。模塊的控制器為ILI9320(可能為其他型號,但是他們的設(shè)置很相似,除了初始化序列有些區(qū)別,其他大都是一摸一樣的,這里僅以9320為例介紹),該控制器自帶顯存,其顯存總大小為172820(240*320*18/8),即18位模式(26萬色)下的顯存量。WR:向TFTLCD寫入數(shù)據(jù)。TFTLCD也被叫做真彩液晶顯示器。該寄存器的各位描述如下圖所示:ALIENTEK MiniSTM32開發(fā)板板載的LED硬件連接: 按鍵 ALIENTEK MiniSTM32 開發(fā)板總共有 3 個按鍵,其原理圖如下: KEY0 和 KEY1 用作普通按鍵輸入,分別連接在 PC5 和 PA15 上,其中 PA15 和 JTDI 共用了,所以,在使用 KEY0 和 KEY1 的時候,就不能使用 JTAG 來調(diào)試了,但是可以用 SWD 調(diào)試,這點在使用的時候要注意。這里我們可以記住幾個常用的配置,比如0X0表示模擬輸入模式(ADC用)、0X3表示推挽輸出模式(做輸出口用,50M速率)、0X8表示上/下拉輸入模式(做輸入口用)、0XB表示復(fù)用輸出(使用IO口的第二功能,50M速率)。 LED 燈 ALIENTEK MiniSTM32開發(fā)板板載了2個LED,DS0和DS1, STM32的IO口可以由軟件配置成8種模式:輸入浮空輸入上拉輸入下拉模擬輸入開漏輸出推挽輸出推挽式復(fù)用功能開漏復(fù)用功能每個IO口可以自由編程,單IO口寄存器必須要按32位字被訪問。2 系統(tǒng)硬件設(shè)計 開發(fā)板簡介ALIENTEK MiniSTM32 開發(fā)板是一款迷你型的 STM32F103 開發(fā)板,小巧而不小氣,簡約而不簡單。STM32 的優(yōu)異性體現(xiàn)在如下幾個方面: 以 8 位機的價格,得到 32 位機,是 STM32 最大的優(yōu)勢。同時,該系統(tǒng)源代碼開放、整潔、一致,注釋詳盡,適合系統(tǒng)開發(fā)?,F(xiàn)基于STM32的TFT液晶顯示可以更好的滿足各種需求,也更便于操作和實現(xiàn)。ARM在此方面的應(yīng)用如:手提式計算機、移動電話、PDA等。 同時 STM32還推出了 STM32L 和 STM32W 等超低功耗和無線應(yīng)用型的 M3 芯片。◆ 獨創(chuàng)的一鍵下載功能◆ 除晶振占用的IO口外,其余所有IO口全部引出,其中GPIOA和GPIOB按順序引出,整個板子尺寸為 8cm*10cm*2cm板上除晶振外的所有的 IO 口全部引出,特別還有 GPIOA 和 GPIOB 的 IO 口是按順序引出的,可以極大的方便大家擴展及使用,另外板載獨特的一鍵下載功能,避免了頻繁設(shè)置 B0、B1 帶來的麻煩,直接在電腦上一鍵下載。他們分別是:配置模式的2個32位的端口配置寄存器CRL和CRH;2個32位的數(shù)據(jù)寄存器IDR和ODR;1個32位的置位/復(fù)位寄存器BSRR;一個16位的復(fù)位寄存器BRR;1個32位的鎖存寄存器LCKR;這里我們僅介紹常用的幾個寄存器,我們常用的IO端口寄存器只有4個:CRL、CRH、IDR、ODR。該寄存器為只讀寄存器,并且只能以16位的形式讀出。該按鍵是高電平觸發(fā)的。3,16位真彩顯示。RST:硬復(fù)位TFTLCD。接下來,我們介紹一下ILI9320的幾個重要命令,因為ILI9320的命令很多,我們這里不可能一一介紹,有興趣的大家可以找到ILI9320的datasheet看看。AM:控制GRAM更新方向。當(dāng)全部設(shè)置為1的時候開啟顯示,全0是關(guān)閉。這幾個命令用于設(shè)定你顯示區(qū)域的大小,我們整個屏的大小為240*320,但是有時候我們只需要在其中的一部分區(qū)域?qū)懭霐?shù)據(jù),如果用先寫坐標(biāo),后寫數(shù)據(jù)這樣的方式來實現(xiàn),則速度大打折扣。 //PA8 輸出高 GPIODCRLamp。//PA0設(shè)置成輸入 GPIOACRL|=0X00000008。 if(key_upamp。 } else if(KEY2==1) { JTAG_Set(SWD_ENABLE)。 return 0。void LCD_DrawPoint(u16 x,u16 y)。 //顯示一個數(shù)字void LCD_Show2Num(u16 x,u16 y,u16 num,u8 len,u8 size,u8 mode)。 u16 LCD_BGR2RGB(u16 c)。 u8 Score。 //8*8小矩形}void Turn_On(u8 x,u8 y){ LCD_Fill((x*8),(y*8),(x*8+8),(y*8+8),RED)。i++) //初始化蛇的位置 { [i]=i+14。i。 } }void Food_Place(u8 Food_x,u8 Food_y) //放食物{ =Food_x。 []=。 //放食物 if(==1) //獲得隨機食物坐標(biāo) { while(1) { =rand()%28+1。 break。}void Game_Start(void){ //u8 i。// LCD_ShowString(20,300,Score)。 LCD_ShowNum(100,190,(u32),4,16)。內(nèi)核屬于搶占式,最多可以管理60個任務(wù)。(3) 時鐘部分()  μC/OSII中的最小時鐘單位是timetick(時鐘節(jié)拍)。可剝奪型的實時內(nèi)核在任何時候都運行就緒了的最高優(yōu)先級的任務(wù)。中斷發(fā)生的時間間隔是固定不變的,該中斷也成為一個時鐘節(jié)拍。 //task priority OSStart()。 //suspend but not delete OS_EXIT_CRITICAL()。 } break。 } OSTimeDlyHMSM(0,0,0,20)。=~(12)。第一,蛇與食物都僅僅用矩形代表,比較單一;第二,可以設(shè)置多個關(guān)卡及障礙使得游戲更富有挑戰(zhàn);第三,蛇的運行速度可以隨著吃到食物的增多加快,增加游戲的難度和趣味性。ReferenceHouseResolutio
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1