89C51单片机计算器C语言程序

89C51单片机【计算器】C语言程序

89C51单片机【计算器】C语言程序2010-12-15 16:54/*89C51单片机【计算器】C语言程序*/

/*P2位选P0段选时钟12MHZ*/

#include reg52.h/*包含的头文件*/

#define uchar unsigned char/*宏定义*/

#define uint unsigned int uchar Led[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,

0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};/*数码管段选*/

long float Number={0,0,0,0};/*数码管显示位控制寄存器*/

uchar A={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

long int D={0,0,0,0,0,0,0,0};//数码管显示内容寄存器

uchar code C={0x0,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};/*数码管位选*/

/*列扫描控制LED 1位2位3位4位5位6位7位8位*/

uchar k=16;/*按键对外控制*/

uchar b;/*按键【+】【-】【*】【/】对外的控制*/

long float Out_put;/*定义变量【Out_put】作为结果*/

uchar e=0;/*数字的位存储递进的控制*/

uchar g=0;/*运算方式的控制变量*/

uchar L=0;/*运算方式的控制变量*/

uchar g1=0;/*运算方式的控制变量*/

uchar g2=0;/*运算方式的控制变量*/

uchar g3=0;/*运算方式的控制变量*/

uchar g4=0;/*运算方式的控制变量*/

char j=-1;/*与Number数组连用*/

uchar m=0;/*按键【=】的控制变量*/

uchar n=0;/*按键【.】的控制变量*/

uchar x=0;/*小数点个数的记录变量*/

uchar xo=0;/*控制开始计数小数点的变量*/

long int result;

void Delay(uint o)/*延时函数delay()的定义*/

{

uint i,j;

for(i=0;i o;i++)

{

for(j=0;j 121;j++){;}

}

}

void show(long float Out_put)

{uchar r;

uchar k;

long int q,p;

uchar s=0;

uchar i;

long int temp;

temp=Out_put;

if((Out_put-temp)!=0){result=Out_put*10000;r=4;}

else{result=Out_put;r=0;}

p=result;

if(m==1)

{

if(result 0)

{result=-result;p=result;q=result;for(i=1;i=8;i++){q=q/10;if(q==0){k=i;i=9;}}P0=0x40;P2=C[8-k];Delay(1);}//负号的显示

P0=0x80;P2=C[r];Delay(1);P0=0x00;

result=p;

P0=Led[result%10];P2=C[8];result=result/10;Delay(1);

if((result%10==0)&&(result%100==0)&&(result%1000==0)&&(result%10000==0)&&(result%100000==0)&&(result%1000000==0)){P0=0x00;}

else{P0=Led[result%10];P2=C[7];result=result/10;Delay(1);}

if((result%10==0)&&(result%100==0)&&(result%1000==0)&&(result%10000==0)&&(result%100000==0)){P0=0x00;}

else{P0=Led[result%10];P2=C[6];result=result/10;Delay(1);}

if((result%10==0)&&(result%100==0)&&(result%1000==0)&&(result%10000==0)){P0=0x00;}

else{P0=Led[result%10];P2=C[5];result=result/10;Delay(1);}

if((result%10==0)&&(result%100==0)&&(resu

89c51c语言程序,89C51单片机计算器C语言程序.doc相关推荐

  1. c51c语言编程的音乐程序,51单片机唱歌C51音乐程序.doc

    51单片机唱歌C51音乐程序 51单片机唱歌 C51音乐程序 unsigned char n 0; //n为节拍常数变量 unsigned char code music_tab[] 0x18, 0x ...

  2. 74hc595点亮点阵式led交通灯灯 c语言程序,89C51单片机C语言用四个74hc595控制四个LED实现交通灯...

    89C51单片机C语言用四个74hc595控制四个LED实现交通灯 (2009-05-16 18:52:38) 标签: 教育 #include #define uchar unsigned char ...

  3. 单片机控制秒表C语言程序,89C51单片机秒表的设计(全文完整版)

    <89C51单片机秒表的设计.doc>由会员分享,可免费在线阅读全文,更多与<89C51单片机秒表的设计>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...

  4. 51单片机电机测速程序c语言,基于51单片机光电编码器测速.doc

    基于51单片机光电编码器测速 PAGE PAGE 2 课程设计报告 课程名称: 微机原理课程设计 题 目: 基于51单片机的光电编码器测速 摘要 光电编码器是高精度位置控制系统常用的一种位移检测传感器 ...

  5. c语言写红绿灯程序,51单片机用C语言实现交通灯(红绿灯)源程序

    51单片机用C语言实现交通灯(红绿灯)源程序 交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改. 源程序如下: /* 1.程序目的:使用定时器学习 倒计时 红绿灯原理 主 ...

  6. 单片机交通灯灯c语言程序,51单片机用C语言实现交通灯(红绿灯)源程序

    51单片机用C语言实现交通灯(红绿灯)源程序 2009-10-29 23:00 交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改. 源程序如下: /* 1.程序目的:使用 ...

  7. 单灯闪烁c语言程序,51单片机,C语言编程,控制指示灯闪烁的频率

    c51单片机,c语言编程,关于指示灯定时闪烁的. P1.0 P1.1 P1.2 P1.3上面各接有一个指示灯,P2.0接一个外接按键. 要求: 按一下按键P1.0以1Hz的频率闪烁 半周期为500ms ...

  8. c51单片机c语言程序,C51单片机的C语言程序设计.ppt

    <C51单片机的C语言程序设计.ppt>由会员分享,可在线阅读,更多相关<C51单片机的C语言程序设计.ppt(44页珍藏版)>请在人人文库网上搜索. 1.2020/8/7,1 ...

  9. SPI存储器c语言51程序,AVR单片机SPI通讯实例程序 (C语言源代码)

    AVR单片机SPI通讯实例程序 (C语言源代码) 来源:-- 作者:-- 浏览:213 时间:2016-08-10 14:18 标签: 摘要: AVR单片机SPI通讯实例程序 (C语言源代码) 一个S ...

最新文章

  1. LeetCode简单题之三维形体的表面积
  2. Android Stdio 添加jar或aar
  3. Git 忽略已经提交的文件
  4. 结合图拉普拉斯的半监督学习
  5. oracle中dblink怎么用,Oracle中建立了dblink怎么使用
  6. 分析原因型思维模型框架_分析营销型网站优化效果不佳的主要原因
  7. 女人活到后半生才会明白:兜里有钱,才有安全感
  8. android开发 解析 b5,张绍文android开发高手课读书笔记4-启动优化篇
  9. STL中map与hash_map容器的选择
  10. 智慧医疗整体解决方案
  11. 苹果屏幕尺寸_iPhone 12屏幕维修价格出炉,买得起伤不起?
  12. win环境20分钟搭建php+sql服务器Apache+php+mysql在windows下的安装与
  13. Hazelcast源码剖析之Eviction
  14. 立创商城中的元件应用到AD中的一些经验
  15. java中scanner关于hasnext等的问题
  16. 【读书笔记】AMBA 2 AHB、AMBA 3 AHB(AHB_Lite)和AMBA 5 AHB协议比较
  17. 可怕!一部手机失窃而揭露的黑色产业链
  18. AI+医疗:使用神经网络进行医学影像识别分析 ⛵
  19. 钉钉、微信抢占移动OA入口,其他OA厂商何去何从?
  20. 猪八戒威客网对我的报道

热门文章

  1. 滤波电路各种形式的分析
  2. 复制对象clone(深复制和浅复制)
  3. 程序人生:从全栈工程师看技术人生
  4. Python判断奇偶数
  5. 浅聊OpenHarmony
  6. Xmind 8 pro 软件破解教程
  7. Linux下离线或在线安装libreoffice
  8. linux下的串口通信
  9. Linux Centos6 下载
  10. C++: 计算累积密度函数 (CDF) 非中心Beta分布(附完整源码)