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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2094|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

stm32f429. PWM輸出實驗

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:418941 發(fā)表于 2018-11-6 23:08 來自觸屏版 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include "timer.h"
#include "led.h"
   
//修改說明
//V1.1 20160106
//新增TIM3_PWM_Init函數(shù),用于PWM輸出
//////////////////////////////////////////////////////////////////////////////////         

TIM_HandleTypeDef TIM3_Handler;         //定時器3PWM句柄
TIM_OC_InitTypeDef TIM3_CH4Handler;            //定時器3通道4句柄

//TIM3 PWM部分初始化
//PWM輸出初始化
//arr:自動重裝值
//psc:時鐘預(yù)分頻數(shù)
void TIM3_PWM_Init(u16 arr,u16 psc)
{
    TIM3_Handler.Instance=TIM3;            //定時器3
    TIM3_Handler.Init.Prescaler=psc;       //定時器分頻
    TIM3_Handler.Init.CounterMode=TIM_COUNTERMODE_UP;//向上計數(shù)模式
    TIM3_Handler.Init.Period=arr;          //自動重裝載值
    TIM3_Handler.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;
    HAL_TIM_PWM_Init(&TIM3_Handler);       //初始化PWM

    TIM3_CH4Handler.OCMode=TIM_OCMODE_PWM1; //模式選擇PWM1
    TIM3_CH4Handler.Pulse=arr/2;            //設(shè)置比較值,此值用來確定占空比,默認(rèn)比較值為自動重裝載值的一半,即占空比為50%
    TIM3_CH4Handler.OCPolarity=TIM_OCPOLARITY_LOW; //輸出比較極性為低
    HAL_TIM_PWM_ConfigChannel(&TIM3_Handler,&TIM3_CH4Handler,TIM_CHANNEL_4);//配置TIM3通道4
        
    HAL_TIM_PWM_Start(&TIM3_Handler,TIM_CHANNEL_4);//開啟PWM通道4
}


int main(void)
{
    u8 dir=1;
    u16 led0pwmval=0;  
    HAL_Init();                     //初始化HAL庫   
    Stm32_Clock_Init(360,25,2,8);   //設(shè)置時鐘,180Mhz
    delay_init(180);                //初始化延時函數(shù)
    uart_init(115200);              //初始化USART
    LED_Init();                     //初始化LED
    TIM3_PWM_Init(500-1,90-1);      //90M/90=1M的計數(shù)頻率,自動重裝載為500,那么PWM頻率為1M/500=2kHZ
    while(1)
    {
                delay_ms(10);                 
                if(dir)led0pwmval++;                                //dir==1 led0pwmval遞增
                else led0pwmval--;                                //dir==0 led0pwmval遞減
                if(led0pwmval>300)dir=0;                        //led0pwmval到達(dá)300后,方向為遞減
                if(led0pwmval==0)dir=1;                        //led0pwmval遞減到0后,方向改為遞增
                TIM_SetTIM3Compare4(led0pwmval);        //修改比較值,修改占空比
    }
}


//定時器底層驅(qū)動,時鐘使能,引腳配置
//此函數(shù)會被HAL_TIM_PWM_Init()調(diào)用
//htim:定時器句柄
void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim)
{
    GPIO_InitTypeDef GPIO_Initure;
        __HAL_RCC_TIM3_CLK_ENABLE();                        //使能定時器3
    __HAL_RCC_GPIOB_CLK_ENABLE();                        //開啟GPIOB時鐘
        
    GPIO_Initure.Pin=GPIO_PIN_1;                   //PB1
    GPIO_Initure.Mode=GPIO_MODE_AF_PP;          //復(fù)用推挽輸出
    GPIO_Initure.Pull=GPIO_PULLUP;          //上拉
    GPIO_Initure.Speed=GPIO_SPEED_HIGH;     //高速
        GPIO_Initure.Alternate= GPIO_AF2_TIM3;        //PB1復(fù)用為TIM3_CH4
    HAL_GPIO_Init(GPIOB,&GPIO_Initure);
}


//設(shè)置TIM通道4的占空比
//compare:比較值
void TIM_SetTIM3Compare4(u32 compare)
{
        TIM3->CCR4=compare;
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久精品国产一区老色匹 | 精品国产乱码久久久久久牛牛 | 琪琪午夜伦伦电影福利片 | 国产精品99久久免费观看 | 免费日韩网站 | 国产精品国产精品国产专区不卡 | 91国自产 | 中文字幕免费视频 | 天天拍天天草 | 日日天天 | 精彩视频一区二区三区 | 精精国产xxxx视频在线 | 99精品久久 | 日日躁狠狠躁aaaaxxxx | 精品国产一区二区三区性色av | www.国产精| 日本一区二区视频 | av中文字幕在线 | 国产高清免费视频 | 欧美日日日日bbbbb视频 | 97伦理电影网 | 欧美三级久久久 | 欧美一区永久视频免费观看 | 精品一区二区三区四区视频 | 91在线精品一区二区 | 欧美最猛性xxxxx亚洲精品 | 欧美看片| 伊人网99| 国产精品亚洲精品久久 | 国产一区二区影院 | 国产成人艳妇aa视频在线 | 日韩欧美在线不卡 | 国产精品免费在线 | 一区二区三区在线 | 久久久久久久久久久久久久久久久久久久 | 久久久精品一区二区三区 | 亚洲欧美视频一区二区 | 色播av | 在线观看欧美一区 | 国内精品视频在线 | 国产在线区 |