找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 2285|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

STC15系列單片機CCP為6位PWM輸出,正弦波計算占空比

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:883031 發(fā)表于 2022-12-17 18:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
下邊是STC15系列CCP為6位PWM輸出,正弦波計算占空比的函數(shù)

//CCP為6位PWM輸出
BYTE xdata Sin_Num[256] = {0};
#define STEP ((2.0 * PI) / 64.0)//正弦波采樣步長
#define PWM_DUTY_MIN 0X01
#define PWM_DUTY_MAX 0X3E

void GetReloadNum()
{
        int i;
        float Value = 0.0,aa = 0.0;
        
        for(i = 0;i < 64;i++)
        {
                Value = 32.0 * (1 - sin(aa));
                Sin_Num[i ] = (unsigned int)Value;
                if(Sin_Num[ i] < PWM_DUTY_MIN) Sin_Num[ i] = PWM_DUTY_MIN;
                else if(Sin_Num[ i] > PWM_DUTY_MAX) Sin_Num[ i] = PWM_DUTY_MAX;
                aa += STEP;
        }
}

這是輸出的波形,不夠漂亮。

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

使用道具 舉報

沙發(fā)
ID:1034262 發(fā)表于 2022-12-19 15:02 | 只看該作者
你要適當(dāng)?shù)臑V波,才有漂亮的波形出來。
回復(fù)

使用道具 舉報

板凳
ID:961114 發(fā)表于 2022-12-19 17:31 | 只看該作者
STC核心板有示波器模塊   波形很漂亮 可以去申請 免油費
回復(fù)

使用道具 舉報

地板
ID:883031 發(fā)表于 2022-12-22 08:36 | 只看該作者
STC莊偉 發(fā)表于 2022-12-19 17:31
STC核心板有示波器模塊   波形很漂亮 可以去申請 免油費

怎么申請?
回復(fù)

使用道具 舉報

5#
ID:879348 發(fā)表于 2022-12-22 08:48 | 只看該作者
為什么用6位呢,6位才64個點,顆粒度肯定大
回復(fù)

使用道具 舉報

6#
ID:883031 發(fā)表于 2022-12-22 14:18 | 只看該作者
wufa1986 發(fā)表于 2022-12-22 08:48
為什么用6位呢,6位才64個點,顆粒度肯定大

六位的頻率高些。
回復(fù)

使用道具 舉報

7#
ID:1042619 發(fā)表于 2022-12-22 16:04 | 只看該作者
樓主可以試試我們STC-ISP 6.91C及以上版本一體化軟件里面參考STC15系列實驗箱范例程序




回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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