基于51单片机的自动取款机设计

1、简介
该系统采用AT89C51单片机为控制核心,它具有如下功能:利用 LCD12864 液晶来显示取款信息;通过矩阵键盘实现密码输入、独立按键模拟磁卡。

2、主要功能
a.通过LCD12864液晶来显示取款信息。

b.通过按键和矩阵键盘实现取款、查询、改密等功能。

3、环境搭建
资料清单:C程序+仿真+设计报告+使用说明+元件清单+操作视频
仿真版本:Proteus8.6及以上版本
编译平台:Keil C51
编程语言:C语言

4、源程序
使用keil C51软件实现程序编写与编译。

#include <reg52.h>
#include "bianldy.h"//变量定义
#include "control_lcd.h"//lcd的驱动程序
#include "hanssm.h"//函数的声明
#include "ziku.h"
#include "display.h"
#include "iiccon.h"
#include "init.h"//各类数据和函数的初始化
//unsigned char i;
#include "iicdateinit.h"
#include "KANSANF.h"

void delay(uint a)
{
 	uchar c;
	uint b;
	for(b=0;b<a;b++)
		for(c=0;c<120;c++)
		;
}
void buzzer_di()//蜂鸣器di声
{
	buzzer=0;
	delay(100);
	buzzer=1;
}


main()
{
	init();
	  ininticcdate();//E2PROM中数据的初始化								
	while(1)
	{
		if(chakc==0)
		{
			keysanf_chak();
		//	init();	
		}
		if(chakc==1)
		{
			 display_mima();
			 chakc=2;
		}
		if(chakc==2)
		{
		keysanf_mima();
		if(xing>6)
		xing=6;
		if(xing<0)
		xing=0;
		keysanf_lk1();
		if(lk1bz==1)
		{
			mima=table_mima[xing-1];
			xing--;
			lk1bz=0;
		}
		display_mimax(xing);
		table_mima[xing]=mima;
		if(xing==6)
		{
			keysanf_rk1();
			if(rk1bz==1)
			{
				if(table_mima[1]==read_add(1+(cha-1)*8)&&table_mima[2]==read_add(2+(cha-1)*8)&&table_mima[3]==read_add(3+(cha-1)*8)&&table_mima[4]==read_add(4+(cha-1)*8)&&table_mima[5]==read_add(5+(cha-1)*8)&&table_mima[6]==read_add(6+(cha-1)*8))
					{chakc=3;}
					else
					{
						chakc=10;
						erroncount=read_add(0+(cha-1)*8)+1;
						delay(50);
						write_add(0+(cha-1)*8,erroncount);
					}
					rk1bz=0;
					xing=0;
				
			}
		}

		}
		if(chakc==3)// 在选择业务下检测1234个按键
		{
			
			display_ywxuanze();// 选择业务页面
			keysanf_rk1();//取卡
			if(rk1bz==1)
			{
				init();

			}
			keysanf_rk2();//取款
			if(rk2bz==1)
			{
				chakc=4;
				rk2bz=0;
			}
			keysanf_lk2();//查询余额
			if(lk2bz==1)
			{
				chakc=7;
				lk2bz=0;
			}
			keysanf_lk1();//修改密码
			if(lk1bz==1)
			{
				chakc=9;
				lk1bz=0;
			}

5、proteus8.6仿真
采用proteus8.6软件(内附安装包)实现仿真设计,如下图所示。proteus软件一般存在高低版本兼容问题,该仿真是通过proteus8.6导出的,所以请尽量使用proteus8.6打开文件,低于proteus8.6的版本不能够正常使用,高于proteus8.6的版本除了proteus8.8/8.9理论上可以正常使用。

在这里插入图片描述

6、设计资料清单
设计资料主要包括C程序+仿真+设计报告+使用说明+元件清单+操作视频等,设计报告主要包括硬件电路、软件设计、仿真调试等等,仅供参考。由于不定期更新,最新的资料包不一定与下面图片完全一致,但主要资料都有。
在这里插入图片描述

在这里插入图片描述

7、资料获取方式
有偿,下载链接:SS10基于51单片机的自动取款机设计

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值