<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ATMEGA32單片機(jī)控制步進(jìn)電機(jī)程序

          ATMEGA32單片機(jī)控制步進(jìn)電機(jī)程序

          作者: 時(shí)間:2013-12-12 來(lái)源:網(wǎng)絡(luò) 收藏

          /**************************************************************
          程序是調(diào)試通過(guò)的,可以直接使用,若單片機(jī)不一樣,

          只需要修改IO接口部分就可以正常工作:開(kāi)發(fā)軟件 ICC AVR ************************************************************/



          #include stdio.h>
          #include iom16v.h>


          #define uchar unsigned char
          #define uint unsigned int

          //#define M2 PD6 //M1、M2: 00 表示工作在整步方式, 10 為半步方式,
          //#define M1 PD5 // 01 為1/ 4 細(xì)分方式, 11 為1/ 8 細(xì)分方式;
          #define CK1 PA2
          #define CW_CWW PA1
          #define ENABLE_L PA0


          /***********************************************************
          串口輸出顯示
          ************************************************************/
          void usart_putchar(uchar data)
          {
          if(data=='')
          {
          usart_putchar('');
          }
          while(!(UCSRA (1UDRE)));
          UDR=data;
          }
          /************************************************************
          通過(guò)串口發(fā)送控制命令:安字母K啟動(dòng)
          ************************************************************/
          uchar usart_getchar(void)
          {
          while(!(UCSRA (1RXC)));
          return UDR;
          }
          /**************************************************************

          延時(shí)函數(shù)
          /**************************************************************
          void delay(uint i)//延時(shí)函數(shù)
          {
          uint j,k;
          for(j=0;ji;j++)
          for(k=0;k100;k++);
          }
          /**************************************************************
          串口初始化
          *********************************************************/

          void uart_init(void) //UART初始化
          { //DDRD = 0x02;
          DDRD = 0xaf;
          PORTD = 0xff;

          UCSRA = 0x02; /*無(wú)倍速*/
          UCSRB = 0x18; /*允許接收和發(fā)送*/
          UCSRC = 0x06; /*8位數(shù)據(jù),1位停止位,無(wú)校驗(yàn)*/
          UBRRH = 0x00;
          UBRRL = 12; /*9600*/

          }



          int main(void)
          {
          uchar m;
          uint n;

          DDRA = 0x7;
          PORTA |= ( 1ENABLE_L );

          /************************************************************
          若硬件控制,可以屏蔽下面2行
          ************************************************************/
          //PORTD = ~( 1M2);
          //PORTD |= ( 1M1 );

          //PORTA = ~( 1CW_CWW);//反轉(zhuǎn)
          PORTA |= ( 1CW_CWW );//正轉(zhuǎn)
          uart_init( );


          while(1)
          {
          //m = usart_getchar();
          // if( m == 'k' )
          //{
          PORTA = ~( 1ENABLE_L );
          for(n=0;n200;n++)
          {
          PORTA |= (1CK1);
          delay(1);
          PORTA = ~(1CK1);
          delay(1);
          }
          PORTA |= ( 1ENABLE_L );

          //m=0;
          //usart_putchar('o');
          //usart_putchar('k');
          //}
          }
          }



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();