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

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

QQ登錄

只需一步,快速開(kāi)始

搜索

STC8單片機(jī)做逆變50hz,這里的例子程序,要怎么改?

查看數(shù): 3009 | 評(píng)論數(shù): 22 | 收藏 3
關(guān)燈 | 提示:支持鍵盤(pán)翻頁(yè)<-左 右->
    組圖打開(kāi)中,請(qǐng)稍候......
發(fā)布時(shí)間: 2021-11-24 15:58

正文摘要:

一個(gè)SPWM帶有死區(qū)的程序 用STC8A8K64S4A12單片機(jī)編寫(xiě)的SPWM //一個(gè)SPWM帶有死區(qū)的程序 用STC8A8K64S4A12單片機(jī)編寫(xiě)的SPWM //介紹了一種高性能微機(jī)控制的單相 SPWM 變頻調(diào)速系統(tǒng) // SPWM信號(hào)經(jīng)低通濾波后可變換為正弦 ...

回復(fù)

ID:844772 發(fā)表于 2021-12-28 09:09
你仔細(xì)研究T_SinTable[]就發(fā)現(xiàn),它有兩個(gè)1220,按你4個(gè)0的說(shuō)法,T_SinTable[]第一個(gè)1220是上個(gè)波末和這個(gè)波初的兩個(gè)零,中間一個(gè)1220時(shí)同一個(gè)波上半周和下半周的兩個(gè)零。
你務(wù)必用示波器看一下,特別是看一下死區(qū)對(duì)不對(duì),再加負(fù)載啊,覺(jué)得程序還不很成熟。
另外驅(qū)動(dòng)電飯鍋也就算了,卷簾門(mén)是感性電路啊
ID:675799 發(fā)表于 2021-12-28 08:57
本帖最后由 hww22 于 2021-12-28 09:27 編輯

********************* PWM中斷函數(shù)************************/
void PWM_int (void) interrupt PWM_VECTOR
{
  u16        j;
  u8        SW2_tmp;
  if(PWMCFG & CBIF)        //PWM計(jì)數(shù)器歸零中斷標(biāo)志 PWMCFG
  {
    PWMCFG &= ~CBIF;        //清除中斷標(biāo)志
    SW2_tmp = P_SW2;        //保存SW2設(shè)置
    EAXSFR();                //訪問(wèn)XFR
    j = T_SinTable[PWM_Index];
    if (過(guò)流)             ////////////     過(guò)流 降壓   
j=j*0.6              // 降壓為 原來(lái)0.6                              //////////////////////////
    PWM3T2H = (u8)(j >> 8);        //第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié)
    PWM3T2L  = (u8)j;                        //第二個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)
    j += PWM_DeadZone;                //死區(qū)if(j==1220)                    ///////////    2個(gè)下管 輪流50HZ方波  p2.6 p.27初值,  要與 上管, 的初值 相反。
{  P 2.6=~P 2.6;
   P2.7=~P2.7;
}
    // 指向PWM4   PWM4T2H = (u8)(j >> 8);        //第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié)
    PWM4T2L = (u8)j;                        //第二個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)
    P_SW2 = SW2_tmp;        //恢復(fù)SW2設(shè)置
    if(++PWM_Index >= 200)   
    PWM_Index = 0;
  
  }
}


ID:675799 發(fā)表于 2021-12-28 08:34
本帖最后由 hww22 于 2021-12-28 08:57 編輯
glinfei 發(fā)表于 2021-12-27 17:49
你過(guò)流時(shí),應(yīng)該不動(dòng)T1,只改T2就行啊,根據(jù)過(guò)流情況給 T_SinTable乘以一個(gè)百分比整體降壓;你是在做H橋逆變 ...

直流310V , H 橋 的。       自己做來(lái)玩玩, 驅(qū)動(dòng) 卷簾門(mén),之類(lèi)。 停電神器。
T_SinTable 乘以一個(gè)百分比整體降壓, 放在中斷函數(shù) 里面,是吧。
這么說(shuō) 我把2個(gè) 下管 輪流送 方波信號(hào), 就可以了。  
if (j==1220)   //0值, 就切換方波 比如 P1.6    P1.7
{P1.6 =0;
P1.7 =1; }
if (j==???)   //0值, 就切換方波 比如 P1.6    P1.7
{P1.6 =1;
P1.7 =0; }


問(wèn)題是  1個(gè)周期有 4個(gè) 0值吧。  其余3個(gè) 呢?
ID:844772 發(fā)表于 2021-12-27 17:49
本帖最后由 glinfei 于 2021-12-27 18:09 編輯

