资源简介
单片机简易计算器全套(源程序、hex文件、Proteus仿真、设计报告)
包含8套不同的简易计算器的代码。

代码片段和文件信息
//*************************************************************************************************
//*************************************************************************************************
//**<程序名>:计算器处理主程序,根据计算器的输入状态分派不同的函数对按键进行处理。 **
//**<功能>:当b_WorkMode=0是,若有键按下则调用此函数对键码进行处理。 **
//*************************************************************************************************
//*************************************************************************************************
//*************************************************************************************************
//* *
//* ******************************头文件及宏定义************************** *
//* *
//*************************************************************************************************
#include “CalReady.h“
//*************************************************************************************************
//* *
//* ********************************全局变量****************************** *
//* *
//*************************************************************************************************
extern unsigned long ul_Number; //LCE显示数据LCD实时显示该数字。
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<工作模式(默认为计算器模式)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
extern bit b_WorkMode; //0--计算器模式;
//1--计时模式。
//定义在KeyProcess.c中。
unsigned char uc_ModeChange=0;
extern bit b_LCDClean;
extern unsigned char uc_ReportSymbol;
unsigned long ul_NumberOne=0; //第一个数
unsigned long ul_NumberTwo=0; //第二个数
unsigned char uc_Operator=0; //运算符
unsigned long ul_Result=0; //运算结果
unsigned char uc_NumPointer=1; //计算状态
//*************************************************************************************************
//* *
//* *******************************计算器处理主函数****************************** *
//* *
//*************************************************************************************************
void vCalculator(unsigned char ucKeyCode)
{
if(ucKeyCode==41) //判断按键是不是‘NO/C‘。
{
if(uc_NumPointer==1) //如果是‘NO/C’键则判断手机否是状态一。
{
if(uc_ModeChange==2) //如果是状态一则看uc_ModeChange是不是2。
{
uc_ModeChange=0; //如果是2则计时器模式。
b_WorkMode=1;
uc_ReportSymbol=3; //闪烁显示:-CHAG-1。表明正在切换状态。
b_LCDClean=1;
}
else
{
uc_ModeChange++; //如果uc_ModeChange不是2则加一。
ul_NumberOne=0; //清除所有数据,将所有数据恢复到状态一。
ul_NumberTwo=0;
ul_Number=0;
uc_NumPointer=1;
}
}
else
{
ul_NumberOne=0; //清除所有数据,将所有数据恢复到状态一。
ul_NumberTwo=0;
ul_Number=0;
uc_NumPointer=1;
}
}
else
{ //如果不是“NO/C”键,首先将uc_ModeChange清零。
uc_ModeChange=0;
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<根据不同状态分派不同的键处理函数
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-12-17 10:36 单片机简易计算器\
目录 0 2013-12-17 10:23 单片机简易计算器\51做的简易计算器\
目录 0 2013-12-17 10:25 单片机简易计算器\51做的简易计算器\用51做的简易计算器\
文件 108293 2007-07-28 21:11 单片机简易计算器\51做的简易计算器\用51做的简易计算器\DynamicLED.DSN
文件 873 2013-12-17 10:27 单片机简易计算器\51做的简易计算器\用51做的简易计算器\DynamicLED.pdsprj.stu22.Administrator.workspace
文件 768 2009-05-11 22:51 单片机简易计算器\51做的简易计算器\用51做的简易计算器\DynamicLED.PWI
目录 0 2009-05-11 23:01 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\
文件 9143 2007-07-30 13:24 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\Calculator.lst
文件 3309 2007-07-30 13:24 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\Calculator.obj
文件 22480 2007-07-30 16:59 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\CalReady.lst
文件 10202 2007-07-30 16:59 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\CalReady.obj
文件 107 2007-07-30 16:59 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\CalReady.__i
文件 37685 2007-08-07 14:58 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED
文件 11081 2007-08-07 14:58 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.hex
文件 172 2007-08-07 14:58 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.lnp
文件 37870 2007-08-07 14:58 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.M51
文件 2871 2007-08-11 09:14 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.Opt
文件 159 2007-08-11 09:14 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.plg
文件 4763 2007-07-30 13:28 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED.Uv2
文件 2872 2007-08-10 12:33 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED_Opt.Bak
文件 4653 2007-07-30 00:25 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\DynamicLED_Uv2.Bak
目录 0 2009-05-11 23:01 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\
文件 5183 2002-10-08 22:23 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\AT89X51.H
文件 106 2007-07-28 17:57 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\Calculator.h
文件 200 2007-07-29 11:44 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\CalReady.h
文件 150 2007-07-28 14:45 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\includes.h
文件 111 2007-07-28 14:26 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\KeyProcess.h
文件 105 2007-07-28 12:29 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\KeyScan.h
文件 619 2007-07-29 23:28 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\LED6Show.h
文件 1689 2003-02-03 08:57 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\REG51.H
文件 148 2007-07-30 13:17 单片机简易计算器\51做的简易计算器\用51做的简易计算器\Keil\include\TimeProcess.h
............此处省略174个文件信息
相关资源
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- proteus仿真 AT89C51输出各种波形
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 武汉理工大学 单片机课程设计 16*16点
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 浙江工业大学2005-2006学年单片机习题
- 单片机与PC机串口通讯仿真
- 毕业设计 单片机 对讲机 protues仿真
评论
共有 条评论