電機位置閉
環控制(STM32F1)
單片機源程序如下:
- #include "sys.h"
- u8 Flag_Stop=1; //停止標志位
- int Encoder,Position=10000; //編碼器的脈沖計數
- long SHOW;
- int Moto1; //電機PWM變量 應是Motor的 向Moto致敬
- int main(void)
- {
- Stm32_Clock_Init(9); //系統時鐘設置
- delay_init(72); //延時初始化
- LED_Init(); //初始化與 LED 連接的硬件接口
- uart_init(72,115200); //初始化串口1
- MiniBalance_PWM_Init(7199,0); //=====初始化PWM 10KHZ 高頻可以防止電機低頻時的尖叫聲
- Encoder_Init_TIM2(); //初始化編碼器
- Timer3_Init(99,7199); //=====10MS進一次中斷服務函數,中斷服務函數在control.c
- while(1)
- {
- printf("Encoder:%d Position:%d \r\n",Encoder,Position);
- }
- }
復制代碼
原理圖: 無
仿真: 無
代碼:
電機位置閉環控制(代碼詳細注釋,F1寄存器版本).7z
(122.53 KB, 下載次數: 26)
2020-1-7 14:48 上傳
點擊文件名下載附件
|