你過(guò)流時(shí),應(yīng)該不動(dòng)T1,只改T2就行啊,根據(jù)過(guò)流情況給 T_SinTable[PWM_Index]乘以一個(gè)百分比整體降壓;你是在做H橋逆變吧?帶了死區(qū),沒(méi)啥特別建議,分別看看波形再上負(fù)載;
你是在直流上做正弦波,零在T_SinTable[]=1220,實(shí)在不行你就利用PWM控制你說(shuō)的上下管導(dǎo)通(帶了死區(qū));利用PWM_Index控制左右管導(dǎo)通?
另外,調(diào)整T_SinTable[],很容易做出你圖一的波形。
ID:675799 發(fā)表于 2021-12-27 15:37
glinfei 發(fā)表于 2021-11-30 09:08
對(duì)啊,我說(shuō)的就是這個(gè)意思。

為了降低 脈沖突變, 所以現(xiàn)在是 2個(gè)上管,輪流送 正弦波脈沖, 2個(gè)下管輪流送同級(jí)性的電平信號(hào)。
都是在 讀取的 0值, (最小值0)。 進(jìn)行 下管切換換的。

程序要怎么寫(xiě)才合理。
ID:675799 發(fā)表于 2021-12-27 15:27
SURUBU1976 發(fā)表于 2021-12-7 19:27
寫(xiě)程序要與硬件配合的,都沒(méi)有實(shí)質(zhì)的科目怎么討論?

實(shí)際上,電路 很多是1邊輸入 正弦波脈沖, 1邊輸入 同極性的 電平信號(hào)。
ID:507641 發(fā)表于 2021-12-7 19:27
寫(xiě)程序要與硬件配合的,都沒(méi)有實(shí)質(zhì)的科目怎么討論?
ID:675799 發(fā)表于 2021-12-6 10:46
while (1)
  {
    for(i=1;i!=0;i<<=1)  // 0000 0000
    {///////////
if (過(guò)流)
          { PWM3T1 = 65; // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 35  ??
  PWM3T2=1220;         // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 610  ???
PWM4T1= 65-PWM_DeadZone;                        // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)  降級(jí)脈沖 65改35??
  PWM4T2 = (1220+PWM_DeadZone); // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié) 1220改610 ??

}
if(輕負(fù)荷)
{ PWM3T1 = 65; // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 30  ??
  PWM3T2=1220;         // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 405  ???
PWM4T1= 65-PWM_DeadZone;                        // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)  降級(jí)脈沖 65改30??
  PWM4T2 = (1220+PWM_DeadZone); // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié) 1220改610 ??

}//////////////
if(不過(guò)流)
   { PWM3T1 = 65; // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 35  ??
  PWM3T2=1220;         // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 610  ???
PWM4T1= 65-PWM_DeadZone;                        // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)  降級(jí)脈沖 65改35??
  PWM4T2 = (1220+PWM_DeadZone); // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié) 1220改610 ??

}//////////////
ID:675799 發(fā)表于 2021-12-3 11:36
glinfei 發(fā)表于 2021-12-1 08:56
不過(guò)是調(diào)整PWM2_2的T1T2,減小占空比而已,要注意是動(dòng)態(tài)調(diào),不過(guò)流就增大占空比,使得一直處于快要過(guò)流狀 ...

oid main(void)
{
  unsigned char i;
  OE245 =0;
  LED_OUT =1;
  PWM_config();        //初始化PWM
  EA = 1;                //允許全局中斷
  while (1)
  {
    for(i=1;i!=0;i<<=1)  // 0000 0000
    {///////////
if (過(guò)流)
          { PWM3T1 = 65; // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 35  ??
  PWM3T2=1220;         // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 610  ???
PWM4T1= 65-PWM_DeadZone;                        // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)  降級(jí)脈沖 65改35??
  PWM4T2 = (1220+PWM_DeadZone); // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié) 1220改610 ??

}
if(不過(guò)流)
   { PWM3T1 = 65; // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 35  ??
  PWM3T2=1220;         // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù) 改 610  ???
PWM4T1= 65-PWM_DeadZone;                        // 第一個(gè)翻轉(zhuǎn)計(jì)數(shù)低字節(jié)  降級(jí)脈沖 65改35??
  PWM4T2 = (1220+PWM_DeadZone); // 第二個(gè)翻轉(zhuǎn)計(jì)數(shù)高字節(jié) 1220改610 ??

}//////////////
      Port =~i; //0111 1111
      delay(200000);
    }
  }
}
ID:844772 發(fā)表于 2021-12-1 08:56
hww22 發(fā)表于 2021-11-30 15:04
如果要檢測(cè),輸出的4個(gè)管子,過(guò)流,然后,降低脈寬(功率),要怎么寫(xiě)代碼? P1.2端口,低電平表示過(guò)流。  ...

不過(guò)是調(diào)整PWM2_2的T1T2,減小占空比而已,要注意是動(dòng)態(tài)調(diào),不過(guò)流就增大占空比,使得一直處于快要過(guò)流狀態(tài)。
ID:675799 發(fā)表于 2021-11-30 15:04
glinfei 發(fā)表于 2021-11-30 09:08
對(duì)啊,我說(shuō)的就是這個(gè)意思。

如果要檢測(cè),輸出的4個(gè)管子,過(guò)流,然后,降低脈寬(功率),要怎么寫(xiě)代碼? P1.2端口,低電平表示過(guò)流。 因?yàn)樵“詥?dòng)電流大,所以要低功率,啟動(dòng)1下。
ID:844772 發(fā)表于 2021-11-30 09:08
hww22 發(fā)表于 2021-11-30 08:46
24000000L /200點(diǎn) /2400計(jì)數(shù)器=50HZ,

