用stc15w和旧光驱移植arduino写字机GRBL之十:串口数据接收解析
本帖最后由 XTXB 于 2019-7-21 20:25 编辑用stc15w4k32s4和旧光驱移植arduino写字机GRBL连载:
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之一:机架搭建
https://www.amobbs.com/thread-5701202-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之二:PCB制作
https://www.amobbs.com/thread-5701573-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之三:Bresenham算法
https://www.amobbs.com/thread-5701994-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之四:FIFO算法
https://www.amobbs.com/thread-5702730-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之五:G_Code
https://www.amobbs.com/thread-5702784-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之六:运动控制motion_control
https://www.amobbs.com/thread-5703165-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之七:前瞻算法1
https://www.amobbs.com/thread-5703989-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之八:前瞻算法2
https://www.amobbs.com/thread-5705269-1-1.html
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之九:产生步进脉冲 Stepper
用stc15w和旧光驱移植arduino写字机GRBL之九:步进脉冲Stepper
https://www.amobbs.com/thread-5707262-1-1.html
用stc15w和旧光驱移植arduino写字机GRBL之十:串口数据接收解析:
1 上位机发出的指令(字符串)通过串口接收中断,存储于循环队列rx_buffer[]中,函数protocol_process()将队列中的数据以\r\n为分割,
存于line[]中,line中的数据去掉空格和注释,全为大写。每接收一行\r\n数据,GBRL通过串口返回字符OK。
2 函数uint8_t protocol_execute_line(char *line) 解析line[]中数据。
如果是$开头,作为命令处理。
如果是其他,交由函数uint8_t gc_execute_line(char *line) 作为Gcode处理。
3 line[]中的数据全部都是字符串格式(G01X10Y10),在gcode.cpp中
函数static int next_statement(char *letter, float *float_ptr, char *line, uint8_t *char_counter)
将字符串分解为字符串letter,如G X Y Z,和数值value,如02 12.35。
将G后面的数值作为命令,将XYZ后面的数值作为当前点的坐标target[]。
4 有了当前点的坐标target[],接下来就进入之前探讨过的运动算法motion_control,前瞻算法planner,插补算法Bresenham了。
为了调试及验证,现学现用,做了个小程序发送命令和G代码:
先跑起来看看(在头条有录像),没有加减速,加了二进制时钟(DS3231),蓝牙串口:
想尝鲜把玩了一下stc8,主控改为STC8A8K64S4A12,8KRAM用了2k不到,实时二进制时钟无压力,舵机用高级PWM,不用定时器占中断。
哈哈,厉害! 我之前也用STC8A8K64S4A12的8路PWM功能 驱动8路舵机,挺爽的。 请教下楼主,是不是移植到C8051上也是同样的道理啊? PCBBOY1991 发表于 2019-10-5 10:19
请教下楼主,是不是移植到C8051上也是同样的道理啊?
都是51内核,估计差别很小 XTXB 发表于 2019-10-5 11:22
都是51内核,估计差别很小
好的,谢谢!有空研究下,顺便玩一下C8051。 好玩,看来需要去库房翻几个光驱了 不错,谢谢分享! 发送命令和G代码小程序这个好 这个资料很不错,先收藏了
不错,顶起,谢谢分享! V5,涨见识了。。 顶起,好玩 有趣啊,老师罚写xx遍再也不是问题了 XTXB 发表于 2019-10-5 11:22
都是51内核,估计差别很小
我来给贴子添把火。。。
顶顶顶,顶起来。。。 这个资料很不错,收藏.. 楼主,手机的上位机怎么开发的啊 youlongam 发表于 2019-12-28 19:33
楼主,手机的上位机怎么开发的啊
android studio youlongam 发表于 2019-12-28 19:33
楼主,手机的上位机怎么开发的啊
微信小程序
https://developers.weixin.qq.com/miniprogram/dev/framework/quickstart/getstart.html#你的第一个小程序 赞,很不错。
另外请问,系统VCC是5V经过4007,这是基于什么考虑
ISP下载时直接串口线供电,不用接7.4v。 sf49ers 发表于 2019-12-29 15:50
赞,很不错。
另外请问,系统VCC是5V经过4007,这是基于什么考虑
ISP下载时直接串口线供电,不用接7.4v。 感谢楼主分享,有空弄一个玩。 厉害了,买个光驱试试 谢谢分享,正在学习中。有没有电脑端的上位机没?
大佬用的是哪个版本的grbl移植的? 帖子移动通知:
原分论坛:8051/STC32【已下线】
目标分论坛:51单片机
移动时间:0小时之后
页:
[1]