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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10043|回復(fù): 10
打印 上一主題 下一主題
收起左側(cè)

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

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


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

  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)時鐘設(shè)置
  63.         delay_init(72);                  //延時初始化
  64.         uart_init(72,9600); //串口1初始化  
  65.         Timerx_Init(5000,7200-1);//定時器3初始化,定時500ms(在定時器中斷服務(wù)程序中,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è)置時間,只需設(shè)置一次就要屏蔽此函數(shù)
  73.         DS18B20_Init();                        //數(shù)字溫度傳感器DS18B20初始化
  74.         InitAlldata();                        //初始化所有讀卡相關(guān)數(shù)據(jù)的設(shè)置

  75.         
  76.         //AT24C02初始化(0-255個u8類型(8位二進(jìn)制數(shù))的數(shù)據(jù))
  77.         //因為觸摸屏要保存校準(zhǔn)參數(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. //         //觸摸屏屏幕校準(zhǔn)
  131. //         LCD_Clear(WHITE);//清屏
  132. //         Touch_Adjust();  //屏幕校準(zhǔn)
  133. //         Save_Adjdata();         
  134.                
  135.         
  136.         
  137.         //RC522射頻卡模塊初始化,必須放在操作界面之后初始化才能正常讀卡
  138.         InitRc522();        

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









復(fù)制代碼




部分操作界面圖:







































功能演示視頻:





功能解析:

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

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

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

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


原子的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ù)

使用道具 舉報

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

解決了嗎,我也白屏,應(yīng)該是沒有哪幾個文件夾
回復(fù)

使用道具 舉報

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

使用道具 舉報

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

試了一下,確實是白屏。
回復(fù)

使用道具 舉報

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

使用道具 舉報

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

使用道具 舉報

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

使用道具 舉報

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

使用道具 舉報

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

使用道具 舉報

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

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表