久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于AT89C51單片機和555芯片構(gòu)成的多諧振蕩電路電容測量

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:63924 發(fā)表于 2015-3-14 19:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

  1. /*********************************************************************************************************</這種電容測量方法主要是通過一塊555芯片來測量電容,讓555芯片工作在直接反饋無穩(wěn)態(tài)的狀態(tài)下,555芯片輸出一定頻率的方波,其頻率的大小跟被測量的電容之間的關(guān)系是:f=0.772/(R*Cx),我們固定R的大小,其公式就可以寫為:f=k/Cx,只要我們能夠測量出555芯片輸出的頻率,就可以計算出測量的電容。計算頻率的方法可以利用單片機的計數(shù)器T0和中斷INT0配合使用來測量,這種研究方法相當(dāng)?shù)暮唵巍?br />
  2. *********************************************************************************************************/
  3. #include "reg51.h"
  4. #include"intrins.h
  5. #define DATA P0
  6. sbit RW=P2^1;//1602寫數(shù)據(jù)
  7. sbit RS=P2^0;//1602寫地址
  8. sbit EN=P2^2; //1602工作使能
  9. sbit b_test=P3^7;   //控制小燈的亮滅
  10. sbit _reset=P3^5;   //555時基芯片工作控制信號
  11. unsigned int T_flag,N,C,i,Dis1,Dis0;
  12. unsigned int b[6]={0X13,0X0D,0X00,0X00,0X40,0X16};   //顯示C=00pF</FONT></P>
  13. /***********延時1MS******************/
  14. void Delay1ms(unsigned int mm)
  15. {unsigned int i;
  16. for(mm;mm>0;mm--)
  17.    for(i=100;i>0;i--);
  18. }
  19. /***************檢查忙否*****************/
  20. void Checkstates()
  21. {
  22. unsigned char dat;
  23. RS=0;
  24. RW=1;
  25. do{EN=1;//下降沿
  26.    _nop_();//保持一定間隔
  27. _nop_();
  28.     dat=DATA;
  29.     _nop_();
  30. _nop_();
  31.     EN=0;
  32. }while((dat&0x80)==1);
  33. }
  34. /**************LCD寫命令函數(shù)*********/
  35. void wcomd(unsigned char cmd)
  36. {
  37. Checkstates();
  38. RS=0;
  39. RW=0;
  40. DATA=cmd;
  41. EN=1;
  42. _nop_();
  43. _nop_();
  44. _nop_();
  45. _nop_();
  46. EN=0;
  47. }
  48. /**********LCD寫數(shù)據(jù)函數(shù)**************/
  49. void wdata(unsigned char dat)
  50. {
  51. Checkstates();
  52. RS=1;
  53. RW=0;
  54. DATA=dat;
  55. EN=1;
  56. _nop_();
  57. _nop_();
  58. _nop_();
  59. _nop_();
  60. EN=0;
  61. }
  62. /*****************初始化********************/
  63. void LCDINIT()
  64. {
  65. Delay1ms(15);
  66. wcomd(0x38);//功能設(shè)置
  67. Delay1ms(5);
  68. wcomd(0x38);//功能設(shè)置
  69. Delay1ms(5);
  70. wcomd(0x01);//清屏
  71. Delay1ms(5);
  72. wcomd(0x08);//關(guān)顯示
  73. Delay1ms(5);
  74. wcomd(0x0c);//開顯示,不開光標(biāo)</FONT></P>
  75. <P><FONT color=black>}</FONT></P>
  76. <P><FONT color=black>/***********顯示函數(shù)**************/
  77. void Display(void) //顯示函數(shù)
  78. {
  79. unsigned char i,j;
  80. unsigned char a[12]={0X4D,0X45,0X41,0X53,0X55,0X52,0X45,0X4D,0X45,0X4E,0X54,0X53};//顯示measurements
  81. LCDINIT();
  82. for(i=0;i<12;i++)//寫顯示第一行
  83. { wcomd(0x80+i);
  84.     Delay1ms(1);
  85.     wdata(a[i]);
  86.     Delay1ms(1);
  87.    }

  88. for(j=0;j<6;j++)//寫顯示第二行
  89. {
  90. wcomd(0xc0+j);
  91.   Delay1ms(1);
  92.   wdata(0x30+b[j]);
  93.   Delay1ms(1);
  94. }
  95. Delay1ms(150);</FONT></P>
  96. <P><FONT color=black>}
  97. void main()
  98. {
  99.   IE=0x81;                          //打開全部的中斷控制,并開啟外部中斷允許
  100. TMOD=0x09;                        //T0為16位計數(shù)工作方式1
  101.   IT0=1;                            //設(shè)置外部中斷的觸發(fā)的方式為脈沖觸發(fā)
  102.   TH0=0x00;
  103.   TL0=0x00;
  104.   T_flag=0;
  105.   _reset=0;
  106.   b_test=1;
  107.   while(1)
  108. {
  109.     //while(!b_test)                   //如果有測量按鍵輸入就往下執(zhí)行
  110.     //{
  111.      i=0;
  112.      _reset=1;                      //啟動555時基芯片
  113.      EX0=1;          //開啟中斷0
  114.      while(_reset)   //超出等待時間,中斷還沒有過來,就退出
  115.       {
  116.        i++;
  117.        if(i>50000)   //設(shè)置最長等待時間
  118.         {
  119.          _reset=0;  //最長等待時間到還沒有中斷,停止555
  120.         }
  121.      }
  122.      if(N<100)         //如果計數(shù)值小于100,顯示SM,表示應(yīng)換用小一點的量程
  123.      {
  124.        b[3]=0X1D;
  125.        b[2]=0X23;
  126.       }
  127.     if(N>50000)        //如果計數(shù)值大于5000,顯示LA,表示應(yīng)換用大一點的量程
  128.       {
  129.        b[3]=0X11;
  130.        b[2]=0X1C;
  131.       }
  132.      if(N>=100 && N<=50000)
  133.       {
  134.        C=N/100;         //計算電容的大小
  135.        b[2]=C/10;       //計算電容值的十位
  136.        b[3]=C-b[2]*10;  //計算電容值的各位
  137.       }
  138.      //}
  139.     Display(); //顯示電容的大小
  140. if(C>40)
  141.    b_test=0;
  142.    else
  143.     b_test=1;
  144.    }
  145. }
  146. void int0(void) interrupt 0   //第一次中斷開始計數(shù),第二個中斷停止計數(shù)
  147. {
  148.   T_flag=!T_flag;
  149.   if(T_flag==1)
  150.   {
  151.    TR0=1;         //開始計時
  152.   }
  153.   if(T_flag==0)
  154.   {
  155.    TR0=0;         //停止計時
  156.    EX0=0;         //關(guān)閉中斷
  157.    _reset=0;      //停止發(fā)出方波
  158.    N=TH0*256+TL0; //計算計數(shù)器的值
  159.    N=N*5/3;
  160.    TH0=0x00;      //恢復(fù)初值
  161.    TL0=0x00;
  162.   }
  163. }[audio]http://play.baidu.com/?__m=mboxCtrl.playSong&__a=233111&__o=song/233111||playBtn&fr=altg3||www.baidu.com#[/audio]
