找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

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

51單片機(jī)計(jì)時(shí)器0-9999proteus仿真圖及源碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
51單片機(jī)計(jì)時(shí)器0-9999
proteus仿真原理圖:


單片機(jī)源碼:
  1. #include<reg51.h>

  2. #define uchar unsigned char
  3. #define uint unsigned int

  4. uchar table[]={
  5. 0x3f,0x06,0x5b,0x4f,
  6. 0x66,0x6d,0x7d,0x07,
  7. 0x7f,0x6f,0x77,0x7c,
  8. 0x39,0x5e,0x79,0x71
  9. };

  10. uint i=0, cnt = 9998;

  11. void IntConfiguration();
  12. void TimeConfig();
  13. void display(uint,uint,uint,uint);
  14. void delay(int);

  15. void main()
  16. {
  17.         IP = 0x04;
  18.         IntConfiguration();
  19.         TimeConfig();
  20.         while(1)
  21.         {
  22.                 display(cnt/1000,(cnt%1000)/100,((cnt%1000)%100)/10,((cnt%1000)%100)%10);
  23.         }
  24. }

  25. void display(uint a,uint b,uint c,uint d)
  26. {
  27. P2=0x0e;
  28. P0=table[a];
  29. delay(1);

  30. P2=0x0d;
  31. P0=table[b];
  32. delay(1);

  33. P2=0x0b;
  34. P0=table[c];
  35. delay(1);

  36. P2=0x07;
  37. P0=table[d];
  38. delay(1);
  39. }

  40. void delay(int z)
  41. {
  42. uint x,y;
  43. for(x=z;x>0;x--)
  44. for(y=110;y>0;y--);
  45. }

  46. void IntConfiguration()
  47. {
  48.         IT0=0;
  49.         EX0=1;
  50.         IT1=0;
  51.         EX1=1;
  52.         EA=1;       
  53. }

  54. void TimeConfig()
  55. {
  56. //  TMOD = 0x10;
  57. //  TH1 = (65536-10000)/256;
  58. //  TL1 = (65536-10000)%256;
  59.   TMOD = 0x01;
  60.   TH0 = (65536-10000)/256;
  61.   TL0 = (65536-10000)%256;
  62.   EA = 1;
  63. //  ET1 = 1;
  64. //  TR1 = 1;
  65.   ET0 = 1;
  66.   TR0 = 1;       
  67. }

  68. void Int0() interrupt 0                 
  69. {
  70.    cnt = 0;
  71. }

  72. void Int1() interrupt 2                 
  73. {
  74.    cnt = 1111;
  75. }

  76. void mytimer() interrupt 1
  77. {
  78.   uint flag = 0;
  79. //  TH1 = (65536-10000)/256;
  80. //  TL1 = (65536-10000)%256;
  81.   TH0 = (65536-10000)/256;
  82.   TL0 = (65536-10000)%256;
  83.   i++;
  84.   if(i >= 100)
  85.   {
  86.           i = 0;


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


全部資料下載:
計(jì)時(shí)器.rar (60.13 KB, 下載次數(shù): 100)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:216609 發(fā)表于 2017-7-3 16:06 | 只看該作者
您能幫我看一個(gè)原理圖,改寫(xiě)一下程序么?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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