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

專注電子技術學習與研究
當前位置:單片機教程網 >> STM32 >> 瀏覽文章

stm8s 定時器2使用

作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月09日   【字體:

    最近開始使用stm8s103k單片機,今天記錄一下它的定時器2的使用。

    首先需要說明一下,stm8s的中午手冊里面寫著TIM2 16位向上計數,這個是錯誤的。

    stm8s定時易于使用,首先設定定時器的時鐘頻率,知道了定時器的時鐘周期T,那么定時時間Tn就確定了,即      Tn = T * ARR(自動裝載數據)。

   程序如下:

1、單片機時鐘設定:

 //fmaster=fcpu=2MHz
 CLK_ECKR=0x00;
 CLK_ICKR=0x01;
 CLK_CMSR=0xe1;
 
 CLK_SWR=0xe1;
 CLK_CKDIVR=0x18;

2、定時器TIM2初始化

//定時器2初始化fmaster/分頻=2M/2=1M,1us計數一次,50us 中斷一次
void TIM2_Init(void)
{
  _asm("sim");       //sim是禁止中斷
  TIM2_IER  = 0x00;  //禁止中斷
 
  TIM2_EGR  =0x01;   //允許產生更新標志
  TIM2_PSCR =0x01;   //設置時鐘分頻 2M/2=1MHz---1us

  TIM2_ARRH = 0x00;  //0x32=50;  周期=50次,每50us復位一次定時器2
  TIM2_ARRL = 0x32;  //ARR自動裝載值,每1us遞減1          
 
  TIM2_CNTRH=0x00;   //初值
  TIM2_CNTRL=0x00;
 
  TIM2_CR1 |= 0x81;  //開啟定時器
  TIM2_IER |= 0x01;  //允許中斷 
  _asm("rim");       //rim使能中斷
 
}

3、中斷執行程序


@far @interrupt void TIM2_UPD_IRQHandler(void)
{
   TIM2_SR1 &=~(0x01);//=0x0e;//清楚中斷標志位
   PC_ODR=~PC_ODR;//需要先配置pc,pb為輸出口
   PB_ODR=~PB_ODR;

}

4、修改中斷向量表

打開stm8_interrupt_vector.c文件,添加如下內容:

extern @far @interrupt void TIM2_UPD_IRQHandler(void);

修改下面一行:

{0x82, NonHandledInterrupt},

為:

{0x82,(interrupt_handler_t)TIM2_UPD_IRQHandler},

 

到此OK了,可以試試。

在我操作過程中,遇到一個很頭疼的問題,就是下載器常常不好用,錯誤號30006,30003.

這兩種情況下,首先確認你的stlink接線是否正確,其次量一下4根下載針電壓,正確為:5V,Gnd,NRST-5V,SWIM-0v,(大致如此)。如果沒有上面的問題,就可能是下載器和電腦沒有連接好。需要重新軟件連接和確認(Target-setting)。

關閉窗口

相關文章

主站蜘蛛池模板: 久久国产精品72免费观看 | 国产h视频| 91国语清晰打电话对白 | 久久网一区二区三区 | 免费中文字幕日韩欧美 | 狠狠爱一区二区三区 | 亚洲男女视频在线观看 | 欧美aⅴ | 久草福利| 激情综合五月 | 精品国产乱码一区二区三区a | 久久久久久国产精品久久 | 成人国产在线观看 | 亚洲天天干 | 综合久久99 | 久久久久一区 | 一区二区三区久久 | 欧美一区二区三区大片 | 欧美久久久久 | 伊人在线| 国产7777 | 亚洲国产一区二区在线 | 国产人成在线观看 | 特黄色一级毛片 | 91麻豆精品一区二区三区 | 99精品国产一区二区三区 | 久久乐国产精品 | 成人欧美| 老熟女毛片 | 二区av | 久久精品一级 | 精品久久免费 | 久草在线 | 888久久久 | 久久这里只有精品首页 | 成人精品在线观看 | 能看的av | 国产乱码精品1区2区3区 | 黄色大片免费网站 | 日韩高清在线 | 国产在线不卡 |