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

標(biāo)題: stm32控制步步進(jìn)電機(jī),角度控制與速度控制程序 [打印本頁]

作者: 2479408246    時(shí)間: 2021-8-4 14:23
標(biāo)題: stm32控制步步進(jìn)電機(jī),角度控制與速度控制程序
stm32控制步步進(jìn)電機(jī),角度控制與速度控制程序
引腳定義:
步進(jìn)電機(jī)驅(qū)動(dòng)器        
PB8----PULS+:脈沖輸出
PB9----DIR+:方向輸出
按鍵
PB12----KEY1
PB13----KEY2      
PB14----KEY3
PB15----KEY4
槽型光耦模塊
PB11----Sensor_Input
24c16 EEPROM 存儲(chǔ)器
PC13----IIC_SDA
PC14----IIC_SCL   
串口通訊
PA09(TXD)----RXD
PA10(RXD)----TXD



單片機(jī)源程序如下:
  1. //步進(jìn)電機(jī)啟動(dòng)程序
  2. #include "sys.h"
  3. #include "delay.h"
  4. #include "usart.h"
  5. #include "input.h"
  6. #include "output.h"
  7. #include "24cxx.h"

  8. vu32 speed=1000;//步進(jìn)電機(jī)速度設(shè)定
  9. s8 procedure;//記錄移動(dòng)次數(shù)

  10. u8 TEXT_Buffer[]={120,124,100,126,127};//存放將要寫入24c02數(shù)據(jù)
  11. #define SIZE sizeof(TEXT_Buffer)//獲取字節(jié)長度,保證寫入讀取數(shù)據(jù)長度相同       
  12. u8 datatemp[SIZE];//存放從24c02讀取的數(shù)據(jù)

  13. u32 TEXT_32Buffer=65535;//存放將要寫入24c02數(shù)據(jù)32位
  14. u32 data32_temp;//存放從24c02讀取的數(shù)據(jù)32位


  15. u8 a=0,b=0;
  16. int main(void)
  17. {
  18. delay_init();//延時(shí)函數(shù)初始化       
  19. uart_init(9600);       
  20. Signal_Input_Init();//GPIO IN初始化
  21. Signal_Output_Init();//GPIO OUT初始化
  22. AT24CXX_Init();       
  23.         while(AT24CXX_Check())//檢測(cè)不到24c02
  24.         {
  25.                 printf("檢測(cè)不到24cXX\r\n") ;
  26.                 delay_ms(1000);
  27.                 break;       
  28.         }       
  29.         while(1)
  30.         {               
  31.        if(KEY_Scan(0,KEY1))   
  32.            {                          
  33.            Fixed_Pulse_Output(0,625);
  34.            procedure++;
  35.           if(procedure>16)procedure=0;          
  36.            printf("procedure+=%d\r\n",procedure);   
  37.        AT24CXX_Write(0,TEXT_Buffer,SIZE);//寫入數(shù)據(jù)
  38.                   
  39. //                   for(a=0;a<SIZE;a++)
  40. //                   {
  41. //                printf("TEXT_Buffer=%d\r\n",TEXT_Buffer[a]);                                  
  42. //                   }
  43.                 AT24CXX_Read(0,datatemp,SIZE);//讀取數(shù)據(jù)
  44. //            for(b=0;b<SIZE;b++)
  45. //                   {
  46. //                printf("datatemp=%d\r\n",datatemp[b]);   
  47. //                   }
  48.                   
  49.                   
  50.            }  
  51.            if(KEY_Scan(0,KEY2))   
  52.            {
  53.            Fixed_Pulse_Output(1,625);
  54.            procedure--;
  55.            if(procedure<0)procedure=16;                  
  56.            AT24CXX_WriteLenByte(10,TEXT_32Buffer,4);
  57.           // printf("TEXT_32Buffer=%d\r\n",TEXT_32Buffer);
  58.            data32_temp=AT24CXX_ReadLenByte(10,4);   
  59.        //printf("data32_temp=%d\r\n",data32_temp);
  60.            printf("procedure-=%d\r\n",procedure);
  61.            }
  62.            if(KEY_Scan(0,KEY3))   
  63.            {
  64.                         while(speed)
  65.                         {                       
  66.                      Succession_Pulse_Output(0,speed );                               
  67.         //             printf("speed=%d\r\n",speed) ;
  68.                                 if(KEY_Scan(0,KEY4))   
  69.                            {
  70.                                 speed+=1000;  
  71.                                    if(speed>10000)speed=1000;
  72.                                    printf("speed=%d\r\n",speed) ;
  73.                            }   
  74.                                 if(Sensor_Input==1)
  75.                                 {
  76.                                 procedure=0;       
  77.                                 break;       
  78.                                 }                                               
  79.                     }
  80.                  printf("procedure=%d\r\n",procedure) ;       
  81.            }
  82.                
  83.                   
  84.         }
  85. }
復(fù)制代碼

所有代碼51hei附件下載:
步進(jìn)電機(jī)驅(qū)動(dòng)程序-STM32F103C8T6.7z (187.6 KB, 下載次數(shù): 86)



作者: 2479408246    時(shí)間: 2021-8-4 14:25
硬件測(cè)試OK




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 视频一区在线观看 | 亚洲综合成人网 | 一级黄色毛片免费 | 中文字幕第九页 | 一区二区三区四区在线视频 | 久久视频一区 | 在线视频日韩 | 久久久妇女国产精品影视 | 久久大香 | 久久久久亚洲精品 | 成人在线观看网址 | 国产日韩欧美在线一区 | 超碰成人免费观看 | 亚洲欧美日韩一区二区 | 亚洲久久久 | 男女羞羞视频免费看 | 国产精品一区二区福利视频 | 99免费在线观看视频 | 亚洲在线一区 | 欧美精品一二区 | 国产精品久久久久久影院8一贰佰 | 玖玖色在线视频 | 国产伦精品一区二区三区精品视频 | 久久草视频 | 欧美乱做爰xxxⅹ久久久 | 91久久久www播放日本观看 | 国产精品一区二区免费 | 国产精品av久久久久久毛片 | 日本黄色不卡视频 | 国产91丝袜在线熟 | 日韩免费一区 | 欧美成人一区二区三区 | 99色播 | 欧美在线视频免费 | 欧美精品一区二区三区四区 | av天天看| 中文字幕亚洲精品 | 午夜精品久久久久久久99黑人 | 成人h电影在线观看 | 成人乱人乱一区二区三区软件 | 成人看片在线观看 |