• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

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

04/24 09:19
776
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

单片机仿真设计合集资料获取.pdf

共1个文件

资料清单:C程序+仿真+设计报告+使用说明+元件清单+操作视频

仿真版本:Proteus8.6及以上版本

程序编译:Keil5 C51

编程语言:C语言

设计编号:【S10】

1.  简介

  本文提出了一种基于51单片机的自动取款机设计。该系统采用AT89C51单片机为控制核心,它具有如下功能:利用 LCD12864 液晶来显示取款信息;通过矩阵键盘实现密码输入、独立按键模拟磁卡。

2.  主要功能

a.通过LCD12864液晶来显示取款信息。

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

3.  源程序(Keil5)

本设计采用keil5 C51软件(内附安装包)实现程序设计。如需用keil4打开程序,可自行通过.c和.h文件新建工程即可。

#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;
			}

4.  仿真proteus8.6

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

运行:

5.  设计报告

设计报告主要包括硬件电路、软件设计、仿真调试等等,仅供参考

6.  资料清单

设计资料主要包括C程序+仿真+设计报告+使用说明+元件清单+操作视频等。

7.  资料获取链接

百度网盘下载链接:【S10】百度网盘下载链接

更多单片机仿真设计合集:单片机仿真设计合集

  • 单片机仿真设计合集资料获取.pdf
    下载

相关推荐