久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5246|回復: 0
打印 上一主題 下一主題
收起左側

STM32密碼鎖代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:261207 發表于 2017-12-13 19:41 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
STM32密碼鎖代碼

STM32單片機源程序:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"
  6. #include "lcd.h"
  7. #include "myiic.h"
  8. #include "24cxx.h"
  9. #include "password.h"
  10. #include "string.h"
  11. #include "OLED12864.h"
  12. unsigned char PSW_MAX_LEN =13 ;   //密碼最大長度
  13. unsigned char PSW_SAVE_ADDR = 96;  //EEPROM(即24C02器件)中的保存地址
  14. unsigned char  PswCnt = 0;///    //該變量用來記輸入密碼的個數;
  15. unsigned char  PswSet[13];   //已設定的密碼數據
  16. unsigned char  PswBuf1[13];  //密碼輸入緩沖區1
  17. unsigned char  PswBuf2[13];  //密碼輸入緩沖區2

  18. u8 status;//狀態字
  19. u8 Password_Buff[10];
  20. extern void KeyDriver(void);
  21. int ad0 = 65530,ad1 = 65532;

  22. int main(void)
  23. {
  24.         u8 t;
  25.         unsigned char buf[13];
  26.         Key_Init();//按鍵初始化必須放在定時器使能函數的前面;因為如果定時器使能之后,2ms就進入中斷進行按鍵刷新;在此之前,必須先進行按鍵初始化,
  27.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  28.         TIM3_Int_Init(19,7199);
  29.         TIM_Cmd(TIM3 ,ENABLE);
  30.         delay_init();
  31.         LED_Init();
  32.     uart_init(115200);       
  33.         LCD_Init();
  34.        
  35.         AT24CXX_Init();       
  36.        
  37.     OLED_Init();
  38.        
  39.         OLED_Fill(0XFF);
  40.         delay_ms(500);
  41.         OLED_Fill(0X00);
  42.         POINT_COLOR=RED;
  43.         AT24CXX_Read(PSW_SAVE_ADDR,buf,PSW_MAX_LEN +1);
  44.         CopyMemory(PswSet, buf, PSW_MAX_LEN);
  45.     LCD_ShowString(30,140,200,16,16,"please input password:         ");
  46.         status = 0;
  47.         FillMemory(PswBuf1, '\0', PSW_MAX_LEN);///
  48.     FillMemory(PswBuf2, '\0', PSW_MAX_LEN);///       

  49.         while(1)
  50.         {
  51.                 KeyDriver();
  52.                 if(USART_RX_STA&0x8000)
  53.            {       
  54.                 if(strcmp((char * )USART_RX_BUF,"lookpassword") == 0)
  55.                 {   
  56.                              // USART_RX_BUF[0] = 0;
  57.                           
  58.                AT24CXX_Read(PSW_SAVE_ADDR,Password_Buff,8);
  59.                             delay_ms(5);
  60.                                 printf("下位機密碼是\r\n");
  61.                                 for(t = 0; t<6;t++)
  62.                         {
  63.                                   USART_SendData(USART1,Password_Buff[t]);
  64.                               while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發送結束
  65.                                
  66.                         }
  67.                     printf("\r\n");//插入換行
  68.                 }
  69.                                 USART_RX_STA=0;
  70.                  
  71.                 }
  72.                
  73.            // OLED_Display_Number_8X16(0,0,ad0/10000);
  74.                 //OLED_Display_Number_8X16(0,8,ad0/1000%10);
  75.                 //OLED_Display_Number_8X16(0,16,ad0/100%10);
  76.                 //OLED_Display_Number_8X16(0,24,ad0/10%10);
  77.                 //OLED_Display_Number_8X16(0,32,ad0%10);
  78.                 // OLED_Display(0,8,16,16,);
  79.                 //OLED_Display(0,0,124,32,TXT);
  80.                 OLED_Display(0,0,112,16,TXT2);
  81.                 OLED_Display(16,0,112,16,TXT3);
  82.                 OLED_Display(32,0,112,16,TXT6);
  83.                 //OLED_Display(32,0,32,32,TXT7);                     
  84.                
  85.                 // OLED_Display(0,64,16,16,TXT2);
  86.                 //OLED_Display_Number_8X16(16,0,ad1/10000);
  87.                 //OLED_Display_Number_8X16(16,8,ad1/1000%10);
  88.                 //OLED_Display_Number_8X16(16,16,ad1/100%10);
  89.                 //OLED_Display_Number_8X16(16,24,ad1/10%10);
  90.                 //OLED_Display_Number_8X16(16,32,ad1%10);
  91.           
  92.         }
  93.         }

  94. /**/
復制代碼

所有資料51hei提供下載:
STM32矩陣按鍵代碼更新.rar (364.01 KB, 下載次數: 79)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品中文在线观看 | 国产精品视频久久久 | 91av视频 | 亚洲精品欧美一区二区三区 | 成人av一区 | 精品国产91 | 玖玖国产| 国产精品久久久久久久久久 | www久久久| 久在线 | 天天久久 | 久久久久久久久久久久91 | 91精品欧美久久久久久久 | 黄色男女网站 | 黄色毛片免费视频 | 久草网站 | 91色综合| 91精品国产日韩91久久久久久 | 精品区| 国产成人99久久亚洲综合精品 | 国产亚洲二区 | 亚洲区一 | 国产不卡一区 | 成人在线观看免费视频 | 亚洲精品一区二区在线观看 | 亚洲免费网 | 桃花av在线 | 夜夜草av| 国产欧美精品一区二区 | 亚洲精品片 | 国产精品久久久久久久久久久久 | 亚洲综合无码一区二区 | 国产亚洲网站 | 国产日产欧产精品精品推荐蛮挑 | 在线观看国产 | 亚洲永久精品国产 | 久久久毛片 | 久久精品国产一区 | 日本精品一区二区三区四区 | 久久激情视频 | 99久久99热这里只有精品 |