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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 15163|回復: 19
打印 上一主題 下一主題
收起左側

直流電機測速(光電計數轉速計)單片機原理圖與源程序

  [復制鏈接]
跳轉到指定樓層
樓主
直流電機測速原理圖如下:
J3
VCC接A或者接B,可以實現正傳和反轉。
SIG脈沖輸出端,接單片機外部中斷端。

電機驅動采用L9110S驅動芯片,測速原理是光電計數.


單片機測速源程序如下:
  1. /*-----------------------------------------------
  2.   名稱:轉速計
  3.   日期:2009.5
  4.   修改:無
  5.   內容:T0外部計數,T1計時1S,計算1S內外部脈沖個數,并在液晶顯示
  6.         轉速
  7. ------------------------------------------------*/
  8. #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
  9. #include<stdio.h>
  10. #include"1602.h"
  11. #include"delay.h"
  12. #define HIGH (65536-10000)/256
  13. #define LOW  (65536-10000)%256

  14. sbit LED=P1^2;    //定義LED端口
  15. bit OVERFLOWFLAG;
  16. bit TIMERFLAG;
  17. /*------------------------------------------------
  18.                     定時器0初始化子程序
  19.                     本程序用于計數
  20. ------------------------------------------------*/
  21. void Init_Timer0(void)
  22. {
  23. TMOD |= 0x01 | 0x04;      //使用模式1,16位計數器,使用"|"符號可以在使用多個定時器時不受影響            
  24. TH0=0x00;          //給定初值
  25. TL0=0x00;         
  26. EA=1;            //總中斷打開
  27. ET0=1;           //定時器中斷打開
  28. TR0=1;           //定時器開關打開
  29. }
  30. /*------------------------------------------------
  31.                     定時器1初始化子程序
  32.                     本程序用于定時
  33. ------------------------------------------------*/
  34. void Init_Timer1(void)
  35. {
  36. TMOD |= 0x10;      //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響
  37. TH1=HIGH;          //給定初值,這里使用定時器最大值從0開始計數一直到65535溢出
  38. TL1=LOW;
  39. EA=1;            //總中斷打開
  40. ET1=1;           //定時器中斷打開
  41. TR1=1;           //定時器開關打開
  42. }
  43. /*------------------------------------------------
  44.                     主程序
  45. ------------------------------------------------*/
  46. main()
  47. {
  48. unsigned long int a;
  49. float s;
  50. char temp[16];      //定義字符顯示緩沖數組
  51. Init_Timer0();      //初始化定時器0
  52. Init_Timer1();      //初始化定時器1
  53. LCD_Init();         //初始化液晶屏
  54. DelayMs(10);        //延時用于穩定,可以去掉
  55. LCD_Clear();        //清屏
  56. LCD_Write_String(0,0,"111111111");//寫入第一行信息,主循環中不再更改此信息,所以在while之前寫入
  57. while(1)
  58. {
  59.   if(OVERFLOWFLAG)//檢測溢出標志,如果溢出表明頻率過高,顯示溢出信息
  60.     {
  61.      OVERFLOWFLAG=0;//標志清零
  62.      LCD_Write_String(0,1,"overflow >655KHz");
  63.     }
  64.   if(TIMERFLAG)      //定時100ms到,做數據處理
  65.     {
  66.      a=TL0+TH0*256;//讀取計數值
  67.      s=a/4;//100ms的轉數(圓盤有4個孔,一周產生4個脈沖)
  68.      s=s*600;//一分鐘的轉數
  69.      sprintf(temp,"%8.0f r/min",s);
  70.      LCD_Write_String(0,1,temp);//顯示到液晶第二行
  71.      TR0=1;                     //2個定時器打開
  72.      TR1=1;
  73.      TH0=0;                     //保證計數器初值為0
  74.      TL0=0;
  75.      TIMERFLAG=0;               //打開計時計數標志
  76.      
  77.     }
  78.   }
  79. }

  80. /*------------------------------------------------
  81.                  定時器0中斷子程序
  82. ------------------------------------------------*/
  83. void Timer0_isr(void) interrupt 1
  84. {
  85. TH0=00;          //重新給定初值
  86. TL0=00;

  87. OVERFLOWFLAG=1;  //溢出標志

  88. }
  89. /*------------------------------------------------
  90.                  定時器1中斷子程序
  91. ------------------------------------------------*/
  92. void Timer1_isr(void) interrupt 3
  93. {
  94. static unsigned char i;
  95. TH1=HIGH;         //重新賦值10ms
  96. TL1=LOW;

  97. i++;
  98. if(i==10)       //100ms 計數時間單位,得出100ms脈沖個數 x10就是1s中脈沖個數,即為頻率 Hz
  99.    {
  100.    i=0;
  101.    TR0=0;        //2個定時器關閉
  102.    TR1=0;
  103.    TIMERFLAG=1;  //標志位清零
  104.    TH1=HIGH;     //重新賦值
  105.    TL1=LOW;
  106.    }
  107. }

