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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32 RFID開源設計的充值消費一體機 白屏?

  [復制鏈接]
跳轉到指定樓層
樓主
ID:113472 發(fā)表于 2016-4-13 03:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
先簡單的介紹下程序功能:
本實驗將實現(xiàn)如下功能:開機的時候先檢測W25X16中是否已經存在字庫,如果存在,則按次序顯示漢字。如果沒有,則檢測SD卡和文件系統(tǒng),并查找SYSTEM文件夾下的FONT文件夾,在該文件夾內查找UNI2GBK.SYS和GBK16.FON(這兩個文件是由我們自己生成的UNICODE轉GBK碼表文件和GBK字庫(16*16)文件)。在檢測到這些文件之后,就開始更新字庫,更新完畢才開始顯示漢字。同樣我們也是用LED0來指示程序正在運行。同時,可以按KEY0來強制更新字庫.


注意:
1,本實驗可以SWD下載仿真.但是下載完了,請拔掉JLINK.
2,不要把1820和PA0的跳線帽跳上,否則可能導致按鍵"不靈".

  1. // #include <stm32f10x_lib.h>
  2. #include <stm32f10x_map.h>
  3. #include <stm32f10x_nvic.h>

  4. #include "sys.h"
  5. #include "usart.h"               
  6. #include "delay.h"        
  7. #include "led.h"
  8. #include "key.h"
  9. #include "exti.h"
  10. #include "wdg.h"
  11. #include "timer.h"
  12. #include "lcd.h"           
  13. #include "rtc.h"
  14. #include "wkup.h"
  15. #include "adc.h"
  16. #include "dma.h"
  17. #include "24cxx.h"
  18. #include "flash.h"
  19. #include "touch.h"
  20. #include "24l01.h"
  21. #include "mmc_sd.h"
  22. #include "remote.h"
  23. #include "ds18b20.h"
  24. #include "mouse.h"
  25. #include "text.h"
  26. #include "fat.h"
  27. #include "fontupd.h"


  28. //添加的頭文件
  29. #include "rc522.h"
  30. #include "rc522_add.h"
  31. #include "my_GUI.h"
  32. #include "my_GUI_TOUCH.h"


  33.                                  
  34. /*************************************
  35. *硬件連接說明:
  36. *RCC522 <----->MINISTM32
  37. *
  38. *1--SDA <----->PB0
  39. *2--SCK <----->PB13
  40. *3--MOSI<----->PB15
  41. *4--MISO<----->PB14
  42. *5--懸空
  43. *6--GND <----->GND
  44. *7--RST <----->PB1
  45. *8--3.3V<----->3.3V
  46. *
  47. *DS18B20與MINISTM32開發(fā)板的PA0要連接上
  48. **************************************/




  49. // const u8 TEXT_Buffer[]={0};
  50. // #define SIZE sizeof(TEXT_Buffer)   



  51. /****************************
  52.            main()
  53. ****************************/
  54. int main(void)
  55. {               
  56.         u8 i;
  57. //         u8 timer=0;

  58.         
  59.   /*************
  60.                 各種初始化
  61.         *************/
  62.   Stm32_Clock_Init(9);//系統(tǒng)時鐘設置
  63.         delay_init(72);                  //延時初始化
  64.         uart_init(72,9600); //串口1初始化  
  65.         Timerx_Init(5000,7200-1);//定時器3初始化,定時500ms(在定時器中斷服務程序中,LED1閃爍指示程序正在運行)
  66.         LED_Init();         //LED初始化
  67.         AT24CXX_Init();     //IIC初始化(存儲:姓名、性別、卡號、余額)        
  68.         SPI_Flash_Init();          //SPI FLASH初始化(中文字庫)                                 
  69.         LCD_Init();                //LCD初始化
  70.         Touch_Init();              //觸摸初始化(這里初始化了,在后面的觸摸函數(shù)里面就不要初始化了,屏幕的切換顯示會有沖突的)
  71.         RTC_Init();                                        //實時時鐘初始化
  72. //         RTC_Set(2014,4,10,12,2,30);//設置時間,只需設置一次就要屏蔽此函數(shù)
  73.         DS18B20_Init();                        //數(shù)字溫度傳感器DS18B20初始化
  74.         InitAlldata();                        //初始化所有讀卡相關數(shù)據(jù)的設置

  75.         
  76.         //AT24C02初始化(0-255個u8類型(8位二進制數(shù))的數(shù)據(jù))
  77.         //因為觸摸屏要保存校準參數(shù),占用13個字節(jié),所以可用的就剩下243個字節(jié)了,最多可以存20張卡的卡號和密碼
  78.         //(每張卡需11個字節(jié):卡號4個字節(jié),卡的狀態(tài)1個字節(jié),密碼6個字節(jié))                                
  79.         while(AT24CXX_Check())//檢測不到AT24C02
  80.         {
  81.                 LCD_ShowString(60,130,"24C02 Check Failed!");
  82.                 delay_ms(500);
  83.                 LCD_ShowString(60,130,"Please Check!       ");
  84.                 delay_ms(500);
  85.                 LED0=!LED0;
  86.         }
  87.         
  88. //         //AT24C02清零
  89. //         for(timer=0;timer<240;timer++)
  90. //                 AT24CXX_Write(timer,(u8*)TEXT_Buffer,SIZE);        //寫0到地址timer
  91. //         while(1);
  92.         

  93.         
  94.         //W25X16初始化
  95.         //要執(zhí)行Font_Init();才能現(xiàn)顯示漢字
  96.         if(Font_Init())     //字庫不存在,則更新字庫
  97.         {        
  98.                 POINT_COLOR=RED;      
  99.                 LCD_Clear(WHITE);
  100.                 LCD_ShowString(60,50,"Mini STM32");        
  101.                 LCD_ShowString(60,70,"Font Updating...");                  
  102.                 //字體更新
  103.                 SD_Initialize();                        //初始化SD卡                                                
  104.                  while(FAT_Init())                        //FAT 錯誤
  105.                 {
  106.                         LCD_ShowString(60,90,"FAT SYS ERROR");  
  107.                         i= SD_Initialize();
  108.                         if(i)//SD卡初始化
  109.                         {                                                  
  110.                                 LCD_ShowString(60,110,"SD_CARD ERROR");
  111.                         }         
  112.                         delay_ms(500);
  113.                         LCD_Fill(60,90,240,126,WHITE);//清除顯示                          
  114.                         delay_ms(500);
  115.                         LED0=!LED0;           
  116.                 }         
  117.                 LCD_Fill(60,90,240,126,WHITE);//清除顯示                          
  118.                  while(Update_Font()!=0)//字體更新出錯
  119.                 {                                                  
  120.                         LCD_ShowString(60,90,"SYSTEM FILE LOST");                  
  121.                         delay_ms(500);   
  122.                         LCD_ShowString(60,90,"Please Check....");
  123.                         delay_ms(500);   
  124.                         LED0=!LED0;        
  125.                 };                        
  126.                 LCD_Clear(WHITE);
  127.         }  
  128.         
  129.         
  130. //         //觸摸屏屏幕校準
  131. //         LCD_Clear(WHITE);//清屏
  132. //         Touch_Adjust();  //屏幕校準
  133. //         Save_Adjdata();         
  134.                
  135.         
  136.         
  137.         //RC522射頻卡模塊初始化,必須放在操作界面之后初始化才能正常讀卡
  138.         InitRc522();        

  139.         while(1)
  140.         {
  141.                 TOUCH_GUI_DISP_MENU();
  142.         }
  143.         
  144. }









