欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2395|回復(fù): 4
收起左側(cè)

我要輸出100HZ方波,用單片機(jī)定時(shí)器0溢出作為PCA的輸入源,可怎么也書不出100HZ方波

[復(fù)制鏈接]
ID:169891 發(fā)表于 2022-4-2 11:42 | 顯示全部樓層 |閱讀模式
void Pwm_tm0_isr() interrupt 1
{TH0 = Pca_Sys_Clock / 256;        //Timer0 Load
        TL0 = Pca_Sys_Clock % 256;
}

void Pwm_Init() //PWM初始化函數(shù),初始占空比為0
{
        AUXR  =   0x80;        // 定時(shí)器T0速度是8051單片機(jī)定時(shí)器速度的12倍,即不分頻
        TMOD  =   0x01;        // T0 16位定時(shí)器/計(jì)數(shù)器 0000 0001
        TH0 = Pca_Sys_Clock / 256;        //Timer0 Load
        TL0 = Pca_Sys_Clock % 256;
        TF0 = 0;                //清除TF0標(biāo)志
        ET0 = 1;                //Timer0 Interrupt Enable
        CMOD=0x04;         //0000 0100 空閑時(shí)不計(jì)數(shù),不產(chǎn)生中斷,時(shí)鐘源為定時(shí)器T0
        CCAPM1=0x42; //0100 0010,比較模式  PWM P3.5
        CL=0x00;                //PCA計(jì)數(shù)器清零
        CH=0x00;
        CCAP1L = 256-(256*50/100);                              
   CCAP1H = 256-(256*50/100); //占空比為50
        CR = 1;          //開啟PCA計(jì)數(shù)器
        TR0 = 1;                //Timer0 Run
        EA = 1;                        //打開總中斷
}

回復(fù)

使用道具 舉報(bào)

ID:491577 發(fā)表于 2022-4-2 14:41 | 顯示全部樓層
簡單的問題復(fù)雜化了,輸出方波直接用定時(shí)器就好了,定時(shí)器 設(shè)置5ms定時(shí),中斷函數(shù)輸出方波。比如P0.0輸出方波,只要一句:P00=~P00;
回復(fù)

使用道具 舉報(bào)

ID:161164 發(fā)表于 2022-4-2 15:02 來自觸屏版 | 顯示全部樓層
既然是1T單片機(jī),一定有時(shí)鐘輸出腳,直接弄個(gè)5ms的定時(shí)器就可輸出100Hz方波,搞什么PAC
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2022-4-2 16:47 | 顯示全部樓層
要輸出固定頻率方波采用沙發(fā)建議為佳,如果要用PCA輸出可調(diào)頻率和可調(diào)占空比方波不需要開中斷。
  1. void Init()                                                //@12MHz
  2. {
  3.         AUXR |= 0x80;                                //定時(shí)器時(shí)鐘1T模式
  4.         TMOD &= 0xF0;                                //設(shè)置定時(shí)器自動重裝模式
  5.         Pca_Sys_Clock=65536-(12000000/256/設(shè)計(jì)頻率);//計(jì)算頻率重裝值
  6.         TL0 = Pca_Sys_Clock;                //設(shè)置定時(shí)初始值
  7.         TH0 = Pca_Sys_Clock>>8;                //設(shè)置定時(shí)初始值
  8.         TR0 = 1;                                        //定時(shí)器0開始計(jì)時(shí)

  9.         CCON = 0;                                        //初始化PCA控制寄存器
  10.         CL = 0;                                //復(fù)位PCA寄存器
  11.         CH = 0;                         //復(fù)位PCA寄存器
  12.         CMOD = 0x04;                                 //設(shè)置PCA時(shí)鐘源T0,PWM頻率=T0溢出率/256
  13.         CCAP1H=CCAP1L=256-(占空比*2.56);//計(jì)算占空比重裝值
  14.         CCAPM1 = 0x42;                                //PCA模塊1工作在8位PWM模式
  15.         CR = 1;                                                //PCA定時(shí)器開始工作
  16. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

ID:123289 發(fā)表于 2022-4-2 17:41 | 顯示全部樓層
100Hz,T=10ms
做個(gè)5ms的定時(shí)中斷,中斷后將P1.0求反,P1.0就輸出100Hz方波了,非常簡單。
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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