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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

請教51單片機(jī)測頻率問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
請問利用51單片機(jī)怎么測100兆Hz的高頻方波,顯示在數(shù)碼管上,如圖是Proteus仿真和keil代碼,100khz還能測出來,到了1M10Mhz數(shù)碼管就不顯示了,請問為什么,怎么改才行,謝謝大佬們。
  1. #include <REGX51.H>
  2. #include <intrins.h>
  3. unsigned long int count,count_end;
  4. unsigned int ans;
  5. unsigned char flag;
  6. unsigned char b[8];
  7. unsigned char duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  8. unsigned char wei[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  9. void Delay10us()                //@12.000MHz
  10. {
  11.         unsigned char i;

  12.         _nop_();
  13.         _nop_();
  14.         i = 27;
  15.         while (--i);
  16. }
  17. void delay(unsigned int ms) {
  18.     unsigned int i, j;
  19.     for (i = 0; i < ms; i++) {
  20.         for (j = 0; j < 114; j++) {
  21.             Delay10us();
  22.         }
  23.     }
  24. }

  25. void chushi(){
  26.         TMOD=0x15;       //1定時(shí)器 0計(jì)數(shù)器
  27.         TH0=0;
  28.         TL0=0;
  29.         TH1=(65536-50000)/256;
  30.         TL1=(65536-50000)%256;
  31.         ET1=1;
  32.         ET0=1;
  33.         TR0=1;
  34.         TR1=1;
  35.         EA=1;
  36. }
  37. void main(){
  38.         unsigned int k;
  39.         P0=0xff;
  40.         chushi();
  41.         while(1){
  42.                 if(flag==1){
  43.                 for(k=0;k<8;k++){
  44.                         P2=wei[k];
  45.                         P0=duan[b[k]];
  46.                         Delay10us();
  47.                 }
  48.                 }
  49.         }
  50. }

  51. void it_0() interrupt 1
  52. {
  53.         TH0=0;
  54.         TL0=0;
  55.         count++;
  56. }

  57. void it_1() interrupt 3
  58. {
  59.         ans++;
  60.         TH1=(65536-50000)/256;
  61.         TL1=(65536-50000)%256;
  62.         if(ans==20){
  63.                 count_end=count*65536+((TH0 << 8) | TL0);
  64.                 b[0]=count_end/10000000;      //10M
  65.                 b[1]=(count_end%10000000)/1000000;
  66.                 b[2]=(count_end%1000000)/100000;
  67.                 b[3]=(count_end%100000)/10000;
  68.                 b[4]=(count_end%10000)/1000;
  69.                 b[5]=(count_end%1000)/100;
  70.                 b[6]=(count_end%100)/10;
  71.                 b[7]=count_end%10;
  72.                 flag=1;
  73.                 TR0=0;
  74.                 TR1=0;
  75.         }
  76.         else{
  77.                 delay(10);
  78.         }
  79. }
復(fù)制代碼

1.png (51.58 KB, 下載次數(shù): 28)

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

使用道具 舉報(bào)

沙發(fā)
ID:344848 發(fā)表于 2024-6-12 00:59 | 只看該作者
按照香農(nóng)理論,測100MHz的方波,采樣頻率至少需要200MHz,這不是普通單片機(jī)可以勝的,建議采用DSP。
回復(fù)

使用道具 舉報(bào)

板凳
ID:1080935 發(fā)表于 2024-6-12 11:52 | 只看該作者
硬要測的話外加分頻電路,對器件要求業(yè)蠻高的。
回復(fù)

使用道具 舉報(bào)

地板
ID:1109793 發(fā)表于 2024-6-12 13:59 | 只看該作者
用硬件分個(gè)頻嘛
回復(fù)

使用道具 舉報(bào)

5#
ID:1124868 發(fā)表于 2024-6-12 14:33 | 只看該作者
使用高速的外部時(shí)鐘源或者PLL(Phase Locked Loop,鎖相環(huán))將信號(hào)預(yù)分頻到51單片機(jī)能處理的范圍內(nèi),把信號(hào)分頻到幾MHz,然后用51單片機(jī)的定時(shí)器來測量分頻后的頻率,再通過除以分頻系數(shù)得到原始頻率。
回復(fù)

使用道具 舉報(bào)

6#
ID:961114 發(fā)表于 2024-6-12 16:51 | 只看該作者
沒啥意義,還是要上硬件在線仿真啊。USB直接仿真,簡單方便,一步步調(diào)試看結(jié)果
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩久 | 日本免费在线 | 最新中文字幕在线播放 | 国产剧情一区 | 九九热精品在线视频 | 精品真实国产乱文在线 | 亚洲精品一区二区三区蜜桃久 | 国产一区二区在线免费观看 | 国产高清免费 | 国产特一级黄色片 | 亚洲综合视频 | www.99久久.com | 亚洲精选久久 | 亚洲精品日韩视频 | 国产精品美女在线观看 | 91福利在线观看 | 国产91久久久久蜜臀青青天草二 | 久久久久高清 | 精品久久精品 | 亚洲综合二区 | 亚洲精品一区二区三区蜜桃久 | 91麻豆产精品久久久久久 | 9久9久 | 国产一区二区三区色淫影院 | 日韩一区二区三区精品 | 亚洲一区免费 | 久久久久国产精品一区二区 | 天天躁日日躁xxxxaaaa | av国产精品毛片一区二区小说 | 中文字幕在线视频一区二区三区 | 亚洲国产精品视频 | 91影视 | 黄色一级视频 | 草草草久久久 | 黄色毛片在线观看 | 久久久夜色精品亚洲 | 国产在线aa| 精品视频免费 | 欧美一级黄色免费看 | 91视频精选 | 91精品国产91久久久久久吃药 |