亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標(biāo)題:
STC8H8K64 PWM互補輸出3路信號
[打印本頁]
作者:
huxingjie9
時間:
2025-11-5 16:45
標(biāo)題:
STC8H8K64 PWM互補輸出3路信號
#include "STC8H.h"
// 定義 PWM 引腳(主通道和互補通道)
sbit PWM1_OUT = P3^0; // 主 PWM1
sbit PWM1B_OUT = P3^1; // 互補 PWM1
sbit PWM2_OUT = P3^2; // 主 PWM2
sbit PWM2B_OUT = P3^3; // 互補 PWM2
sbit PWM3_OUT = P3^4; // 主 PWM3
sbit PWM3B_OUT = P3^5; // 互補 PWM3
// PWM 占空比(0~255,8位PWM)
unsigned char PWM1_Duty = 128; // 50% 占空比
unsigned char PWM2_Duty = 128;
unsigned char PWM3_Duty = 128;
// 死區(qū)時間(單位:us,需根據(jù)實際需求調(diào)整)
#define DEAD_TIME 2 // 2us 死區(qū)
// 延時函數(shù)(微秒級,根據(jù)系統(tǒng)時鐘調(diào)整)
void DelayUs(unsigned int us) {
while(us--);
}
// 初始化 PCA 模塊為 8 位 PWM 模式
void PCA_Init() {
PCA_PWM0 = 0x00; // 通道0:8位PWM,無相位反轉(zhuǎn)
PCA_PWM1 = 0x00; // 通道1:8位PWM,無相位反轉(zhuǎn)
PCA_PWM2 = 0x00; // 通道2:8位PWM,無相位反轉(zhuǎn)
// 設(shè)置 PCA 時鐘源:系統(tǒng)時鐘/12(假設(shè)系統(tǒng)時鐘11.0592MHz,PWM頻率≈11.0592MHz/(12*256)≈3.58kHz)
PCA_CLK = 0x02; // 時鐘源選擇:SYSclk/12
// 設(shè)置初始占空比
PCA0 = 255 - PWM1_Duty; // 8位PWM:占空比 = (255 - PCAx)/256
PCA1 = 255 - PWM2_Duty;
PCA2 = 255 - PWM3_Duty;
// 使能 PCA 中斷和模塊
EA = 1; // 總中斷使能
EPCA = 1; // PCA 中斷使能
PCA_RUN = 1; // 啟動 PCA 計數(shù)器
}
// PCA 中斷服務(wù)函數(shù)(處理互補輸出和死區(qū))
void PCA_ISR() interrupt 7 {
// 清除中斷標(biāo)志
if (CCF0) CCF0 = 0; // 通道0中斷標(biāo)志
if (CCF1) CCF1 = 0; // 通道1中斷標(biāo)志
if (CCF2) CCF2 = 0; // 通道2中斷標(biāo)志
// 讀取當(dāng)前主 PWM 狀態(tài)(高/低電平)
bit pwm1_state = PWM1_OUT;
bit pwm2_state = PWM2_OUT;
bit pwm3_state = PWM3_OUT;
// 生成互補 PWM(帶死區(qū))
// 1. 主 PWM 為高電平時,互補 PWM 先關(guān)斷,延時死區(qū)后再開低電平
// 2. 主 PWM 為低電平時,互補 PWM 先關(guān)斷,延時死區(qū)后再開高電平
// 處理 PWM1 互補
PWM1B_OUT = 0; // 先關(guān)斷互補通道
DelayUs(DEAD_TIME); // 死區(qū)延時
PWM1B_OUT = !pwm1_state;// 互補輸出
// 處理 PWM2 互補
PWM2B_OUT = 0;
DelayUs(DEAD_TIME);
PWM2B_OUT = !pwm2_state;
// 處理 PWM3 互補
PWM3B_OUT = 0;
DelayUs(DEAD_TIME);
PWM3B_OUT = !pwm3_state;
}
void main() {
PCA_Init();
while(1) {
// 可在此動態(tài)調(diào)整占空比(示例:固定占空比)
// PWM1_Duty = ...;
// PCA0 = 255 - PWM1_Duty;
}
}
復(fù)制代碼
作者:
cb20cb08
時間:
2026-4-21 20:28
STC8H8K64 沒有PCA 模塊吧,我看手冊上沒有。
作者:
cb20cb08
時間:
2026-4-21 20:33
8H8K64U有PCA模塊嗎?我看手冊上沒有。
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1