基于PIC 16F628A的安全电子锁微控制器
否则将转到步骤3。
12 其他去的循环和分配是错误的。 13 返回并分配标记。
下一个功能是ReadEEPROM,用于从数组eepm文件读取存储的密码,进一步重置用户输入的密码。
以下是ReadEEPROM执行的步骤: 1 初始化计算值10。
2 eepm的开始地址分配给特定的指针。
3 使FSR指向数组的起始地址,它将包含eepm的值。 4 增量FSR。
5 从eepm阅读值的一个位置,把它写在数组中。 6 增量的指针指向eepm。
7 递减计数。如果等于零,这意味着eepm密码已经完全阅读然后返回。否则,转到步骤4。
另一个重要功能是WriteEEPROM函数,当用户想要改变密码,它将新密码写入eepm。写eepm是至关重要的操作,不应出现意外[3],因为结果将是永久性的,除非我们重写eepm的同一位置。出于这个原因,两个值AAh和55 h必须写入EECON2注册,一个接一个地确保程序给eepm写入。
以下是WriteEEPROM函数执行的步骤 1 初始化计算值10。
2 eepm的开始地址分配给特定的指针。
3 使FRS指向数组的起始地址,必须存储在eepm中 4 增量FRS。
5 读值数组来取得临时变量的一个位置。 6 向EECON2写0。 7 向EECON2写0 x55 。 8 写eepm的临时变量。 9 增量的指针指向eepm。
6
基于PIC 16F628A的安全电子锁微控制器
10 减量计算如果等于零,这意味着所有密码完成写eepm和返回的位置,否则转到步骤4
系统有蜂鸣器代表一个警报,当用户输入一个密码错误三次,蜂鸣器会发出声响。当出现安全漏洞,这个针可以配置依赖切换高功率报警。
论文提出系统非常简单,很少涉及到的组件,因为所有的固件中实现的功能是安装在PIC单片机。
图4中,我们展示了完整的系统硬件组件。
图4中,完成系统的硬件组件
从图中可以很明显看出,只有少数电子元件参与该系统的工作。这确实是一个伟大的事情,使用嵌入式系统,使硬件架构非常简单,但是复杂性在于最终要根据软件和硬件的相互配合。
Ⅴ 结论
编程4位液晶界面模式非常有效,发送一个字节的延迟两个步骤并不明显, 另一个问题是使用PORTB往上拉,这证明是有利于系统的,因为它将在无限循环系统在睡眠模式下在等待按键。所以当没有与系统的交互时,它节省了电池功率和提高系统的功能。因此没有浪费CPU周期。
7
基于PIC 16F628A的安全电子锁微控制器
系统使用真实的硬件组件的实现后,有一个我所遇到的技术困难,本文想强调是键盘的实现。通过尽可能多的研究,列设置为读取输入,检查他们的状态就知道哪个键被按下,行输出,可以通过固件设置为1或0(5、6)。这种方法并没有在这里实现,因为如果4针同时设置为输入,这部分将会受到影响,当其中之一是改变扫描读取,按键导致不准确的关键。找到的解决方案是每个端口列设置为输入,然后每次输出我们检查列状态。在这种情况下,只有一个针将设置为输入一次和其他输出而不会受到改变。这给了我们一个精确和光滑的键盘操作。
系统是完整的、合理的,并且进行了一些改进和操作测试,可以被认为是一个成功的产品,可以运往市场。
Ⅵ 引用
[1] Verle米兰“PIC微控制器”,mikroElektronika;第1版,2008年. [2] Nebojsa, Matic,“PIC微控制器在线”,MikroElektronika,2000年. [3] 芯片,芯片“PIC16F628x数据表”. [4] 日立”液晶HD44780数据表”,日立.
[5] Peter,JAKAB”基于PIC电子密码锁(在线)“:http://jap.hu/electronic/combination_lock.html [6]
DAT,“简单组合锁键盘和
LCD
项目(在线)”:http:
//www.8051projects.net/download-d195-simplecombination-lock-project-keypad-lcd.ht
8