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

QQ登錄

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

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

四位顯示的頻率計(jì),帶proteus仿真

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
四位顯示的頻率計(jì),帶proteus仿真

單片機(jī)源程序如下:
  1. #include <reg52.h>
  2. unsigned char code dispbit[]={0xef,0xdf,0xbf,0x7f};
  3. unsigned char code dispcode[]={0xc0,0Xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  4. unsigned char dispbuf[4]={0,0,0,0};
  5. unsigned char temp[8];
  6. unsigned char dispcount;
  7. unsigned char T0count;
  8. unsigned char timecount;
  9. bit flag;
  10. unsigned long x;
  11. void main(void)
  12. {
  13. unsigned char i;
  14. TMOD=0x15;
  15. TH0=0;
  16. TL0=0;
  17. TH1=(65536-4000)/256;
  18. TL1=(65536-4000)%256;
  19. TR1=1;
  20. TR0=1;
  21. ET0=1;
  22. ET1=1;
  23. EA=1;
  24. while(1)
  25. {
  26. if(flag==1)
  27. {
  28. flag=0;
  29. x=T0count*65536+TH0*256+TL0;
  30. for(i=0;i<4;i++)
  31. {
  32. temp[i]=0;
  33. }
  34. i=0;
  35. while(x/10)
  36. {
  37. temp[i]=x%10;
  38. x=x/10;
  39. i++;
  40. }
  41. temp[i]=x;
  42. for(i=0;i<4;i++)
  43. {
  44. dispbuf[i]=temp[i];
  45. }
  46. timecount=0;
  47. T0count=0;
  48. TH0=0;
  49. TL0=0;
  50. TR0=1;
  51. }
  52. }
  53. }
  54. void t0(void) interrupt 1 using 0
  55. {
  56. T0count++;
  57. }
  58. void t1(void) interrupt 3 using 0
  59. {
  60. TH1=(65536-4000)/256;
  61. TL1=(65536-4000)%256;
  62. timecount++;
  63. if(timecount==250)
  64. {
  65. TR0=0;
  66. timecount=0;
  67. flag=1;
  68. }
  69. P0=dispcode[dispbuf[dispcount]];
  70. P2=dispbit[dispcount];
  71. dispcount++;
  72. if(dispcount==4)
  73. {
  74. dispcount=0;
  75. }
  76. }
復(fù)制代碼

所有資料51hei提供下載:
046、四位頻率計(jì).zip (101.26 KB, 下載次數(shù): 24)


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

使用道具 舉報(bào)

沙發(fā)
ID:335647 發(fā)表于 2018-12-12 18:03 | 只看該作者
你的仿真數(shù)碼管都不亮,真的是牛皮,騙人的帖子活該你沉了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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