GRBL简单的说就是一款基于Arduino的开源雕刻机控制软件。可以解析标准G代码并控制相应的步进电机运动。GRBL效率高,成本低,因此大部分DIY激光雕刻机和自制CNC都会使用GRBL作为主控程序。
手头上用得比较多的是stm32,于是萌生出了将GRBL移植到stm32平台上的想法。
本次移植的目标平台:stm32f103c8t6, 64k ROM,32kRAM,对于原先在32kROM,2kRAM的Arduino上跑得欢的GRBL是绰绰有余,多余的空间还可以添加一些其他的功能。
Github:https://github.com/MaxwellXyao/GRBL-0.8c-for-STM32.git
移植说明:
移植平台:STM32F103C8T6
目前进度:
(1)已经调试通过,无warning;
(2)定时器,串口,eeprom运行正常;
(3)在Grbl Controller下可以正常跑完G代码;
待改进:
(1)stepper.c部分代码直接移植,还没有针对stm32进行完全优化;
(2)limit还有待研究;
(3)还没有实机试验过;
引脚分布情况:
步进电机组:GPIOB 5-11
冷却:GPIOB 0,1
主轴控制:GPIOA 11,12
限位开关:GPIOA 6,7,8
其他引脚:GPIOA 0,1,2
USART1:GPIOA 9,10
默认波特率:115200