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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2493|回復: 0
打印 上一主題 下一主題
收起左側

這是我編寫基于STM32呼吸燈的代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:833491 發表于 2020-11-3 14:58 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
main.c
#include "stm32f10x.h"
u16 CCR1_Val=1000;
u16 CCR2_Val=0;
u8 a=0;
void Delay(__IO u32 nCount)
{
  while(nCount--);
}
void RCC_Config(void)
{
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
}
void TIM3_GPIO_Config(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;//設置一個GPIO_InitStructure結構體。
  GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7;//選擇引腳6和7。
  GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;//選擇輸出模式為復用推挽輸出。
  GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//設置引腳最高輸出速率為50MHz。
  GPIO_Init(GPIOA,&GPIO_InitStructure);//將設定好的參數初始化。
}
void TIM3_Mode_Config(void)
{
  TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;//設置一個TIM_TimeBaseStructure結構體。
  TIM_OCInitTypeDef TIM_OCInitStructure;//設置一個TIM_OCInitStructure結構體。
  TIM_TimeBaseStructure.TIM_Period=1000-1;//個人理解就是計幾個數。(由此可以得到PWM的周期)
  TIM_TimeBaseStructure.TIM_Prescaler=0;//設置用來作為 TIMx 時鐘頻率除數的預分頻值。
  TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1;//設置時鐘分割。
  TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;//選擇了計數器模式。
  TIM_TimeBaseInit(TIM3,&TIM_TimeBaseStructure);//將設置好的參數初始化。
  TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM1;//設置TIM輸出模式PWM1。
  TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;//選擇輸出比較狀態(?)
  TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;//TIM 輸出比較極性高。
  TIM_OCInitStructure.TIM_Pulse=CCR1_Val;//設置了待裝入捕獲比較寄存器的脈沖值。
  TIM_OC1Init(TIM3, &TIM_OCInitStructure);//將設定好的參數初始化給通道1。
  TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Enable);//使能TIM3在CCR1上的預裝載寄存器。
  TIM_OCInitStructure.TIM_Pulse=CCR2_Val;
  TIM_OC2Init(TIM3,&TIM_OCInitStructure);//通道2
  TIM_OC2PreloadConfig(TIM3,TIM_OCPreload_Enable);
  TIM_ARRPreloadConfig(TIM3,ENABLE);//使能TIM3在 ARR 上的預裝載寄存器。
  TIM_Cmd(TIM3,ENABLE);//使能TIM3的外設
}
int main(void)
{
    RCC_Config();
TIM3_GPIO_Config();
TIM3_Mode_Config();
while(1)
{
     if(CCR1_Val>0&&a<40&&CCR2_Val<1000)
     {
       CCR1_Val-=25;
       CCR2_Val+=25;
       TIM3_Mode_Config();
       a++;
       Delay(0XFFFF);
                         Delay(0XFFFF);
       Delay(0XFFFF);
                         Delay(0XFFFF);
     }
    else
    {
       CCR1_Val+=25;
       CCR2_Val-=25;
       TIM3_Mode_Config();
       Delay(0XFFFF);
                        Delay(0XFFFF);
                       
       a++;
    if(a==80)a=0;
     }
}
}
可以試試

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

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲综合大片69999 | 亚洲国产成人精品久久 | 91在线色视频 | a在线观看免费 | 一级片在线视频 | 国产成人在线一区 | 黑人精品欧美一区二区蜜桃 | 99久久精品国产一区二区三区 | 国产精品1区| 欧美一区二区三区国产精品 | 精品视频久久久久久 | 欧美成人精品在线 | 中文字幕第二区 | 欧美一区二区三区在线视频 | 先锋资源亚洲 | 天天插天天操 | 国产激情视频在线 | 国产成人综合久久 | 久久精品综合网 | 国产精品久久久久久久久免费桃花 | 欧美区日韩区 | 国产视频二区在线观看 | 久久国产成人午夜av影院武则天 | 成人免费淫片aa视频免费 | 欧美日韩精品一区 | 视频精品一区二区三区 | 99re在线视频免费观看 | 91精品国产综合久久婷婷香蕉 | 亚洲精品电影网在线观看 | 久久久久久久99 | 日韩a在线观看 | 亚洲啪啪 | 国产专区在线 | 日韩欧美三级电影在线观看 | 日本不卡一区二区三区 | 一区二区三区视频在线观看 | 亚洲 欧美 激情 另类 校园 | av手机在线播放 | 超碰97免费在线 | www.日韩| 日本精品一区二区三区视频 |