找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2852|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)的計(jì)算器easy_cal 仿真和代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
一個(gè)51單片機(jī)的計(jì)算器

支持基本加減乘除四則運(yùn)算并已經(jīng)考慮優(yōu)先級
支持無嵌套的括號運(yùn)算
支持三角函數(shù)(sin,cos,tan),反三角函數(shù)(arsin,arcos,artan),開根號(sqrt),對數(shù)(lg),
指數(shù)(^)運(yùn)算(由于這些運(yùn)算內(nèi)部默認(rèn)鑲嵌了括號,外部一般不應(yīng)加括號(否則特殊情況會出
錯(cuò)),但函數(shù)內(nèi)部可用括號。 支持 And 功能,即可以儲存上一次計(jì)算結(jié)果,以彌補(bǔ)不能嵌套括號的缺點(diǎn)。
支持上述所有運(yùn)算的混合運(yùn)算,并均考慮了優(yōu)先級。
輸出作了智能處理,當(dāng)結(jié)果小于十,可顯示五位小數(shù),當(dāng)結(jié)果大于十小于一百可顯示四位小數(shù),當(dāng)結(jié)果大于一百,可顯示三位小數(shù),高位零與低位零不顯示,三種情況結(jié)果都已經(jīng)四舍五入。
按鍵輸入到第一行末端自動整屏左移,以方便用戶輸入。結(jié)果輸出在第二行固定位置。
支持一元二次方程,二元一次方程組解算,輸入?yún)?shù)方便,并考慮了不同情況,按 clean 退出該模式 作了錯(cuò)誤提示處理,如除零錯(cuò)誤,連減錯(cuò)誤,負(fù)數(shù)開根號錯(cuò)誤,負(fù)數(shù)開偶數(shù)次方錯(cuò)誤,方程無解或多解提示。
擁有計(jì)時(shí)器與倒計(jì)時(shí)器,方便平時(shí)自我測試計(jì)等情況時(shí)使用。計(jì)時(shí)器按 clean 退出,倒計(jì)時(shí)器
倒時(shí)時(shí)間由用戶輸入,到達(dá)時(shí)間后屏幕閃爍提示“time up  。!”


仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載):


單片機(jī)源程序如下:
  1.          /**************************************************************************
  2.    
  3.                                        easy calculator for 89c52
  4.                         MAKE IN  2011 BY TTS.

  5.      ******************************************************************************/
  6. #include <reg52.h>
  7. #include <math.h> //數(shù)學(xué)計(jì)算頭文件,占了四千多字節(jié),不知怎么砍少它呢
  8. #include <define.h>
  9. #include <lcd_disp.h>
  10. #include <cal.h>
  11. #include <reable.h>
  12. void main()
  13. {init();
  14. write_com(0x01); //清一下屏
  15. while(1)
  16. scan();

  17. }

  18. void time0() interrupt 1
  19. {
  20. TH0=(65536-50000)/256;
  21. TL0=(65536-50000)%256;
  22. tt++;
  23. }
  24. ……………………

  25. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
計(jì)算器.zip (326.66 KB, 下載次數(shù): 18)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:208989 發(fā)表于 2017-6-19 16:15 | 只看該作者
程序有錯(cuò)吧
回復(fù)

使用道具 舉報(bào)

板凳
ID:208989 發(fā)表于 2017-6-19 16:47 | 只看該作者
你的程序錯(cuò)了,生成不了hex文件
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表