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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

[求助求助求助]C8051F040---請(qǐng)教關(guān)于PWM填充

[復(fù)制鏈接]
ID:87949 發(fā)表于 2015-8-8 21:29 | 顯示全部樓層 |閱讀模式
本帖最后由 5695585 于 2015-8-8 23:33 編輯

寫這個(gè)程序的目的是準(zhǔn)備給無刷直流電機(jī)提供驅(qū)動(dòng)信號(hào)
需要的是給一個(gè)低頻方波信號(hào)里面填充較高頻率的PWM波
思路是設(shè)置好PCA的寄存器,包括PWM的占空比和頻率
然后用定時(shí)器0來控制CR,即PCA0CN 寄存器的第6位,周期性的使能和禁止PWM輸出,實(shí)現(xiàn)PWM的填充
產(chǎn)生類似調(diào)制波一樣的波形

大概程序如下:
void PCA0_Init (void)
{
   char SFRPAGE_save = SFRPAGE;        // Save current SFR Page

   SFRPAGE = PCA0_PAGE;
   // configure PCA time base; overflow interrupt disabled
   PCA0CN = 0x00;                      // Stop counter; clear all flags
   PCA0MD = 0x00;                      // Use SYSCLK as time base

   PCA0CPM0 = 0x42;                    // Module 0 = 8-bit PWM mode

   // Configure initial PWM duty cycle = 50%
   PCA0CPH0 = 256 - (256 * 0.2);

   // Start PCA counter
   CR = 1;
   SFRPAGE = SFRPAGE_save;
}

void Timer_Init()
{
        char SFRPAGE_SAVE = SFRPAGE;
        SFRPAGE   = TIMER01_PAGE;
        TMOD      = 0x01;
        TH0       = 0xF4;
        TL0       = 0x00;
        EA=1;                                                //總中斷開
        TR0=1;                                                //定時(shí)方式
        ET0=1;
        SFRPAGE = SFRPAGE_SAVE;
}

void Timer0_ISR(void) interrupt 1
{
           char SFRPAGE_SAVE = SFRPAGE;
        SFRPAGE = TIMER01_PAGE;
        TH0       = 0xF4;
        TL0       = 0x00;
        SFRPAGE = PCA0_PAGE;        
        CR = ~CR;

        SFRPAGE = SFRPAGE_SAVE;
}


11.jpg 22.jpg 33.jpg

本來希望得到的是第三張圖一樣的波形,沒有PWM的部分為低電平
但是輸出在圖1和圖3之間不斷的跳變,有時(shí)沒有PWM的部分為高,有時(shí)為低,感覺不受控
請(qǐng)問這個(gè)問題出在哪兒
我試過在中斷里直接 CR = 0 ,輸出是恒低的
非常感謝




試過在CR = 0的時(shí)候控制P0.0輸出低電平
void Timer0_ISR(void) interrupt 1
{
           char SFRPAGE_SAVE = SFRPAGE;
        SFRPAGE = TIMER01_PAGE;
        TH0       = 0xF4;
        TL0       = 0x00;
        SFRPAGE = PCA0_PAGE;        
        CR = ~CR;

        
        if(CR == 0)
        {
                SFRPAGE = CONFIG_PAGE;
                XBR0 = 0x00;                P0MDOUT = 0xFF;
                P0 &= 0xFE;

                XBR0 = 0x08;
        }

        SFRPAGE = SFRPAGE_SAVE;
}
但一點(diǎn)用都沒有


請(qǐng)教各位問題出在哪兒
非常感謝




評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的積分獎(jiǎng)勵(lì)!

查看全部評(píng)分

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 做a网站 | 欧洲高清转码区一二区 | 成人亚洲| 欧美精品久久久久 | 2019天天干天天操 | 香蕉国产在线视频 | 国产日韩欧美在线观看 | 欧美成人第一页 | 国产成人精品久久二区二区 | 午夜成人免费视频 | 欧美日韩国产一区二区三区 | 黄色毛片免费看 | 亚洲一区二区三区久久久 | 久久久久国产一区二区三区四区 | 999免费视频| 亚洲精品福利在线 | 免费高清av | 午夜精品福利视频 | 色橹橹欧美在线观看视频高清 | 亚洲欧美视频一区 | 精品国产乱码久久久久久牛牛 | 久久青草av | 古典武侠第一页久久777 | 亚洲人成网站777色婷婷 | 天堂va在线 | 日韩羞羞 | 在线一区二区三区 | 国产伦精品一区二区三区精品视频 | 西西裸体做爰视频 | 少妇一区二区三区 | 久久久婷婷 | 人人操日日干 | 日本a级大片 | 亚洲精品99 | 中文字幕视频在线 | 国产精品久久久久久久久久久久久 | 欧美日韩精品一区二区三区蜜桃 | 欧美天堂在线观看 | 亚洲国产精品视频 | 黄色三级毛片 | 欧美激情国产日韩精品一区18 |