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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5658|回復: 2
收起左側(cè)

STM32F1互補PWM

[復制鏈接]
ID:195946 發(fā)表于 2017-8-3 21:34 | 顯示全部樓層 |閱讀模式
void PWM_GPIO_Config(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB,ENABLE);//使能GPIO時鐘
    //正極性輸出引腳PA.8-->TIM1_CH1,PA.9-->TIM1_CH2,PA.10-->TIM1_CH2
    GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10;    //PA8 PA11
    GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;        //復用推挽輸出
    GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;   
    GPIO_Init(GPIOA,&GPIO_InitStructure);                //使能GPIOA
    //反極性輸出引腳PB.13-->TIM1_CH1N,PB.14-->TIM1_CH2N,PB.15-->TIM1_CH3N
    GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;    //PA8 PA11
    GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;        //復用推挽輸出
    GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;   
    GPIO_Init(GPIOB,&GPIO_InitStructure);                //使能GPIOB
}
/***************************************************************
*    Function     :    TIMx_PWM_Init
*    Description :    PWM初始化
*    Input           :    None
*    Output        :    None
*    Return        :    None
*   Declaration  :   定時器的初始化
****************************************************************/
void PWM_TIMx_Init(uint16_t arr,uint16_t psc)
{
    TIM_OCInitTypeDef TIM_OCInitStructure;
    TIM_BDTRInitTypeDef TIM_BDTRInitStructure;
    TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE);
    TIM_DeInit(TIM1);                                                                                            //定時器1復位
    /*定時器1初始化*/
    TIM_TimeBaseStructure.TIM_Period=arr;                                                  //自動重裝載值
    TIM_TimeBaseStructure.TIM_Prescaler=psc;                                             //預分頻系數(shù)
    TIM_TimeBaseStructure.TIM_ClockDivision=0X00;                                     //設置時鐘分割TDTS==tck_Tim
    TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;            //向上計數(shù)模式
    TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure);
    TIM_ARRPreloadConfig(TIM1,DISABLE);                                                        //禁止ARR預裝緩沖器
    /*雙路互補PWM初始化*/
    TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM1;                                //TIM_OCMode_PWM1
    TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;         //正極性輸出使能
    TIM_OCInitStructure.TIM_OutputNState=TIM_OutputNState_Enable;    //互補極性輸出使能
    TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;                //PWM輸出極性
    TIM_OCInitStructure.TIM_OCNPolarity=TIM_OCPolarity_High;              //PWM互補極性
    TIM_OCInitStructure.TIM_Pulse=450;                                                     //占空比
    TIM_OCInitStructure.TIM_OCIdleState=TIM_OCIdleState_Set;              //死區(qū)后輸出狀態(tài)
    TIM_OCInitStructure.TIM_OCNIdleState=TIM_OCIdleState_Reset;        //死區(qū)后互補極性輸出狀態(tài)
    //初始化3路正極性PWM:PA.8,PA.9,PA.10
    TIM_OC1Init(TIM1,&TIM_OCInitStructure);
    TIM_OCInitStructure.TIM_Pulse=350;
    TIM_OC2Init(TIM1,&TIM_OCInitStructure);
    TIM_OCInitStructure.TIM_Pulse=250;
    TIM_OC3Init(TIM1,&TIM_OCInitStructure);
    //配置3路正極性PWM
    //TIM_OC1PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道1預裝載使能
    //TIM_OC2PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道2預裝載使能
    //TIM_OC3PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道3預裝載使能
   
    //死區(qū)和剎車配置功能僅僅對TIM1和TIM8高級定時器有效
    TIM_BDTRInitStructure.TIM_OSSIState=TIM_OSSIState_Enable;                //空閑模式下的輸出使能
    TIM_BDTRInitStructure.TIM_OSSRState=TIM_OSSRState_Enable;                //運行模式下的輸出使能
    TIM_BDTRInitStructure.TIM_LOCKLevel=TIM_LOCKLevel_OFF;                    //鎖定設置
    TIM_BDTRInitStructure.TIM_DeadTime=0X00;                                                //設置死區(qū)時間2us
    TIM_BDTRInitStructure.TIM_Break=TIM_Break_Disable;                            //剎車功能關(guān)閉
    TIM_BDTRInitStructure.TIM_BreakPolarity=TIM_BreakPolarity_Low;    //剎車輸入極性
    TIM_BDTRInitStructure.TIM_AutomaticOutput=TIM_AutomaticOutput_Disable;//關(guān)閉自動輸出使能
    TIM_BDTRConfig(TIM1,&TIM_BDTRInitStructure);
    //高級定時器的輸出控制使能剎車MOE主輸出使能
    TIM_CtrlPWMOutputs(TIM1,ENABLE);        
    TIM_ARRPreloadConfig(TIM1,ENABLE);   
    //定時器使能   
    TIM_Cmd(TIM1,ENABLE);            
}
STM32F103C8T6 IOPA.8 PA.9 PA.10 PB.13 PB.14 PB.15
注釋這三句后:波形
         //TIM_OC1PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道1預裝載使能
         //TIM_OC2PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道2預裝載使能
         //TIM_OC3PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道3預裝載使能
未注釋的波形:
         TIM_OC1PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道1預裝載使能
         TIM_OC2PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道2預裝載使能
         TIM_OC3PolarityConfig(TIM1,TIM_OCPreload_Enable);//PWM通道3預裝載使能

未注釋的仿真波形
1.png

注釋后仿真波形
2.png
回復

使用道具 舉報

ID:493103 發(fā)表于 2019-3-18 12:22 | 顯示全部樓層
請教樓主,這個仿真是怎么弄得,有的啥軟件?謝謝
回復

使用道具 舉報

ID:410139 發(fā)表于 2019-3-28 21:23 | 顯示全部樓層
保存了,不久就可以用上,謝謝樓主
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩在线成人 | 久草久草久草 | 国内自拍第一页 | 96国产精品久久久久aⅴ四区 | 精品av天堂毛片久久久借种 | 99色综合 | 在线免费看91 | 电影91久久久 | 欧美自拍第一页 | 超碰日韩| 久久久久久久网 | 91亚洲国产| 精品九九 | 免费观看一区二区三区毛片 | 色在线免费 | 韩三级在线观看 | 国产在线精品一区二区 | 亚洲欧美日韩一区二区 | 日本免费小视频 | 国产精品日韩一区二区 | 北条麻妃一区二区三区在线视频 | 精品少妇v888av| 亚洲成人免费视频 | 国产在线播放av | 国产麻豆乱码精品一区二区三区 | 综合久| 国产观看 | 欧美日韩高清免费 | 粉嫩一区二区三区四区公司1 | 日本黄色不卡视频 | 日韩中文字幕在线免费 | 99视频网站 | 国产免费一区二区三区 | 喷潮网站| 97久久精品午夜一区二区 | 日韩视频一区二区在线 | 国产精品一区在线 | 黑人成人网 | 国产精品视频观看 | 日韩欧美中文在线 | 国产日韩精品视频 |