標題: 分享STM8s903單片機無刷電機無感控制器開發(fā)程序 [打印本頁]

作者: lzh1762    時間: 2020-12-24 11:26
標題: 分享STM8s903單片機無刷電機無感控制器開發(fā)程序
本電機DEMO板的IO口是作了重映射的,在使用本程序前務(wù)必在STVP先修改配置
tools--->programmer

1.    Settings頁面中選STLINK
2.
在彈出的窗口中選擇”O(jiān)PPTION BYTE”
在AFR1-0中點右鍵選第二項。再重新編譯下載

如下圖圈中所示:

3. Progarm頁面點START

定時器重映射配置在OPTION選項里進行配置

啟動延時時間生成計算表:


單片機源程序如下:
  1. /* MAIN.C file
  2. * GPIO: 40%占空比輸出換相
  3.     ,控制電機轉(zhuǎn)動,開環(huán),上電運行,無傳感方案
  4.                
  5.                 PB5,6,7為硬件比較輸入端,延時換向準確
  6.                 缺點:啟動第二階段與反電勢控制電機轉(zhuǎn)動的銜接不好,出現(xiàn)一頓的問題
  7.                
  8.    Author: Cache.Lee  from UET
  9. * Copyright (c) UET
  10. */
  11. #include "stm8s_lib.h"
  12. #include "functions.h"

  13. #include "mc_dev_clk.h"
  14. #include "mc_vtimer.h"
  15. #include "mc_dev_vtimer.h"
  16. #include "MC_HALL.H"
  17. #include "MC_dev_port.h"
  18. #include "MC_stm8s_port_param.h"
  19. #include "mc_stm8s_hall_param.h"


  20. void fun(void)
  21. {
  22.   // GPIO_WriteReverse(GPIOD,GPIO_PIN_7);
  23.          vtimer_SetTimer(VTIM0,5000,fun);
  24. }

  25. main()
  26. {
  27.           u16 i;
  28.                                 
  29.                                 
  30.                 for(i=0;i<50000;i++);
  31.     dev_clkInit();        
  32.                 for(i=0;i<50000;i++);
  33.                 InitLed_GPIO();  //LED燈初始化
  34.                 dev_portInit();//PWMio初始化
  35.                 dev_vtimerInit(); //TIM5軟件定時器配置
  36.                 vtimer_SetTimer(VTIM0,5000,fun);               
  37.                
  38.         /*        #ifdef HALLTEST_TIMER
  39.                 Init_HallBaseTimer();//HALL 時鐘相關(guān)配置        
  40.                 Init_TIM1();        
  41.                 HallTimer_InitCapturePolarity();//HALL 捕獲配置
  42.                 #else
  43.     EXTI_HALL_Init();
  44.                 Init_TIM1();
  45.     HallEXTI_Init();
  46.     #endif                */
  47.                
  48.                 Init_TIM1();
  49.                
  50.         //        vtimer_SetTimer(VTIM1,50,PWMinc);               
  51.                  vtimer_SetTimer(VTIM2,50,StartSensorless);        
  52.           while (1);
  53. }
復(fù)制代碼

所有資料51hei提供下載:
stm8s903無刷電機無感控制器開發(fā)程序,適合初學(xué)者學(xué)習(xí).7z (1010.99 KB, 下載次數(shù): 148)

作者: qq-970082827    時間: 2021-11-26 15:48
謝謝  樓主的分享  我學(xué)習(xí)學(xué)習(xí)
作者: kavin21513    時間: 2021-12-1 07:44
謝謝分享。如果有配套的原理圖就更好理解了
作者: em78447    時間: 2023-2-22 19:18
不錯不錯,學(xué)習(xí)!STM8便宜又好用。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1