单片机——简单计算器

本文介绍了如何使用单片机设计并实现一个简单的计算器,涵盖了LCD1602显示屏的接口应用和基本运算功能实现,适合初学者了解单片机控制原理。
摘要由CSDN通过智能技术生成


单片机——简单计算器
       
         最近喜欢看单片机,用C写了个简单的计算器,LCD作为
显示 。在proteus上仿真和开发板上都可以运行。

         源代码及电路图: http://pan.baidu.com/s/1c0pmG0o


图片


图片
 


/*
  一个简单的整数计算器。

  从4*4矩阵键盘接收 0~9 组成的数字,做加减乘除运算,
  并将输入的键值和运算结果显示在LCD上。运算有效位好像只有6位。
*/

#include <reg51.h>   // 51系列单片机头文件
#include <math.h>
#include "LCD.h"       //  引入 自己编写的 LCD 文件

#define uchar unsigned char
#define uint unsigned int 

#define KEY P1  //   键盘 接口
#define LED P0  //   7段数码管用于显示 按下键盘的键值

sbit BEEP = P3^7; //  蜂鸣
uchar code DSY_CODE[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00}; //  0~f
uchar  fuhao = '=', k = 0, KeyNO;    //  fuhao  用于 记录 最近 使用的 运算符
unsigned long  num, a[12], temp1 = 0, temp2 = 0;   //  temp1 记录 当前输入的数值  temp2 记录 上次输入的数值

 //===================================================================//

void delay_ms(uint x); //  微秒级延时函数
void Keys_Scan();       //  接收 从键盘输入的 键值
void Beep();     //   响铃函数
void fenjie (unsigned long n);  //  LCD数字显示函数
void LCD_Show();//  LCD键值显示函数


 //================== 调试主函数 ================================//
void main()
{
KEY = 0xf0;
LED = 0xff;  //  数码管 灭

IE=0X81;
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值