復制代碼

所有資料51hei提供下載:
測速模塊資料.7z (33.21 KB, 下載次數: 451)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:304758 發表于 2018-4-9 21:31 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

板凳
ID:213231 發表于 2018-4-19 17:37 | 只看該作者
最近在學小車,剛好用到測速
回復

使用道具 舉報

地板
ID:313325 發表于 2018-4-21 21:21 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

5#
ID:313325 發表于 2018-4-21 21:43 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

6#
ID:83305 發表于 2018-4-23 05:44 | 只看該作者

好資料,黑幣不夠,支持一下
回復

使用道具 舉報

7#
ID:301824 發表于 2018-5-27 10:48 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

8#
ID:194641 發表于 2018-6-24 19:53 | 只看該作者
謝謝樓主分享,最近在學校單片機,正好用得上
回復

使用道具 舉報

9#
ID:227864 發表于 2018-9-14 08:51 | 只看該作者
謝謝樓主!!!!!!!!!
回復

使用道具 舉報

10#
ID:227864 發表于 2018-9-14 08:58 | 只看該作者
不對呀,請問樓主用什么軟件編譯的呀,KEIL打開沒有程序
回復

使用道具 舉報

11#
ID:466973 發表于 2019-3-13 17:55 | 只看該作者
這個有點問題啊樓主,按程序里端口接的線。1602什么都不顯示
回復

使用道具 舉報

12#
ID:298008 發表于 2019-3-13 21:55 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

13#
ID:490395 發表于 2019-3-14 00:12 來自手機 | 只看該作者
謝謝分享!!
回復

使用道具 舉報

14#
ID:616081 發表于 2019-9-25 10:42 | 只看該作者

好資料,51黑有你更精彩!!!
回復

使用道具 舉報

15#
ID:697141 發表于 2020-3-13 15:15 | 只看該作者
好資料,設計剛好用到
回復

使用道具 舉報

16#
ID:680763 發表于 2020-3-23 06:23 | 只看該作者
能貼上就是貢獻
回復

使用道具 舉報

17#
ID:84600 發表于 2020-4-22 22:38 | 只看該作者
感謝分享
回復

使用道具 舉報

18#
ID:642957 發表于 2020-4-28 01:38 | 只看該作者
不錯,學習借鑒一下。
回復

使用道具 舉報

19#
ID:815648 發表于 2020-9-29 19:06 | 只看該作者
這個文件有毛病,打不開,一打開全是亂碼
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91视频精选 | 国产精品亚洲综合 | 亚洲国产成人精品久久 | 成人精品一区二区 | 天天干视频 | 丁香婷婷久久久综合精品国产 | 91久久精品国产91久久性色tv | 性色综合| 亚洲一区二区三区在线播放 | 欧美freesex黑人又粗又大 | 91亚洲视频在线 | 国产综合精品一区二区三区 | 欧美一级欧美三级在线观看 | 亚洲午夜一区二区 | 亚洲人成在线播放 | 欧美日韩在线一区二区 | 国产精品久久久久久久久久久久久 | 成年人在线观看 | 国产欧美精品一区二区 | 亚洲视频一区在线观看 | 久久久久久久一区 | 色小姐综合网 | 国产精品日韩欧美一区二区三区 | 国产精品成人av | 久久精品国产一区二区电影 | 亚洲精品久久久久久国产精华液 | 91偷拍精品一区二区三区 | 好婷婷网| 久久伊人精品 | 操人视频在线观看 | 亚洲一区在线日韩在线深爱 | 中文字幕在线电影观看 | h免费观看 | 国精产品一区二区三区 | 亚洲综合中文字幕在线观看 | 久久国产传媒 | 伊人狠狠干 | 午夜爱爱毛片xxxx视频免费看 | 黑人性hd | 人妖一区 | 黄色av网站在线观看 |