欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: NRF2401無(wú)線點(diǎn)菜系統(tǒng) 單片機(jī)源碼和電路圖 [打印本頁(yè)]

作者: 799224707    時(shí)間: 2016-4-9 21:56
標(biāo)題: NRF2401無(wú)線點(diǎn)菜系統(tǒng) 單片機(jī)源碼和電路圖
無(wú)線點(diǎn)菜系統(tǒng)基于NRF2401無(wú)線芯片和51單片機(jī)

所有源代碼和電路圖下載: 無(wú)線點(diǎn)菜系統(tǒng).zip (235.54 KB, 下載次數(shù): 216)

部分源碼預(yù)覽:
  1. #include<stdio.h>
  2. #include"delay.h"
  3. #include"NRF2401.H"

  4. sbit RS = P2^4;
  5. sbit RW = P2^5;
  6. sbit E  = P2^6;
  7. sbit RES = P2^3;
  8. sbit PSB = P2^1;
  9. sbit PAUSE = P3^0;

  10. #define DataPort P0

  11. unsigned char *num[10]={"0","1","2","3","4","5","6","7","8","9"};
  12. unsigned char i=1;                  
  13. unsigned char temp[8];
  14. unsigned char tf =0;
  15. unsigned char RxBuf[20]={0};       

  16. /*------------------------------------------------
  17.                     檢測(cè)忙位
  18. ------------------------------------------------*/
  19. void Check_Busy()
  20. {  
  21.     RS=0;
  22.     RW=1;
  23.     E=1;
  24.     DataPort=0xff;
  25.     while((DataPort&0x80)==0x80);//忙則等待
  26.     E=0;
  27. }
  28. /*------------------------------------------------
  29.                    寫(xiě)命令
  30. ------------------------------------------------*/
  31. void Write_Cmd(unsigned char Cmd)
  32. {
  33.         Check_Busy();
  34.         RS=0;
  35.         RW=0;
  36.         E=1;
  37.         DataPort=Cmd;
  38.         DelayUs2x(5);
  39.         E=0;
  40.         DelayUs2x(5);
  41. }
  42. /*------------------------------------------------
  43.                     寫(xiě)數(shù)據(jù)
  44. ------------------------------------------------*/
  45. void Write_Data(unsigned char Data)
  46. {
  47.         Check_Busy();
  48.         RS=1;
  49.         RW=0;
  50.         E=1;
  51.         DataPort=Data;
  52.         DelayUs2x(5);
  53.         E=0;
  54.         DelayUs2x(5);
  55. }
  56. /*------------------------------------------------
  57.                    液晶屏初始化
  58. ------------------------------------------------*/
  59. void Init_ST7920()
  60. {  
  61.    DelayMs(40);           //大于40MS的延時(shí)程序
  62.    PSB=1;                 //設(shè)置為8BIT并口工作模式
  63.    DelayMs(1);            //延時(shí)
  64.    RES=0;                 //復(fù)位
  65.    DelayMs(1);            //延時(shí)
  66.    RES=1;                 //復(fù)位置高
  67.    DelayMs(10);
  68.    Write_Cmd(0x30);       //選擇基本指令集
  69.    DelayUs2x(50);         //延時(shí)大于100us
  70.    Write_Cmd(0x30);       //選擇8bit數(shù)據(jù)流
  71.    DelayUs2x(20);         //延時(shí)大于37us
  72.    Write_Cmd(0x0c);       //開(kāi)顯示(無(wú)游標(biāo)、不反白)
  73.    DelayUs2x(50);         //延時(shí)大于100us
  74.    Write_Cmd(0x01);       //清除顯示,并且設(shè)定地址指針為00H
  75.    DelayMs(15);           //延時(shí)大于10ms
  76.    Write_Cmd(0x06);       //指定在資料的讀取及寫(xiě)入時(shí),設(shè)定游標(biāo)的移動(dòng)方向及指定顯示的移位,光標(biāo)從右向左加1位移動(dòng)
  77.    DelayUs2x(50);         //延時(shí)大于100us
  78. }
  79. /*------------------------------------------------
  80.                    顯示字符串
  81. x:橫坐標(biāo)值,范圍0~8
  82. y:縱坐標(biāo)值,范圍1~4
  83. ------------------------------------------------*/
  84. void LCD_PutString(unsigned char x,unsigned char y,unsigned char code *s)
  85. {
  86. switch(y)
  87.      {
  88.           case 1: Write_Cmd(0x80+x);break;
  89.           case 2: Write_Cmd(0x90+x);break;
  90.           case 3: Write_Cmd(0x88+x);break;
  91.           case 4: Write_Cmd(0x98+x);break;
  92.       default:break;
  93.          }
  94. while(*s>0)
  95.    {
  96.       Write_Data(*s);
  97.       s++;
  98.       DelayUs2x(50);
  99.    }
  100. }
  101. /*------------------------------------------------
  102.                    顯示菜名
  103. ------------------------------------------------*/
  104. void Dispaly(void)
  105. {
  106.         switch(RxBuf[1])
  107.          {
  108.                   case 1:LCD_PutString(0,i," 01.魚(yú)香肉絲     ");
  109.                          LCD_PutString(7,i,num[RxBuf[2]]);
  110.                                  break;
  111.                   case 2:LCD_PutString(0,i," 02.宮保雞丁     ");
  112.                          LCD_PutString(7,i,num[RxBuf[2]]);
  113.                                  break;
  114.                   case 3:LCD_PutString(0,i," 03.麻婆豆腐     ");
  115.                          LCD_PutString(7,i,num[RxBuf[2]]);
  116.                                  break;
  117.                   case 4:LCD_PutString(0,i," 04.紅燒鯉魚(yú)     ");
  118.                          LCD_PutString(7,i,num[RxBuf[2]]);
  119.                                  break;
  120.                   case 5:LCD_PutString(0,i," 05.老醋花生     ");
  121.                          LCD_PutString(7,i,num[RxBuf[2]]);
  122.                                  break;
  123.                   case 6:LCD_PutString(0,i," 06.炒茼蒿       ");
  124.                          LCD_PutString(7,i,num[RxBuf[2]]);
  125.                                  break;
  126.                   case 7:LCD_PutString(0,i," 07.醬脊骨       ");
  127.                          LCD_PutString(7,i,num[RxBuf[2]]);
  128.                                  break;
  129.                   case 8:LCD_PutString(0,i," 08.拌蕨粉       ");
  130.                          LCD_PutString(7,i,num[RxBuf[2]]);
  131.                                  break;
  132.                   case 9:LCD_PutString(0,i," 09.爆炒腰花     ");
  133.                          LCD_PutString(7,i,num[RxBuf[2]]);
  134.                                  break;
  135.                   case 10:LCD_PutString(0,i," 10.燉牛肉      ");
  136.                          LCD_PutString(7,i,num[RxBuf[2]]);
  137.                                  break;
  138.                   case 11:LCD_PutString(0,i," 11.蒜苗炒肉    ");
  139.                          LCD_PutString(7,i,num[RxBuf[2]]);
  140.                                  break;
  141.                   case 12:LCD_PutString(0,i," 12.蔥爆羊肉    ");
  142.                          LCD_PutString(7,i,num[RxBuf[2]]);
  143.                                  break;
  144.                   case 13:LCD_PutString(0,i," 13.蔥爆牛肉    ");
  145.                          LCD_PutString(7,i,num[RxBuf[2]]);
  146.                                  break;
  147.                   case 14:LCD_PutString(0,i," 14.孜然羊肉    ");
  148.                          LCD_PutString(7,i,num[RxBuf[2]]);
  149.                                  break;
  150.                   case 15:LCD_PutString(0,i," 15.孜然牛肉    ");
  151.                          LCD_PutString(7,i,num[RxBuf[2]]);
  152.                                  break;
  153.                   case 16:LCD_PutString(0,i," 16.干煸豆角    ");
  154.                          LCD_PutString(7,i,num[RxBuf[2]]);
  155.                                  break;
  156.                   case 17:LCD_PutString(0,i," 17.干煸兩樣    ");
  157.                          LCD_PutString(7,i,num[RxBuf[2]]);
  158.                                  break;
  159.                   case 18:LCD_PutString(0,i," 18.紅燒雞翅    ");
  160.                          LCD_PutString(7,i,num[RxBuf[2]]);
  161.                                  break;
  162.                   case 19:LCD_PutString(0,i," 19.疙瘩湯      ");
  163.                          LCD_PutString(7,i,num[RxBuf[2]]);
  164.                                  break;
  165.                   case 20:LCD_PutString(0,i," 20.溜肥腸      ");
  166.                          LCD_PutString(7,i,num[RxBuf[2]]);
  167.                                  break;
  168.                   case 21:LCD_PutString(0,i," 21.水煮肉片    ");
  169.                          LCD_PutString(7,i,num[RxBuf[2]]);
  170.                                  break;
  171.                   case 22:LCD_PutString(0,i," 22.水煮魚(yú)      ");
  172.                          LCD_PutString(7,i,num[RxBuf[2]]);
  173.                                  break;
  174.                   case 23:LCD_PutString(0,i," 23.醋溜白菜    ");
  175.                          LCD_PutString(7,i,num[RxBuf[2]]);
  176.                                  break;
  177.                   case 24:LCD_PutString(0,i," 24.角瓜炒肉    ");
  178.                          LCD_PutString(7,i,num[RxBuf[2]]);
  179.                                  break;
  180.                   case 25:LCD_PutString(0,i," 25.五香牛肉    ");
  181.                          LCD_PutString(7,i,num[RxBuf[2]]);
  182.                                  break;
  183.                   case 26:LCD_PutString(0,i," 26.鹽水大蝦    ");
  184.                          LCD_PutString(7,i,num[RxBuf[2]]);
  185.                                  break;
  186.                   case 27:LCD_PutString(0,i," 27.白菜豆腐    ");
  187.                          LCD_PutString(7,i,num[RxBuf[2]]);
  188.                                  break;
  189.                   case 28:LCD_PutString(0,i," 28.韭菜雞蛋    ");
  190.                          LCD_PutString(7,i,num[RxBuf[2]]);
  191.                                  break;
  192.                   case 29:LCD_PutString(0,i," 29.蒜臺(tái)炒肉    ");
  193.                          LCD_PutString(7,i,num[RxBuf[2]]);
  194.                                  break;
  195.                   case 30:LCD_PutString(0,i," 30.紅燒排骨    ");
  196.                           LCD_PutString(7,i,num[RxBuf[2]]);
  197.                                  break;
  198.                   default:break;
  199.           }


  200. }
  201. /*------------------------------------------------
  202.                       清屏
  203. ------------------------------------------------*/
  204. void ClrScreen()
  205. {
  206.    Write_Cmd(0x01);
  207.    DelayMs(15);
  208. }
  209. /*------------------------------------------------
  210.                     主程序
  211. ------------------------------------------------*/
  212. void main()
  213. {
  214.        
  215.         init_NRF24L01();
  216.         Init_ST7920();
  217.         DelayMs(500);
  218.         LCD_PutString(0,1," -無(wú)線點(diǎn)菜系統(tǒng)- ");
  219.         while(1)         
  220.              {
  221.                   SetRX_Mode();
  222.                   nRF24L01_RxPacket(RxBuf);
  223.               if(RxBuf[0]==0XAA)
  224.                         {       
  225.                                 if(i==5)
  226.                                 {
  227.                                    i=1;                                                          
  228.                                 }
  229.                                  Dispaly();
  230.                                  RxBuf[0] = 0x00;
  231.                                  RxBuf[1] = 0x00;
  232.                              RxBuf[2] = 0x00;
  233.                                  i++;                               
  234.                         }                
  235.               }
  236. }

