找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于51單片機(jī)的頻率計(jì)設(shè)計(jì)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
原理簡單,附有源程序,同時(shí)能夠直接仿真看結(jié)果?梢詼y試三角波,正弦波等,同時(shí)測量1-100khz。

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



單片機(jī)源程序如下:
  1. /********************************************************************
  2.                             匯誠科技
  3. 網(wǎng)址:http://www.ourhc.cn
  4. 產(chǎn)品有售淘寶店:http://shop36330473.taobao.com   
  5. *********************************************************************/
  6. #include <reg52.h>
  7. #define uchar unsigned char
  8. #define uint  unsigned  int        
  9. uchar duan[10]={0xc0,0Xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};         //所需的段的位碼
  10. //uchar wei[4]={0XEf,0XDf,0XBf,0X7f};                                 //位的控制端        (開發(fā)板)
  11. uchar wei[4]={0X80,0X40,0X20,0X10};                                 //位的控制端        (仿真)
  12. uint z,x,c,v, date;        //定義數(shù)據(jù)類型
  13. uint dispcount=0;
  14. uint lck=0;
  15. uint disp=0;
  16. /******************************************************************

  17. 延時(shí)函數(shù)

  18. ******************************************************************/
  19. void delay(uchar t)
  20. {
  21.   uchar i,j;
  22.    for(i=0;i<t;i++)
  23.    {
  24.             for(j=13;j>0;j--);
  25.          { ;
  26.          }
  27.    }
  28. }

  29. /**********************************************************************
  30.                 數(shù)碼管動(dòng)態(tài)掃描
  31. *********************************************************************/
  32. void xianshi()
  33. {
  34. /*****************數(shù)據(jù)轉(zhuǎn)換*****************************/
  35.   z=date/1000;                         //求千位
  36.   x=date%1000/100;                 //求百位
  37.   c=date%100/10;                 //求十位
  38.   v=date%10;                         //求個(gè)位

  39.       P2=wei[0];
  40.           P0=duan[z];
  41.           delay(50);  
  42.             P2=wei[1];
  43.       P0=duan[x];
  44.           delay(50);  
  45.              P2=wei[2];
  46.       P0=duan[c];
  47.           delay(50);  
  48.       P2=wei[3];
  49.       P0=duan[v];
  50.           delay(50);  
  51.                                        

  52.        }

  53. /*************************************************************************
  54.                                 定時(shí)器初值1ms        
  55. **************************************************************************/
  56. void initTimer(void)
  57. {
  58. TMOD=0x0;
  59. TH0=0xe3;
  60. TL0=0xc;
  61. }

  62. /*************************************************************************
  63.                                 定時(shí)器函數(shù)        
  64. **************************************************************************/
  65. void timer0(void) interrupt 1
  66. {
  67. TH0=0xe3;
  68. TL0=0xc;
  69. lck++;
  70. if(lck==1000)
  71.        {
  72.         disp=dispcount;
  73.              lck=0;
  74.                 dispcount=0;
  75.        }

  76. }

  77. /*************************************************************************
  78.                                 中斷函數(shù)        
  79. **************************************************************************/
  80. void int0(void) interrupt 0
  81. {

  82. dispcount++; //每一次中斷,計(jì)數(shù)加一

  83. }

  84. /*************************************************************************
  85.                                 主函數(shù)        
  86. **************************************************************************/
  87. void main(void)
  88. {

  89. IT0=1;     //INT0下降沿中斷
  90. ……………………

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

所有資料51hei提供下載:
trycry.rar (70.62 KB, 下載次數(shù): 49)





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

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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