本设计
基于STM32的矩阵电子密码锁protues仿真设计
资料包含:源码+仿真+原理图+PCB+讲解视频(具体看下文资料清单)
原理图:Altium Designer
仿真:protues 8.9
程序编译器:keil 5
编程语言:C语言
设计编号:C0034
主要功能:
1. 液晶屏幕实时显示矩阵键盘输入的密码。
2. 4x4矩阵键盘可输入6位密码并支持循环覆盖。
3. 有有密码输入正确或错误的提示;输入正确电机转动,LCD1602显示YES,输入错误显示NO。
4. 带重新输入功能。
仿真图(提供源文件):
原理图(提供源文件):
PCB(提供源文件):
程序(提供源文件源码):
以下为部分程序,完整程序可在下载链接获取:
void main() { init_eeprom(); //开始初始化保存的数据 Init_LCD1602(); //初始化LCD1602 EA = 0; Data_Init(); Timer0_Init(); //初始化完成,开中断 EA = 1; // Get_Maopi(); LCD1602_write_com(0x80); //指针设置 LCD1602_write_word(" Welcome To Use "); // LCD1602_write_com(0x80+0x40); //指针设置 LCD1602_write_word("Electronic Scale"); // Delay_ms(2000); Get_Maopi(); LCD1602_write_com(0x80); //指针设置 LCD1602_write_word("WE:0.000 PR:00.0"); LCD1602_write_com(0x80+0x40); //指针设置 LCD1602_write_word("MONEY: 0.00 "); Display_Price(); // Get_Maopi(); //称毛皮重量 while(1) { //每0.5秒称重一次 if (FlagTest==1) { Get_Weight(); FlagTest = 0; } keycode = Getkeyboard(); //有效键值0-15 if (keycode<16) { KeyPress(keycode); Buzzer=0; Delay_ms(100); Buzzer=1; while(keycode<16) { if(keycode==12||keycode==13) { Buzzer=0; Delay_ms(10); Buzzer=1; KeyPress(keycode); Get_Weight(); flag_key=1; } keycode = Getkeyboard(); } write_eeprom(); //保存数据 } } }
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !