用arduino打造签到记录器——《无线电》2013.06-凯发k8官方首页

./t20130718_321604_taonews.html

《无线电》

开博时间:2016-07-01 14:43:00

1955年创刊,是国内电子科普领域创刊最早、发行量最大的知名杂志,累计发行量超过3亿册,倡导科普、兴趣、实作、分享的办刊理念。

文章数
分享到:

用arduino打造签到记录器——《无线电》2013.06

2013-07-18 14:59:04

前些天,教我们ic卡应用的老师让我们自己设计一个有关无线射频卡(rfid)的应用,我想起寒假在家时,有亲戚和我说“现在上班都高级了,到了单位还得打卡签到”,这不就是无线射频卡的一个应用吗?于是我就萌生了做一个签到记录器的想法。从买器件到搭电路,再到写程序,断断续续半个月的时间,终于把签到记录器做出来了。在此我写一写制作过程中的一些心得经验。

方案设计

本系统是基于arduino搭建的签到记录器,主要功能是记录签到人的id和签到时间,并以txt文本文件的形式储存到sd卡中。首先来看看我的签到记录器的系统框图吧(见图1)。我用的arduino版本是uno,上面的主控芯片为atmega328,具有32kbrom2kb ram,足够我折腾了(实际程序全部写完才用了23kb)。再加上arduino提供了各种库文件,把复杂的底层硬件操作隔离,使编程简单了许多。其实我用arduino最主要的原因还是因为它有现成的sd库,可以简单实现文件系统,而文件系统正是我最头疼的地方。

 22944

1 签到记录器系统框图

时钟芯片我用的是ds1302,主要是用来获取当前时间。这可能是时钟芯片里最弱的一款了吧?晶体振荡器配不好会影响走时的准确(要用6pf的晶体振荡器,走时才能准确)。我买的这个ds1302模块,走时就偏快,不过它自带电池,所以不用担心断电后时间丢失。

sd卡模块带有spi接口,用来存储签到人的id和签到时间。这里,我提醒大家一下,一定要买3.3v/5v i/o口兼容的那种,我就在这上面栽了跟头,一开始买的sd卡模块i/o口不带3.3v/5v电平转换,arduinounoi/o口是5v的,而sd卡是3.3v的,所以直接连接时不能用。一开始我还以为是我的sd卡不兼容,后来换了个3.3v/5v i/o口兼容的sd模块,才能正常读取数据。

射频读卡器我用的是飞利浦的rc522,这个模块在网上比较多,价格也不贵,可读、可写,还可以加密,扩展性比较强,同时也是spi接口。之前我也在2012年第12期《无线电》杂志上看到过这个芯片的使用方法,所以就选用了它。这里再多说一句,这个模块的i/o口也是3.3v的,所以也要用3.3v/5v i/o口兼容的模块,不过我在网上没找到,无奈之下只好再买个 3.3v/5v i/o口电平转换模块。显示模块我用的是lcd1602,这是最常见的lcd,就不多介绍了。按键用了3个微触按键,用来控制系统切换各种模式和调整数据等。

下面来看看这些模块的合影(见图2)吧,也给大家一个参考。

22945 

2 所有模块

 

未完。。。

全文详见《无线电》2013.06



上一篇:干电池led应急灯——《无线电》2013.06
下一篇:ufo来了——《无线电》2013.06
©2011-2020 凯发k8国际首页登录的版权所有:中国数字科技馆
未经书面许可任何人不得复制或镜像
京icp备11000850号 京公网安备110105007388号
信息网络传播视听节目许可证0111611号
国家科技基础条件平台
网站地图