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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

C8051F410單片機利用pca捕獲外部脈沖

[復制鏈接]
跳轉到指定樓層
樓主
ID:511588 發表于 2019-7-31 14:16 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
//-----------------------------------------------------------------------------
// 聲明:外部引腳的脈沖輸入CEX0為P0^0,
//-----------------------------------------------------------------------------

#include <c8051f410.h>                 // SFR declarations
#include"UART.h"
#include <stdio.h>

#define SYSCLK      24500000           // SYSCLK frequency in Hz
#define BAUDRATE        9600           // Baud rate of UART in bps

sfr16 PCA0CP0 = 0xFB;                  // PCA0 Compare Register Definition
unsigned int CLKNUM = 0;
float period;

void OSCILLATOR_Init (void);
void PORT_Init (void);
void PCA0_Init (void);
static unsigned int capture_period;
unsigned int counter;
void main (void)
{
   PCA0MD = 0x00;                      // Disable watchdog timer

   PORT_Init ();                       // Initialize crossbar and GPIO
   OSCILLATOR_Init ();                 // Initialize oscillator
   PCA0_Init ();                       // Initialize PCA0
   UART0_Init ();

   EA = 1;

   while (1)
   {
      printf("CLKNUM= %d us\n",CLKNUM);
         printf("period= %f us\n",period);
   }
}


void OSCILLATOR_Init (void)
{
   OSCICN = 0x87;                      // Set internal oscillator to run
                                       // at its maximum frequency

   CLKSEL = 0x00;                      // Select the internal osc. as
                                       // the SYSCLK source
     RSTSRC = 0x04;                      // enable missing clock detector(串口需要)
}

void PORT_Init (void)
{
   XBR0    = 0x01;                     //串口通信使能
   XBR1    = 0x41;                     // Route CEX0 to P0.0,
                                       // Enable crossbar and weak pull-ups
}

void PCA0_Init (void)
{
   PCA0CN = 0x00;                      // Stop counter; clear all flags
   PCA0MD = 0x08;                      // Use 系統時鐘 as time base
   PCA0CPM0 = 0x21;                    // Module 0 = Rising Edge Capture Mode
                                       // enable CCF flag.
   EIE1 = 0x10;                       // Enable PCA interrupts  
   CR = 1;                             // Start PCA counter
}
void PCA0_ISR (void) interrupt 11
{
   static unsigned int current_capture_value, previous_capture_value;

   if (CCF0)                                                                         // If Module 0 caused the interrupt
   {
//          CLKNUM++;
         
      CCF0 = 0;                                                                      // Clear module 0 interrupt flag.   
      current_capture_value = PCA0CP0;                                               // Store most recent capture value     
      capture_period = current_capture_value - previous_capture_value;               // Calculate capture period from last two values.
      previous_capture_value = current_capture_value;                                // Update previous capture value with most recent info.
            period = capture_period *4.0816326530612244897959183673469e-8;
         
         
         
         
     }
   else                                // Interrupt was caused by other bits.
   {
      PCA0CN &= ~0x86;                 // Clear other interrupt flags for PCA
   }
}

評分

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

查看全部評分

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

使用道具 舉報

沙發
ID:64765 發表于 2019-11-16 17:01 | 只看該作者
好資料,學習了,謝謝分享。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费观看一级特黄欧美大片 | 新91 | 99精品国自产在线观看 | 成人免费区一区二区三区 | 亚洲一区二区av | 中文字幕第一页在线 | 成人免费看| 九九综合 | 国产精品一区二区三区久久 | 久久精品国产亚洲一区二区三区 | 国产精品乱码一二三区的特点 | 亚洲第一福利视频 | 欧美一二三 | 小早川怜子xxxxaⅴ在线 | 国产日韩精品一区二区 | 欧美一级二级视频 | 国产精品国产a级 | 九九久久精品 | 亚洲精品在线免费 | caoporn国产精品免费公开 | 国产探花在线精品一区二区 | 欧美一区二区三区在线看 | 亚洲精品一区二区三区中文字幕 | 蜜桃视频在线观看免费视频网站www | 欧美日一区二区 | 狠狠久久综合 | 国产免费麻豆视频 | 免费一区 | 韩国精品在线 | 国产欧美一区二区三区国产幕精品 | 亚洲手机视频在线 | 日韩高清一区 | 久久久久久成人 | 成人亚洲视频 | 久久精品视频播放 | 一区二区三区欧美 | 欧美黄在线观看 | 国产精品久久久久久久久免费高清 | 一级在线视频 | 亚洲在线一区 | 国产激情在线看 |