色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用定時(shí)器編寫的4相八拍步進(jìn)電機(jī)程序

          用定時(shí)器編寫的4相八拍步進(jìn)電機(jī)程序

          作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏
          這個(gè)用了定時(shí)器實(shí)現(xiàn)步進(jìn)電機(jī)調(diào)速這樣更省CPU到時(shí)候跟其他程序組織的時(shí)候可移植性好
          #include
          code unsigned char BUJIN[] = { 0x01, 0x03 , 0x02 , 0x06 , 0x04 , 0x0c , 0x08 , 0x09 } ;// 節(jié)拍代碼
          unsigned char i ;
          void Init_Timer1(void)
          {
          TMOD |= 0x10; //使用模式1,16位定時(shí)器,使用"|"符號(hào)可以在使用多個(gè)定時(shí)器時(shí)不受影響
          TH1=0x00; //給定初值,這里使用定時(shí)器最大值從0開始計(jì)數(shù)一直到65535溢出
          TL1=0x00;
          EA=1; //總中斷打開
          ET1=1; //定時(shí)器中斷打開
          TR1=1; //定時(shí)器開關(guān)打開
          }
          void main( void )
          {
          unsigned int k = 30 ;
          char a = 0 ; // ,
          Init_Timer1() ;
          for(;;)
          {
          if(i == 5 )
          {
          i = 0 ;
          P1 = BUJIN[a] ;
          a++ ;
          if(a == 8)a= 0;
          }
          }
          }
          void Timer1_isr(void) interrupt 3
          {
          TH1 = 0xff ; //重新賦值
          TL1 = 0x00 ;
          i++ ;
          }



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