復制代碼




部分操作界面圖:







































功能演示視頻:





功能解析:

        (1)充值
        充值的前提是要管理員先刷卡才能進入充值界面,本設計的程序中設定藍色S50射頻卡為管理員身份(如需要可設定多張管理員身份的卡),若不是管理員刷卡則進入不了充值界面,此前提限制了消費者不能隨便進入充值模式,既方便了管理員對打卡機的管理,又增加了打卡機的安全性。進入了充值界面后,先由管理員輸入相應的充值金額,再到消費者刷卡即可成功充值并顯示充值后的余額。

        (2)消費
         進入消費界面后,管理員輸入相應的消費金額,然后消費者刷卡消費,系統(tǒng)先判斷此卡是否已解鎖,若是未解鎖(已掛失)則消費失敗返回菜單欄,若是已解鎖(已解掛)則進入余額判斷,若是余額足夠便能成功消費并顯示消費后的余額,若是余額不足則會消費失敗并顯示余額。

        (3)查詢
         查詢功能的作用是讓消費者查詢卡內的信息,包括:卡的身份、是否解鎖(掛失)、姓名、學會、卡號、卡內余額。消費者拿到卡后需要記住自己的卡號,因為若是自己的卡不慎丟失了需要輸入卡號和密碼才能掛失和解掛。

        (4)掛失/解掛
             消費者進入掛失/解掛界面,輸入卡號后按確定,再輸入6位密碼后按確定,接著選擇掛失或者解掛,若是掛失,輸入卡號和密碼正確即可成功掛失,否則掛失失敗;若是解掛,除了需要輸入卡號和密碼正確之外,還要再拿該卡刷卡進行卡號確認,就是說,消費者需要輸入和刷卡的卡號一致并且密碼正確才能解掛成功,否則解掛失敗。已掛失的卡是不能進行消費操作的。