如果 要輸出 45,   240000000/200 /2666=45hz   

對(duì)啊,我說(shuō)的就是這個(gè)意思。
ID:675799 發(fā)表于 2021-11-30 08:46
24000000L /200點(diǎn) /2400計(jì)數(shù)器=50HZ,

如果 要輸出 45,   240000000/200 /2666=45hz   
PWMC = 2666;        // PWM計(jì)數(shù)器的高字節(jié) ,  2666為45HZ
  PWMCKS = PwmClk_1T;        // 時(shí)鐘源: PwmClk_1T,PwmClk_2T, ... PwmClk_16T, PwmClk_Timer2
ID:844772 發(fā)表于 2021-11-29 17:39
1.這里是用積分表示SIN函數(shù),你可以理解把一個(gè)周期切成200片,通過(guò)占空比不同,用矩形波代替每片的函數(shù),然后再通過(guò)低通就是正弦波了。
2.用200個(gè)PWM(不同占空比的波)表示一個(gè)正弦波。
3.所以就很明顯了,你sin函數(shù)的頻率就是PWM頻率除以200,要調(diào)整頻率就幾種了,一種是調(diào)整PWM,一種是改變函數(shù)取樣數(shù)量(目前是200),還有就是用幾個(gè)PWM處理一片(這樣會(huì)更平滑)。
不知道我說(shuō)明白沒(méi),好多人不懂其實(shí)是數(shù)學(xué)問(wèn)題。

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

ID:675799 發(fā)表于 2021-11-29 10:04
wc86110 發(fā)表于 2021-11-27 05:34
弱弱的問(wèn)一句,上面的 《……T_SinTable[]={……》怎么來(lái)的?

定義1個(gè) 正弦波sin數(shù)組, 數(shù)值,是他們用軟件生成,終值1220
ID:96682 發(fā)表于 2021-11-27 05:34
弱弱的問(wèn)一句,上面的 《……T_SinTable[]={……》怎么來(lái)的?
ID:675799 發(fā)表于 2021-11-25 16:34
繼續(xù)問(wèn),直到有人會(huì), 估計(jì)也沒(méi)幾個(gè)會(huì)。  會(huì)皮毛的,估計(jì)也不多。
ID:123289 發(fā)表于 2021-11-25 16:06
1、你想達(dá)成什么目的?假設(shè)是A。
2、你給出的例子,達(dá)成了什么目的?假設(shè)是B。
3、A與B有什么關(guān)聯(lián),你想利用B的哪些東東,來(lái)達(dá)成A。
4、從B到A,哪幾項(xiàng)不會(huì),需要幫助?
擰得清?


ID:624769 發(fā)表于 2021-11-25 14:49
回復(fù) +1
要回復(fù)容易,這就給你回復(fù)了。
問(wèn)題是,別人如何我不知道,我是因?yàn)槟愕念}目看不懂,所以,幫不了你…… 只好一直不回復(fù)……
ID:675799 發(fā)表于 2021-11-25 14:03
估計(jì)這個(gè) 掛這個(gè)1年,總有回復(fù)1下答案吧。
ID:675799 發(fā)表于 2021-11-24 16:05
這個(gè) 并沒(méi)有直接指定 頻率, 那要 50HZ, 或則45HZ, 要怎么修改。

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成年无码av片在线 | 日本成人免费网站 | 精品久久电影 | 日韩成人免费av | 国产一区二区三区不卡av | 国产精品久久久一区二区三区 | 日韩在线视频一区二区三区 | 一级片免费观看 | 台湾佬久久| 国产美女精品视频 | 蜜桃视频成人 | 久久中文视频 | 国产在线视频一区二区 | 国产伦精品一区二区三区照片91 | 国产精品久久久久久婷婷天堂 | 日本精品久久久久 | 久久久新视频 | 日本一区二区在线视频 | 成年人在线观看 | 欧美性高潮| 欧美国产视频一区二区 | 99精品视频在线观看 | 日韩中文在线观看 | 久久久精选 | 中文字幕亚洲在线 | 午夜a区 | 成人久久久 | 成人av一区二区三区 | 在线成人免费视频 | 色婷婷综合久久久久中文一区二区 | 国产成人a亚洲精品 | 亚洲一级黄色 | 精品视频免费在线 | 久久一区精品 | 天堂久久网 | 国产精品成av人在线视午夜片 | 美女一级毛片 | 欧美日韩国产一区二区三区 | av资源中文在线 | 久久亚洲综合 | 国产日韩在线观看一区 |