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

正文內(nèi)容

無線電子菜譜系統(tǒng)的設(shè)計及實現(xiàn)附程畢業(yè)論文-資料下載頁

2025-06-22 22:42本頁面
  

【正文】 就能很好的解決。程序配置NRF24L01的工作模式為增強型ShockBurst TM,這樣每次的數(shù)據(jù)收發(fā)問答就由NRF24L01模塊自動進行,而無需人為干預(yù)。 系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào)的最終目的就是要實現(xiàn)論文開篇虛擬的那樣場景的功能。移動端點菜完畢,發(fā)送數(shù)據(jù),接收端對數(shù)據(jù)接收后進行處理通過串口發(fā)送給上位機,上位機再將接收到的數(shù)據(jù)進行處理存入數(shù)據(jù)庫再提示新賬單的到來,刷新顯示,這樣完成一次點單過程。系統(tǒng)正常運行時的界面如圖53。圖53 上位機運行界面接收端發(fā)送數(shù)據(jù)給上位機會引起串口的中斷,從而會進入函數(shù)void CWirelessMenuDlg::OnOnCommMsm1() 內(nèi)進行數(shù)據(jù)處理,由于一些未知名的原因,有時將數(shù)據(jù)發(fā)送給上位機,而從緩沖區(qū)不能完整的讀出發(fā)送的數(shù)據(jù),有時又會將發(fā)送的數(shù)據(jù)分成好幾個片段讀出,不能一次性讀出,例如發(fā)送“1a2a3a5a8a10a”,有時會連續(xù)兩次進入OnOnCommMsm1()函數(shù)內(nèi)部,利用MessageBox彈窗功能觀察到會連續(xù)彈出“1a2a3a”、“5a8a10a”,在將程序改變之后,只能減少這種情況的發(fā)生,卻不能完全抑制,一旦發(fā)生這樣的錯誤,程序不得不中止或產(chǎn)生錯誤的賬單信息,這也是我后來尤其要注意修改的地方。參考文獻[1] [M].北京:人民郵電出版社,2004.[2] [M].重慶:科學文獻出版社,1990.[3] 萬福君,[M].合肥:中國科學技術(shù)大學出版社,2001.[4] [J].國外電子元器件,2004,,:3436.[5] 、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009.[6] 屈磊, C++開發(fā)入門與編程實踐[M].北京:電子工業(yè)出版社,2007.[7] :基于8051+ Proteus仿真[M].北京:電子工業(yè)出版社,2009.[8] 周荷琴,(第四版)[M].合肥:中國科學技術(shù)大學出版社,2008.[9] 李俊, C++[M].北京:人民郵電出版社,2002.[10] [J].計算機應(yīng)用與研究,2002,,:2426.[11] [J].微電腦世界,1999,:2122.[12] ++深入詳解[M].北京:電子工業(yè)出版社,2006.[13] Windows 應(yīng)用程序設(shè)計[M].北京:清華大學出版社,.[14] API 程序設(shè)計參考大全[M].北京:人民郵電出版社,2006.[15] Kang Woochul,Son, Sang Hyuk,Stankovic,John , Implementation, and Evaluation of a QoSAware RealTime Embedded Database[J].IEEE Transactions on Computers,2012,:2022.附 錄附錄一 系統(tǒng)電路圖附錄二 系統(tǒng)實物圖1. 移動端點菜界面2. 接收端3. 上位機接收到數(shù)據(jù)附錄三 源程序清單//移動端主程序include include include include include include include include include define MAX_NUM 30data unsigned int count=0。data char PAGE=1。xdata unsigned char TxBuf[]={33,35,26,38,18,54,23,10,2,11,4,5,6,7,8,9,10,25,12,13,47,39。c39。,39。s39。}。 data unsigned char send_flag=1。data int temp=0。void InitInt0(void)。void main(){ VoicePlay(0)。 Init_NRF24L01()。 Init_DS18B20()。 ILI9325_Initial()。 //TFT初始化 GUI_clearscreen(RGB(255,255,0))。 //清屏 if(SdInit()) //SD卡初始化 DisInitMenu()。 GUI_sprintf_string(0,304,Temperature:,BLUE,MAIN_BACKGROUND,1)。 InitInt0()。 while(1) { temp=ReadTemp_DS18B20()。 GUI_wrlval(136,304,temp,4,2,BLUE,MAIN_BACKGROUND,1)。 } }void Int0Interrupt(void) interrupt 0{ unsigned char menu_data[MAX_NUM+3]。 unsigned char n=0。 unsigned char flag=1。 char j=0。 unsigned char i=0。 unsigned char desk_num=1。 EX0=0。 VoicePlay(5)。 DisEnsureDiancai(1)。 while(1) { n=EnsurePos(1,amp。flag)。 if(n==DIANCAI_OK) { VoicePlay(1)。 DisEnsureDiancai(0)。 DisInputDeskNum(1)。 flag=0。 goto input_desknum。 } if(n==DIANCAI_NO) { VoicePlay(5)。 DisEnsureDiancai(0)。 //GUI_wrlval(136,304,temp,4,2,BLUE,MAIN_BACKGROUND,1)。 flag=0。 goto end。 } }input_desknum:while(1) { n=EnsurePos(2,amp。flag)。 if((n==INPUT_OK)amp。amp。flag) { VoicePlay(5)。 DisInputDeskNum(0)。 DisVice()。 DisMenu(PAGE)。 menu_data[0]=desk_num。 j++。 flag=0。 goto diancai。 } if((n==INPUT_NO)amp。amp。flag) { VoicePlay(5)。 DisInputDeskNum(0)。 flag=0。 goto end。 } if((n==INPUT_ADD)amp。amp。flag) { VoicePlay(5)。 desk_num++。 if(desk_num==51) desk_num=50。 GUI_wrul(65,292,desk_num,3,RED,WHITE,1)。 flag=0。 } if((n==INPUT_PLUS)amp。amp。flag) { VoicePlay(5)。 desk_num。 if(desk_num==0) desk_num=1。 GUI_wrul(65,292,desk_num,3,RED,WHITE,1)。 flag=0。 } }diancai:while(1) { n=EnsurePos(3,amp。flag)。 if((n==LAST_PAGE)amp。amp。flag) { VoicePlay(5)。 PAGE。 if(PAGE==0) PAGE=1。 DisMenu(PAGE)。 flag=0。 } if((n==NEXT_PAGE)amp。amp。flag) { VoicePlay(5)。 PAGE++。 if(PAGE==5) PAGE=4。 DisMenu(PAGE)。 flag=0。 } if((n==CANCEL)amp。amp。flag) { VoicePlay(5)。 GUI_clearscreen(RGB(255,255,0))。 //清屏 DisInitMenu()。 goto end。 } if((n=0x01)amp。amp。(n=0x07)amp。amp。flag) { VoicePlay(5)。 menu_data[j]=(PAGE1)*7+n。 GUI_sprintf_chartodec(0,0,menu_data[j],RED,WHITE,1)。 j++。 if(j==MAX_NUM) j=MAX_NUM1。 flag=0。 } if((n==OK)amp。amp。flag) { if(j==1)//未選擇則提示“You haven39。t chosen anything!” { VoicePlay(2)。 GUI_box(0,276,239,319,PURPLE)。 GUI_sprintf_string(10,289,You haven39。t chosen anything!,WHITE,PURPLE,1)。 ILI9325_delayms(2000)。 DisVice()。 flag=0。 } if(j=2) { //發(fā)送數(shù)據(jù) VoicePlay(3)。 GUI_sprintf_string(0,260,SENDING.....,WHITE,PURPLE,1)。 menu_data[j++]=39。c39。 menu_data[j]=39。s39。 NRF24L01_SingleSend(menu_data)。 // Transmit Tx buffer data VoicePlay(4)。 GUI_sprintf_string(0,260,SENDING.....OK!,WHITE,PURPLE,1)。 GUI_clearscreen(RGB(255,255,0))。 //清屏 DisInitMenu()。 flag=0。 goto end。 } } } end:GUI_sprintf_string(0,304,Temperature:,BLUE,MAIN_BACKGROUND,1)。 PAGE=1。 EX0=1。}void InitInt0(void){ EX0=1。 IT0=0。 EA=1。}//接收端主程序include include include include //串口初始化void StartUART( void ){ //波特率9600 TMOD = 0x20。 SCON = 0x50。 TH1 = 0xFD。 TL1 = TH1。 PCON = 0x00。 TR1 = 1。}//通過串口將接收到數(shù)據(jù)發(fā)送給PC端void R_S_Byte(uchar R_Byte){ SBUF = R_Byte。 while( TI == 0 )。 //查詢法 TI = 0。 }void main(void){ unsigned char i=0。 char j=0。 unsigned char RxBuf[RX_PLOAD_WIDTH]。 unsigned char menu_data[100]。 unsigned char send_data[100]。 unsigned char test[]=RECEIVE TEST!。 init_NRF24L01()。 StartUART()。 while(test[i]!=39。\039。) R_S_Byte(test[i++])。 i=0。 j=0。 while(1) { SetRX_Mode()。 if(nRF24L01_RxPacket(RxBuf)) { menu_data[j]=RxBuf[0]。 //R_S_Byte(RxBuf[0])。 if(menu_data[j]==39。c39。) { menu_data[j]=39。\039。 i=0。 j=0。 while(menu_data[j]!=39。\039。) { //R_S_Byte(menu_data[j])。 if(menu_dat
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1