77范文网 - 专业文章范例文档资料分享平台

AAA基于单片机的指纹识别电子密码锁的毕业设计初稿 - 图文(7)

来源:网络收集 时间:2019-05-18 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

附录1:串口调试子程序

串口调试子程序

#include #include //通信协议定义

unsigned char FP_Pack_Head[6] = {0xEF,0x01,0xFF,0xFF,0xFF,0xFF}; //协议包头

unsigned char FP_Get_Img[6] = {0x01,0x00,0x03,0x01,0x0,0x05}; //获得指纹图像

unsigned char a[6] ={}; unsigned char b[6] ={}; //初始化 UART 子程序 void UART_Init(void) {

UCSRB = 0x00; //disable while setting baud rate UCSRA = 0x00; //Bit1为1则倍速发送 UCSRC = 0x06;

UBRRL = 0x07; //波特率:57600 Bps UBRRH = 0x00; //误差率:0.000% UCSRB = 0x18; }

//发送一个位

void UART_Send_Byte(unsigned char ucData) {

while(!(UCSRA&(1<

unsigned char UART_Receive_Byte(void) {

29

while(!(UCSRA & ( 1<

return UDR; }

//_获得指纹图像命令 void Cmd_Get_Img(void) {

unsigned char i; for(i=0;i<6;i++)

UART_Send_Byte(FP_Pack_Head[i]); for(i=0;i<6;i++)

UART_Send_Byte(FP_Get_Img[i]); for(i=0;i<6;i++) //发送包头 a[i] =UART_Receive_Byte(); for(i=0;i<6;i++) //发送命令 0x1d b[i] = UART_Receive_Byte(); for(i=0;i<6;i++) UART_Send_Byte(a[i]); for(i=0;i<6;i++) UART_Send_Byte(b[i]); } int main() {

UART_Init(); Cmd_Get_Img(); }

30

附录2:整体源程序

整体源程序 #include #include

//#include #define uchar unsigned char #define uint unsigned int #define key1 0x01 #define key2 0x02 #define key3 0x04 #define key4 0x08 static uchar k=0;

uchar name00[]={\ %uchar name01[]={\ 欢迎使用 %uchar name02[]={\单片机指纹密码锁%uchar name03[]={\ %uchar name04[]={\ 指纹采集开始 %uchar name05[]={\ 指纹对比开始 %uchar name06[]={\ 指纹存储开始 %uchar name07[]={\ 一次采集 %uchar name08[]={\ 二次采集 %uchar name09[]={\ 录入成功 %uchar name10[]={\ 录入失败 %uchar name11[]={\ 收包有错 %uchar name12[]={\传感器上无手指 %uchar name13[]={\ 生成特征成功 %uchar name14[]={\图想乱生不成特征%uchar name15[]={\图象正常特征点少%uchar name16[]={\指纹模板合并成功%uchar name17[]={\指纹模板合并失败\

31

uchar name18[]={\ 非同一手指 %uchar name19[]={\ 存储成功 %uchar name20[]={\ 写指纹库出错 %uchar name21[]={\ 指纹匹配 %uchar name22[]={\ 指纹不匹配 %uchar name23[]={\ 密码正确 %uchar name24[]={\ 密码不正确 %uchar FP_1[6]={}; uchar FP_2[6]={};

uchar FP_Pack_Head[6]={0xEF,0x01,0xFF,0xFF,0xFF,0xFF}; //协议包头 uchar FP_Get_Img[6]={0x01,0x00,0x03,0x01,0x0,0x05}; //获得指纹图像 uchar FP_Search_0_9[11]={0x01,0x0,0x08,0x04,0x01,0x0,0x0,0x0,0x13,0x0,0x21}; //搜索0-9号指纹

uchar FP_Img_To_Buffer1[7]={0x01,0x0,0x04,0x02,0x01,0x0,0x08}; //将图像放入到BUFFER1

uchar FP_Img_To_Buffer2[7]={0x01,0x0,0x04,0x02,0x02,0x0,0x09}; //将图像放入到BUFFER2

uchar FP_Reg_Model[6]={0x01,0x0,0x03,0x05,0x0,0x09}; //将BUFFER1跟BUFFER2合成特征模版

volatile uchar

FP_Save_Finger1[9]={0x01,0x00,0x06,0x06,0x01,0x00,0x0B,0x00,0x19};//将BUFFER1中的特征码存放到指定的位置

volatile uchar

FP_Save_Finger2[9]={0x01,0x00,0x06,0x06,0x01,0x00,0x0C,0x00,0x1A};//将BUFFER1中的特征码存放到指定的位置

volatile uchar

FP_Save_Finger3[9]={0x01,0x00,0x06,0x06,0x01,0x00,0x0D,0x00,0x1B};//将BUFFER1中的特征码存放到指定的位置

uchar yb=0x80; //初始化 UART 子程序 void UART_Init(void) {

UCSRB = 0x00; //disable while setting baud rate UCSRA = 0x00; //Bit1为1则倍速发送

32

UCSRC = 0x06; //传送一桢数据位为8位 UBRRL = 0x07; //波特率:57600 Bps UBRRH = 0x00; //误差率:0.000% UCSRB = 0x18; }

//发送八位数据

void UART_Send_Byte( uchar ucData) {

while(!(UCSRA&(1<

//接收八位数据

uchar UART_Receive_Byte(void) {

while(!(UCSRA&(1<

//_获得指纹图像命令 void Cmd_Get_Img(void) {

uchar i,j;

for(i=0;i<6;i++) //发送包头与模块地址 UART_Send_Byte(FP_Pack_Head[i]); for(i=0;i<6;i++) //发送命令 0x1d UART_Send_Byte(FP_Get_Img[i]); for(i=0;i<6;i++)

FP_1[i]=UART_Receive_Byte();

for(i=0;i<6;i++)

FP_2[i]=UART_Receive_Byte(); j=FP_2[3];

33

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库AAA基于单片机的指纹识别电子密码锁的毕业设计初稿 - 图文(7)在线全文阅读。

AAA基于单片机的指纹识别电子密码锁的毕业设计初稿 - 图文(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/630460.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: