找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6358|回復: 6
收起左側(cè)

單片機簡易計算器仿真及程序和Hex文件

[復制鏈接]
ID:137190 發(fā)表于 2016-9-3 02:53 | 顯示全部樓層 |閱讀模式
16493579hflvfdfy9ffuiu.bmp 164935ra365h6kfa52iftz.png.thumb.jpg
下面是計算器的程序(完整代碼和仿真工程文件請下載本帖最后的附件)
  1. #include<reg51.h>   //頭文件

  2. #define uint unsigned int //

  3. #define uchar unsigned char




  4. sbit lcden=P2^3; //定義引腳

  5. sbit rs=P2^4;

  6. sbit rw=P2^0;

  7. sbit busy=P0^7;




  8. char i,j,temp,num,num_1;

  9. long a,b,c;     //a,第一個數(shù) b,第二個數(shù) c,得數(shù)

  10. float a_c,b_c;

  11. uchar flag,fuhao;//flag表示是否有符號鍵按下,fuhao表征按下的是哪個符號




  12. uchar code table[]={

  13. 7,8,9,0,

  14. 4,5,6,0,

  15. 1,2,3,0,

  16. 0,0,0,0};

  17. uchar code table1[]={

  18. 7,8,9,0x2f-0x30,

  19. 4,5,6,0x2a-0x30,

  20. 1,2,3,0x2d-0x30,

  21. 0x01-0x30,0,0x3d-0x30,0x2b-0x30};




  22. void delay(uchar z) // 延遲函數(shù)

  23. {

  24. uchar y;

  25. for(z;z>0;z--)

  26.    for(y=0;y<110;y++);

  27. }




  28. void check() // 判斷忙或空閑

  29. {

  30. do{

  31.     P0=0xFF;

  32.     rs=0;     //指令

  33.     rw=1;     //讀

  34.     lcden=0;     //禁止讀寫

  35.     delay(1); //等待,液晶顯示器處理數(shù)據(jù)

  36.     lcden=1;     //允許讀寫

  37.     }while(busy==1); //判斷是否為空閑,1為忙,0為空閑

  38. }

  39. void write_com(uchar com) // 寫指令函數(shù)

  40. {

  41. P0=com;    //com指令付給P0口

  42. rs=0;

  43. rw=0;

  44. lcden=0;

  45. check();

  46. lcden=1;

  47. }




  48. void write_date(uchar date) // 寫數(shù)據(jù)函數(shù)

  49. {

  50.     P0=date;

  51. rs=1;

  52. rw=0;

  53. lcden=0;

  54. check();

  55. lcden=1;

  56. }




  57. void init() //初始化

  58. {

  59.     num=-1;

  60. lcden=1; //使能信號為高電平

  61. write_com(0x38); //8位,2行

  62. write_com(0x0c); //顯示開,光標關,不閃爍*/

  63. write_com(0x06); //增量方式不移位 顯竟獗暌貧 柚?

  64. write_com(0x80); //檢測忙信號

  65. write_com(0x01); //顯示開,光標關,不閃爍

  66. num_1=0;

  67. i=0;

  68. j=0;

  69. a=0;     //第一個參與運算的數(shù)

  70. b=0;     //第二個參與運算的數(shù)

  71. c=0;

  72. flag=0; //flag表示是否有符號鍵按下,

  73. fuhao=0; // fuhao表征按下的是哪個符號

  74. }
復制代碼

真的設計.rar

22.33 KB, 下載次數(shù): 96, 下載積分: 黑幣 -5

回復

使用道具 舉報

ID:160447 發(fā)表于 2017-1-7 12:06 | 顯示全部樓層
為什么仿真按鍵不顯示,,,,,
回復

使用道具 舉報

ID:357437 發(fā)表于 2018-6-24 12:27 | 顯示全部樓層
liuyuxi1111 發(fā)表于 2017-1-7 12:06
為什么仿真按鍵不顯示,,,,,

程序怎么打不開
回復

使用道具 舉報

ID:370090 發(fā)表于 2018-7-12 16:01 | 顯示全部樓層
挺好呀,有點不懂,在學習
回復

使用道具 舉報

ID:425384 發(fā)表于 2018-11-13 10:35 | 顯示全部樓層
c語言的代碼怎么沒有?
回復

使用道具 舉報

ID:435679 發(fā)表于 2018-11-29 13:42 | 顯示全部樓層
哈,太好了
回復

使用道具 舉報

ID:650894 發(fā)表于 2019-11-29 10:46 來自手機 | 顯示全部樓層
可以吧ats89c51換成stc89c51嗎?
回復

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

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

快速回復 返回頂部 返回列表