⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 指纹通讯模块程序
💻 C
字号:

#include "variable.h"

#define  PageID    0x00

bit  PacketValue ;         // 0 没有带参数的包  1 带参数的包
unsigned char PacketID   ;   //包标识
unsigned char PacketData ;   //包内容
bit  revSuccess ;            // 0 没接收成功  1 接收成功
unsigned char PacketMessage[10]; // 指向数据包内容参数的指针 // 因为参数的长度是不定的所以用指针而不能用数组
unsigned char MessageLength ; //参数的长度

bit SendOver;

unsigned char GenImg[]={0x03,0x01};                             //录入手指
unsigned char Img2TzBuffer1[]={0x04,0x02,0x01};                 //生成指纹原始图象特征数据 存入CharBuffer1
unsigned char Img2TzBuffer2[]={0x04,0x02,0x02};                 //生成指纹原始图象特征数据 存入CharBuffer2
unsigned char RegModel[]={0x03,0x05};                           //将 CharBuffer1 和  CharBuffer2 中的特征文件生成模版文件并存于其中
unsigned char StoreMode[]={0x06,0x06,0x01,0x00,0x00 };          //将模版存在FLASH中 PageID=0x00

unsigned char Search[]={0x08,0x04,0x01,0x00,0x00,PageID,0x10} ; //搜琐指纹库中的模版

extern void initial(void) ;
extern void SendFunction(unsigned char *p);
extern void revFunction(void);
extern void delay(int n);
extern void MatchFinger(void);

bit recall_cpu;
bit scanstop=0;  //终止扫描标志位

unsigned char FingerNum=0;

main()
{
 initial();
     recall_cpu=0;
     EA=1;
     UpKey4=0;
     PCON|=0x01;    //单片机休眠

     while(1)
     {

      if(recall_cpu==1)
      {
         scanstop=0;      //不终止
         MatchFinger();    //进行指纹对比
         recall_cpu=0;
         UpKey4=0;
         PCON|=0x01;      //单片机休眠
      }
}   }

void recall (void) interrupt 0 using 1
{
      scanstop=1;       //终止扫描
      recall_cpu=0;
      UpKey4=0;
      delay(10);
      UpKey4=1;          //给模块上电
      delay(10);         // 等待模块完成初始化 1s 的等待时间
      recall_cpu=1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -