|
無線模塊:SIM900A
顯示模塊:2.8寸串口屏
指紋模塊:AS608
單片機(jī):stm32103zet6,stc89c51
驅(qū)動(dòng)模塊:5線4相步進(jìn)電機(jī)
單片機(jī)源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "lcd.h"
- #include "key.h"
- #include "beep.h"
- #include "touch.h"
- #include "malloc.h"
- #include "usmart.h"
- #include "sdio_sdcard.h"
- #include "w25qxx.h"
- #include "ff.h"
- #include "exfuns.h"
- #include "fontupd.h"
- #include "text.h"
- #include "usart2.h"
- #include "AS608.h"
- #include "timer.h"
- #define usart2_baund 9600//57600//串口2波特率,根據(jù)指紋模塊波特率更改
- SysPara AS608Para;//指紋模塊AS608參數(shù)
- u16 ValidN;//模塊內(nèi)有效指紋個(gè)數(shù)
- u8** kbd_tbl;
- extern u8 USART_RX_BUF[USART_REC_LEN];
- u8 touch_ok=0;
- void press_FR(void);//刷指紋
- u16 GET_NUM(void);//獲取數(shù)值
- int main(void)
- {
- u8 ensure;
- char *str;
- //u8 touch_ok_temp;
- unsigned int mess_code;
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
- delay_init(); //初始化延時(shí)函數(shù)
- uart_init(115200); //初始化串口1波特率為115200,用于支持USMART
- usart2_init(usart2_baund);//初始化串口2,用于與指紋模塊通訊
- PS_StaGPIO_Init(); //初始化FR讀狀態(tài)引腳
- IO_Init(); //初始化蜂鳴器
- W25QXX_Init(); //初始化W25Q128
- usmart_dev.init(72); //初始化USMART
- my_mem_init(SRAMIN); //初始化內(nèi)部?jī)?nèi)存池
- exfuns_init(); //為fatfs相關(guān)變量申請(qǐng)內(nèi)存
- f_mount(fs[1],"1:",1); //掛載FLASH.
- POINT_COLOR=RED;
- while(PS_HandShake(&AS608Addr));//與AS608模塊握手
- str=mymalloc(SRAMIN,30);
- ensure=PS_ValidTempleteNum(&ValidN);//讀庫指紋個(gè)數(shù)
- if(ensure!=0x00)
- {
- }
- ensure=PS_ReadSysPara(&AS608Para); //讀參數(shù)
- if(ensure==0x00)
- {
- mymemset(str,0,50);
- }
- myfree(SRAMIN,str);
- while(1)
- {
-
- if(PS_Sta) //檢測(cè)PS_Sta狀態(tài),如果有手指按下
- {
- press_FR();//刷指紋
- }
- if (touch_ok) //刷指紋成功
- {
-
- mess_code= USART_RX_BUF[0]*1000+USART_RX_BUF[1]*100+USART_RX_BUF[2]*10+USART_RX_BUF[3];
- if(mess_code==1234)
- {
- LED=0;
- }
- else
- LED =1;
-
- }
- }
- }
- //刷指紋
- void press_FR(void)
- {
- SearchResult seach;
- u8 ensure;
- char *str;
- ensure=PS_GetImage();
- if(ensure==0x00)//獲取圖像成功
- {
- //BEEP=1;//打開蜂鳴器
- ensure=PS_GenChar(CharBuffer1);
- if(ensure==0x00) //生成特征成功
- {
- //BEEP=0;//關(guān)閉蜂鳴器
- ensure=PS_HighSpeedSearch(CharBuffer1,0,AS608Para.PS_max,&seach);
- if(ensure==0x00)//搜索成功
- {
- str=mymalloc(SRAMIN,50);
- myfree(SRAMIN,str);
- touch_ok=1; //
- LED =1;
- }
- }
- touch_ok=0;
- //BEEP=0;//關(guān)閉蜂鳴器
- delay_ms(600);
- }
-
- }
復(fù)制代碼
所有資料51hei提供下載:
as608源碼.rar
(1.62 MB, 下載次數(shù): 169)
2018-8-17 19:30 上傳
點(diǎn)擊文件名下載附件
stm32部分 下載積分: 黑幣 -5
send a chinese message.zip
(44.86 KB, 下載次數(shù): 105)
2018-8-17 11:14 上傳
點(diǎn)擊文件名下載附件
51部分 下載積分: 黑幣 -5
串口屏.zip
(3.58 MB, 下載次數(shù): 176)
2018-8-17 11:14 上傳
點(diǎn)擊文件名下載附件
串口屏部分 下載積分: 黑幣 -5
|
|