原子的min板子 硬件連接:

/*************************************
*硬件連接說明:
*RC522 <----->MINISTM32
*
*1--SDA <----->B0
*2--SCK <----->B13
*3--MOSI<----->B15
*4--MISO<----->B14
*5--懸空
*6--GND <----->GND
*7--RST <----->B1
*8--3.3V<----->3.3V
*
*DS18B20與MINISTM32開發(fā)板的PA0要連接上
**************************************/

資料和程序:
MINISTM32 RFID程序.zip (233.28 KB, 下載次數(shù): 198)
TJDZ-RC522射頻卡用戶使用手冊資料Ver_1.0.7z (868.99 KB, 下載次數(shù): 86)

評分

參與人數(shù) 1黑幣 +5 收起 理由
Edwardlaughing + 5 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:170610 發(fā)表于 2017-3-14 14:43 | 只看該作者
不錯的資料
回復

使用道具 舉報

板凳
ID:280082 發(fā)表于 2018-1-26 21:11 | 只看該作者
不錯的資料!
回復

使用道具 舉報

地板
ID:79006 發(fā)表于 2018-12-14 10:52 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:413838 發(fā)表于 2019-2-26 19:15 | 只看該作者
嗯哼,英文的手冊
回復

使用道具 舉報

6#
ID:477334 發(fā)表于 2019-11-21 00:06 | 只看該作者
下載了之后是白屏啊
回復

使用道具 舉報

7#
ID:620993 發(fā)表于 2019-11-22 11:33 | 只看該作者
學習一下,謝謝貢獻
回復

使用道具 舉報

8#
ID:570357 發(fā)表于 2021-5-11 23:16 | 只看該作者
天銘 發(fā)表于 2019-11-21 00:06
下載了之后是白屏啊

試了一下,確實是白屏。
回復

使用道具 舉報

9#
ID:81196 發(fā)表于 2021-5-18 08:49 | 只看該作者
好項目,值得擁有
回復

使用道具 舉報

10#
ID:951660 發(fā)表于 2021-10-28 01:00 | 只看該作者
皮囊之下 發(fā)表于 2021-5-11 23:16
試了一下,確實是白屏。

解決了嗎,我也白屏,應該是沒有哪幾個文件夾
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人久久视频 | 日本人和亚洲人zjzjhd | 福利网站在线观看 | 亚州影院| 国产一二三区免费视频 | 中文字幕国产精品 | 羞羞的视频免费观看 | 色吧色综合 | 伊色综合久久之综合久久 | 日韩www视频 | 亚洲欧美精品 | 久草综合在线 | 亚洲国产精品成人无久久精品 | 96国产精品久久久久aⅴ四区 | 精品久久久久久久人人人人传媒 | 天天射天天干 | 欧美日韩国产一区二区三区不卡 | 欧美一级二级三级 | 羞羞视频免费观 | 免费a大片 | 亚洲成人久久久 | 国产在线1 | 91精品一区二区 | 国产免国产免费 | 日韩色在线 | 久久精品久久综合 | 欧美片网站免费 | 精品一区在线免费观看 | 黄色精品| 国内精品免费久久久久软件老师 | 中文字幕高清 | 中文字幕二区 | 国产高清一区 | 欧美激情综合 | 国产精品揄拍一区二区久久国内亚洲精 | 一级日批片 | 欧美一区二区小视频 | 亚洲精品在线91 | 一区二区三区四区在线视频 | 蜜桃色网| 国产在线精品一区二区 |