董苗苗,朱雅娴,蔡继暐
(东南大学成贤学院,江苏南京,210088)
单片机最小系统为单片机STM32F103C8T6,是一款基于ARM内核STM32系列的32位的微控制器,程序存储器容量是64KB,需要电压2V~3.6V,一系列的省电模式保证低功耗的要求。
指纹模块是一款高性能的光学指纹识别模块。其中包含了串口、USB通讯接口等模块,对于复杂的图像处理及指纹识别算法,用户只需要通过简易的串口、USB并按照其通讯协议便可控制模块,不需要研究复杂的内容。本模块中的指纹识别算法能够高效率的采集并识别指纹。模块需要3.3V电压供电,额定电流为40mA,彼特率为9600*N。
采用的时安信可A9G模块,工作电压大约在3.9-4.2v左右,低功耗芯片工作电流在3mA左右。它是GPS定位和发送定位的双重模块。本模块可以24小时稳定在线,保证随时随地联网,完全不受时间、地理位置等外在条件的影响,同时提供GPS定位和基站定位。在非常短的时间内实现联网定位,目前为止我们可以利用模块进行准确定位,并且可以向手机发送准确的经纬度。实现防丢失功能和寻找功能。
在光敏模块工作时,外部光照产生的载流粒子导电,在外加电场作用下做漂移运动,即电子移动到电源正极,空穴移动到电源负极,最后使得光敏电阻的阻值迅速降低。通过设定光强转换为数字信号的数值准确的设定来进行对外部设备的控制。主要采用了光敏模块和光敏电阻,电压为3.3v采用电流为10mA左右。
液晶即为各种液晶显示器的统称。其体积小、能耗低、实际操作简单,但是液晶也有一个明显的弱点,通用型液晶的正常工作温度在0°C~+55°C,可以看出其正常使用温度范围很窄,因此在设计、生产液晶相应的产品时,务必考虑各种因素,选取合适的液晶,保证产品的实用性、安全性。
在本实验中的电路板中,单片机是控制器,其被嵌入到系统中。本实验的应用程序的开发主要有GPS模块应用、光敏模块应用、指纹识别模块的应用程序开发和对12864液晶、按键程序开发四大部分。本实验设计中,使用Keil单片机软件开发环境对单片机进行编程,该编译器支持模块化程序设计,因此可以先将源程序分为几个模块,分开编写,最后通过编译器生成一个最终文件。单片机开发环境可以进行程序的软件仿真调试,可以方便快捷地编写和调试程序,通过调试的代码文件可以通过开发板下载到单片机。在上电后,单片机上的主程序完成相应的初始化工作。依据要求,单片机主程序必须对液晶初始化,并且同时对按键进行检测,若由对应的按键按下,执行相应的操作,由串行接口对指纹模块的内容进行读写。
对于已录入指纹环节先按下指纹生成特征指纹,然后再次录入指纹,若此次录入指纹与第一次录入指纹特征相同,则在指纹库中记录下指纹。如果不同这返回第一次录入指纹,利用循环语句将指纹录入,在录入的同时判断指纹库的容量是否超出库容量,如果5次录入失败则自动退出录入程序。刷指纹环节先将手指按下生成指纹,然后与指纹库中的指纹对比,如成功则对IO口返回值为“1”使输出为高电平控制锁开,并显示得分。如与指纹库中的指纹不匹配则这使返回值为“0”输出低电平则不能出发电磁锁开。
图1 指纹识别
通过GPS模块与单片机连接,通过GPS卫星对单片机进行定位,并且AT指令固件集成了机智云接入协议,使用简单的几条命令就可以快速接入机智云,从而在非常短的时间内实现联网定位,定位后向手机发送经纬度信息对物体进行准确定位。
图2 GPS模块定位
对于光线设定一个固定的阈值当模块在环境光线亮度达不到设定阈值时,输出端输出高电平,当外界环境光线亮度高过设定阈值时,输出端输出低电平。对于光线的检测通过程序来控制。
图3 光敏模块原理
将写好的指纹模块程序导入单片机,通过单片机的USB接口与上位机相连,将指纹模块按程序定义I/O口相连,可以在上位机上录入指纹,删除指纹,进行指纹对比识别,如果识别成功将会显示与指纹库识别相同并且显示对比时间为多少,如果没有识别成功则显示该指纹不存在。
将写好的指纹模块程序导入单片机,通过单片机的USB接口与上位机相连,将GPS模块按程序定义I/O口相连,将开关打开,就会进行卫星GPS定位,并且在上位机上显示准确的经纬度,通过地图可以准确定位位置。
将光敏模块与单片机相连,并且在上位机上可以看见准确的数值,当将光敏电阻遮起来则在上位机上的数值就会明显的变化,可以通过数值的值来控制外部设备。
导入12864液晶的测试程序,上电后,通过调节液晶屏背面的电位器调节12864的对比度,在调试液晶时要注意:屏幕上显示小方格。其产生原因:运行程序中,应该是部分初始化指令没有正常接收命令,致使液晶初始化不正常。解决方法:按照标准的初始化步骤调整程序,或者调整命令指令之间的延时。
本文主要介绍了基于单片机的指纹识别系统的设计,使用的单片机为STM32F103C8T6,指纹模块来实现指纹识别,并且利用液晶来显示,辅助的硬件有按键可以准确的发送录入及识别信号,文中主要介绍了指纹识别、GPS、光敏模块的工作原理,并根据工作原理设计了基于单片机的整体系统的各部分硬件电路,程序部分采用Keil软件进行编程,从而实现整个系统的功能。本设计可以完成指纹的录入、指纹的删除、GPS的定位和光的控制,并且以上功能可以应用在许多不同领域以上即为本设计的主要内容还有很多东西待开发,为了是人们生活便利,本设计还需要创新更多实用功能。