復(fù)制代碼

單片機電容測量.rar

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

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

相關(guān)帖子

回復(fù)

使用道具 舉報

沙發(fā)
ID:162517 發(fā)表于 2017-1-22 09:47 | 只看該作者
謝謝樓主的分享,現(xiàn)在正在研究這個,剛好能用到
回復(fù)

使用道具 舉報

板凳
ID:185575 發(fā)表于 2017-4-2 15:02 | 只看該作者
最近我也在做這個東西 好東西 值得收藏
回復(fù)

使用道具 舉報

地板
ID:137653 發(fā)表于 2017-7-2 21:34 | 只看該作者
問一下為什么要N=N*5/3呢?
回復(fù)

使用道具 舉報

5#
ID:502429 發(fā)表于 2019-4-1 22:05 | 只看該作者
R1和R2應(yīng)該多大?
回復(fù)

使用道具 舉報

6#
ID:726332 發(fā)表于 2020-4-13 23:01 | 只看該作者
有仿真電路嗎
回復(fù)

使用道具 舉報

7#
ID:813187 發(fā)表于 2020-10-3 09:35 | 只看該作者
可以,橫清楚
回復(fù)

使用道具 舉報

8#
ID:760449 發(fā)表于 2020-10-9 11:49 | 只看該作者
為什么LCD沒有顯示
回復(fù)

使用道具 舉報

9#
ID:948914 發(fā)表于 2021-10-7 20:18 | 只看該作者
樓主,你這個測試方法得到的電容值誤差咋樣,我也是用這個方法測的,但是誤差有時候大有時候小
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品极品美女在线观看免费 | 国产精品3区 | 国产精品69毛片高清亚洲 | 亚洲午夜精品久久久久久app | 国产精品久久久久久久久久久新郎 | 国产日韩欧美一区二区在线播放 | 日韩精品一区二区三区在线观看 | 国产免费又色又爽又黄在线观看 | 本道综合精品 | 米奇狠狠鲁 | 中文字幕1区 | 国产欧美一区二区三区在线看 | 精品少妇一区二区三区在线播放 | 在线观看中文字幕视频 | 国产伦精品一区二区三区视频金莲 | 欧美综合视频在线 | 91精品91久久久 | 成人网av | 国产在线一区观看 | 久久精品色视频 | 中文字幕成人免费视频 | 狠狠色综合欧美激情 | 亚洲欧美日韩精品久久亚洲区 | av一区二区三区四区 | 精品国产伦一区二区三区观看体验 | 欧美炮房 | 久久久久免费观看 | 国产激情视频在线免费观看 | 欧美激情一区二区 | 亚洲久久一区 | 操操日| 操夜夜 | 91视频网址 | 久久久免费毛片 | 欧美在线免费 | 国产综合av | 一级黄色录像毛片 | 99精品欧美一区二区蜜桃免费 | 2019精品手机国产品在线 | 天堂av影院| 色播99|