标题: 分享STM8s903单片机无刷电机无感控制器开发程序 [打印本页]

作者: lzh1762    时间: 2020-12-24 11:26
标题: 分享STM8s903单片机无刷电机无感控制器开发程序
本电机DEMO板的IO口是作了重映射的,在使用本程序前务必在STVP先修改配置
tools--->programmer

1.    Settings页面中选STLINK
2.
在弹出的窗口中选择”OPPTION BYTE”
在AFR1-0中点右键选第二项。再重新编译下载

如下图圈中所示:

3. Progarm页面点START

定时器重映射配置在OPTION选项里进行配置

启动延时时间生成计算表:


单片机源程序如下:
  1. /* MAIN.C file
  2. * GPIO: 40%占空比输出换相
  3.     ,控制电机转动,开环,上电运行,无传感方案
  4.                
  5.                 PB5,6,7为硬件比较输入端,延时换向准确
  6.                 缺点:启动第二阶段与反电势控制电机转动的衔接不好,出现一顿的问题
  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 时钟相关配置        
  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. }
复制代码

所有资料51hei提供下载:
stm8s903无刷电机无感控制器开发程序,适合初学者学习.7z (1010.99 KB, 下载次数: 148)

作者: qq-970082827    时间: 2021-11-26 15:48
谢谢  楼主的分享  我学习学习
作者: kavin21513    时间: 2021-12-1 07:44
谢谢分享。如果有配套的原理图就更好理解了
作者: em78447    时间: 2023-2-22 19:18
不错不错,学习!STM8便宜又好用。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1