毕业设计项目 基于单片机电子硬币储存器的设计

这篇文章介绍了使用AT89X51单片机设计的硬件系统,能够处理一角、五角和一元硬币,通过液晶屏实时显示硬币数量和总价值,利用定时器进行计数和计时。
摘要由CSDN通过智能技术生成

支持一角、五角、一元硬币类型,液晶实时显示统计好的硬币个数,同时能计算出当前硬币总价值。



    #include "AT89X51.h"
    
    #define     u8  		unsigned char
    #define     u16   		unsigned int
    #define     uchar  		unsigned char
    #define     uint   		unsigned int
    
    int delay();
    void inti_lcd();
    void show_lcd(int);
    void cmd_wr();
    void ShowState();
    void clock(unsigned int Delay) ;
    //正转值
    #define RIGHT_RUN 1
    
    sbit RS=0xA0;
    sbit RW=0xA1;
    sbit E=0xA2;
    sbit fiveCents = P3 ^ 6;
    sbit oneYuan = P3 ^ 7;
    
    uchar OC = 0; //一毛
    uchar FC = 0; //五毛
    uchar OY = 0; //一元
    uchar Total = 0;


    uchar SpeedChar[]="1:00 5:00 1Y:00 ";
    uchar StateChar[]="TOTAL:00.0 yuan ";
    uchar Number[]="0123456789";

    uchar SPEED[3]="050";
    uchar RunSpeed=50;		//速度
    uchar RunState=RIGHT_RUN;  //运行状态
    
    uchar deta=0,sec=0;  
    bit flag = 0;
    /*************************************************
    函数功能:初始化定时器
    **************************************************/
    void init_time()   //定时初始化
    {
    	TMOD=0x01; //设置定时器0位工作模式1(M1,M0位0,1)
    	TH0=(65536-45872)/256; //装初值11.0592M晶振定时50ms数为45872
    	TL0=(65536-45872)%256;
    	ET0=1; //开定时器0中断
    	TR0=0; //启动定时器0


项目获取:

https://gitee.com/feifei1122/simulation-project

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值