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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2332|回復: 0
收起左側

stm8對電機調速程序

[復制鏈接]
ID:206568 發(fā)表于 2017-6-1 16:44 | 顯示全部樓層 |閱讀模式
#include"canshu.h"
uint t;
uchar time2_2h=4,time2_2l=4;
void TIM2_Init()
{
TIM2_CCMR2 = TIM2_CCMR2 | 0x70;// Output modePWM2.         
                                //通道2被設置成比較輸出方式
                                // OC2M = 111,PWM模式2
                                // 向上計數(shù)時,若計數(shù)器小于比較值,為無效電平
                                // 即當計數(shù)器在0到比較值時,輸出為1,否則為0
TIM2_CCMR1 = TIM2_CCMR1 | 0x70;
TIM2_CCMR3 = TIM2_CCMR3 | 0x70;
TIM2_CCER1 = TIM2_CCER1 | 0x33;// CC polarity low,enable PWMoutput      */
                                // CC2P = 1,低電平為有效電平
                                // CC2E = 1,開啟輸出引腳               
TIM2_CCER2 = TIM2_CCER2 | 0x03;
//初始化自動裝載寄存器,決定PWM方波的頻率,Fpwm=16000000/1000=16kHZ      
  TIM2_ARRH = 16000/255;
  TIM2_ARRL = 16000%255;
  
   TIM2_CCR1H =time2_2h;
  TIM2_CCR1L = time2_2l=4;
//初始化比較寄存器,決定PWM方波的占空比            
  TIM2_CCR2H =1000/255;
  TIM2_CCR2L =1000%255;
      
  TIM2_CCR3H = 1000/255;
  TIM2_CCR3L = 1000%255;
//初始化時鐘分頻器為1,即計數(shù)器的時鐘頻率為Fmaster=4MHZ
  TIM2_PSCR =0x00;//因為用了繼電器,所以喲分頻,可到0x08,256分頻
//啟動計數(shù)
TIM2_CR1 = TIM2_CR1 | 0x01;
}
//外部中斷觸發(fā)
void exit_init()
{
   PC_DDR&=~0x04;
   PC_CR1|=0x04;
   PC_CR2|=0x04;
   EXTI_CR1|= 0x10;
  
   
}
#pragma vector=0x07 // 這里很關鍵!看下面說明。
__interrupt void EXTI_PC1(void)
{
  asm("sim");
  switch(EXTI_CR1)
  {
  case 0x10:EXTI_CR1=0x20;exit_flag=1;break;
  case 0x20:EXTI_CR1=0x10;exit_flag=2;break;
  default :exit_flag=0;break;
  }
if(exit_flag==2)
{
    t++;
   exit_flag=0;
   if(t%10==0)
   {
      ulong chaju;
      now_nus=TIM4_CNTR;
      now_ms=cishu;
     chaju_ms=now_ms-last_ms;
   if(cishu_flag==1)
   {
     cishu_flag=0;
     chaju_ms=30000+now_ms-last_ms;
   }
      chaju_nus=now_nus-last_nus;
      chaju=chaju_ms*250+chaju_nus;
      now_rads=(1250000/chaju);
      last_nus=now_nus;
      last_ms=now_ms;
      last_rads[rads_flag++]=now_rads;
      if(rads_flag==10)
        rads_flag=0;
    pid_error=now_rads-last_radss;
    pid_error1=last_radss-last_radsss;
     last_radsss=last_radss;
     last_radss =now_rads;
   }
}
   asm("rim");
}
#pragma vector=TIM2_OVR_UIF_vector
     __interrupt void TIM3_OVF_IRQHandler(void)
    {
        
         TIM2_SR1 = 0x00;
         ds1820_flag=1;
    }
//定時器2產(chǎn)生60s的中斷
void TIM2_time()
{
     TIM2_EGR=0x01; //手動產(chǎn)生更新事件,重新初始化計數(shù)器,并允許產(chǎn)生一個更新事件   
    //設置定時器初值  
    TIM2_CNTRH=0; //不能使用TIM3_CNTR直接設值,
    TIM2_CNTRL=0;   
    //設定自動重裝寄存器值      
    //這里得注意不能使用TIM2_ARR的方式進行設值,TIM2是十六位的。  
    //TIM2_ARR=0xFA,實際上是賦給高字節(jié)了,TIM2_ARRH=0xFA,而不是想象中的賦給低字節(jié)。  
    TIM2_ARRH=0x72; //488hz 488 /29280  = 60s (1S)  
    TIM2_ARRL=0x60; //0x007d   意味著每產(chǎn)生一次中斷時間為60S  
    TIM2_PSCR=0x0f; //預分頻32275
  
    TIM2_IER=0x01; //中斷允許位使能  
    TIM2_CR1=0x01; //使能計時器  
}

回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜私人影院在线观看 | 国产精品久久久久久一级毛片 | 亚洲精品久久久久久久久久吃药 | 国产精品久久久久久久久大全 | 精品自拍视频 | 欧美成人一区二区三区 | 91色视频在线 | av网站在线播放 | 在线观看h视频 | 久久久成人动漫 | 国产毛片毛片 | 国产91丝袜 | 中文字幕成人 | 日本特黄a级高清免费大片 特黄色一级毛片 | 国产精品福利视频 | 小h片免费观看久久久久 | 成人在线小视频 | 视频一区在线 | 成人性视频免费网站 | 精品久久久网站 | 91se在线 | 久久综合一区 | 久久久久久国产精品免费免费男同 | 一区二区成人 | 天堂视频免费 | 日韩久久精品电影 | 男人天堂99 | 成人福利电影 | 亚洲视频一区在线观看 | 色888www视频在线观看 | 精品国产一区二区三区久久久久久 | 97精品国产 | 一区二区三区四区日韩 | 国产精品亚洲综合 | 视频一区二区在线观看 | 3级毛片| aa级毛片毛片免费观看久 | 波多野结衣中文视频 | 天天操,夜夜爽 | 精品久久香蕉国产线看观看亚洲 | 国产一区二区三区在线 |