復(fù)制代碼



作者: 寧ning    時(shí)間: 2017-2-23 11:17
學(xué)習(xí)了,謝謝
作者: dsdsda    時(shí)間: 2017-3-7 20:28
學(xué)習(xí)了 謝謝謝謝
作者: 劉三    時(shí)間: 2017-3-23 18:55
誰(shuí)能給我發(fā)一下資料 大神們    郵箱 783482920@qq.com     大神們?nèi)f分感激
作者: 劉三跟    時(shí)間: 2017-3-23 20:09
求資料

作者: cjjcjj1    時(shí)間: 2017-3-24 12:37
提示: 作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽
作者: 940520    時(shí)間: 2018-7-9 22:27
51的單片機(jī),,,
作者: ykk521666    時(shí)間: 2018-7-11 22:29
謝謝。。。。。。。。
作者: yywd4    時(shí)間: 2018-8-8 21:18
這個(gè)可以用于實(shí)際么?

作者: 莫德?tīng)?nbsp;   時(shí)間: 2018-8-22 17:11
你這個(gè)調(diào)通了嗎
作者: Rorschach    時(shí)間: 2019-3-3 19:50
剛好需要

作者: ben0147    時(shí)間: 2019-4-5 10:26
好謝謝分享!!!!!!!
作者: supper戰(zhàn)    時(shí)間: 2019-4-25 10:31
不錯(cuò)不錯(cuò),終于找到了
作者: jemery1030    時(shí)間: 2019-7-22 22:19
好的作品人人愛(ài)  
作者: szzxl10    時(shí)間: 2019-10-28 13:00
好謝謝分享!!!!!!!
作者: zytzytzytzyt    時(shí)間: 2019-10-28 14:42
謝謝樓主分享
作者: ▓逍〓遙◆    時(shí)間: 2019-10-30 00:25
這個(gè)好,可以學(xué)習(xí)一下2.4G,
作者: 799448484    時(shí)間: 2019-12-10 20:22
插眼 謝謝啦




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1