小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

avr單片機(jī)8位定時(shí)器LED精確1秒閃爍程序

 共同成長(zhǎng)888 2015-07-19

avr單片機(jī)8位定時(shí)器LED精確1秒閃爍程序 

 /*
      程序名 (program name): 定時(shí)器程序 (LED精確一秒閃爍)

     芯片名(chip name): 艾特梅爾公司 MEGA16A 芯片;

     概述:   利用8位定時(shí)器0 完成精確定時(shí),其中,定時(shí)器0溢出 重設(shè)初始值和溢出位清零很重要,
     一旦定時(shí)器溢出,溢出標(biāo)志位不會(huì)自動(dòng)清零,注意!此時(shí)需要向定時(shí)器0溢出標(biāo)志位位TOV0
 寫"1",它就會(huì)自動(dòng)清零;TOV0在TIFR寄存器的末位,溢出位不能位尋址(不能位操作);   
   
完成(finish time) : 2014年2月28日13:50:14
 噢 ,,,'主碼' 時(shí)間了,,,
            

*/

#include <avr/io.h>
#include <avr/interrupt.h>    //中斷頭文件..

typedef unsigned char uint8;
typedef unsigned int uint16;

 


io()     //初始化所有IO口函數(shù);
{
   DDRA=0Xff;
   PORTA=0Xff;

   DDRB=0XFF;
   PORTB=0X00;

   DDRC=0XFF;
   PORTC=0X00;

   DDRD=0XFF;
   PORTD=0XFF;
 


}

mcu()  //
{

  TCNT0=0x6A;//定時(shí)器初始值寄存器,設(shè)置 初始值 (此寄存器的值自增到255再加一就是0了);
  TCCR0=0x02;//定時(shí)器0分頻設(shè)置寄存器  定時(shí)器8分頻.

    //定時(shí)器公式:   256 - (12兆(機(jī)器頻率) ÷ 分頻) X (溢出時(shí)間) =初始值;

}

int main(void)

{
     uint16 i=0,j=0;

io();  //初始化所有io口;
mcu(); //設(shè)置定時(shí)器分頻和初始值;

     
PORTB=0X04; //LED共陽極使能;
while(1)
{

   if((TIFR&0X01)==1)   //如果定時(shí)器溢出;
 { 
    j++;
    
 TCNT0=0x6a;    //重設(shè)初始值,溢出時(shí)間是0.0001秒;
              TIFR|=0X01;    //!!!!!!!!!這個(gè)很重要,一定要將溢出位置一,它就會(huì)自己清零;
 }

         if(j ==9932)//溢出一次用時(shí)100微妙,變量j加一,加一萬次用時(shí)1秒,邏輯分析儀捕捉到
 {          //PA口跳變時(shí)間有一點(diǎn)誤差,稍作調(diào)整,,
   j=0;
            PORTA^=0XFF; 

 }


}


}
 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多