GRBL四:GRBL框架解析

GRBL0.8版本中有个doc文件夹,下面是关于GRBL大致的框架介绍
1.commands.txt介绍GRBL命令
2.pinmapping.txt介绍GRBL引脚映射
3.resources.txt介绍GRBL用到资源
4.structure.txt介绍GRBL框架
4.1英文如下
The general structure of Grbl
=============================
4.1.1The main processing stack:

1.'protocol'        : Accepts command lines from the serial port and passes them to 'gcode' for execution.
                    Provides status responses for each command. Also manages run-time commands set by
                    the serial interrupt.

                    接收串口命令传递给gcode执行,给命令提供应答,通过串口中断管理程序命令
                  
2.'gcode'           : Recieves gcode from 'protocol', parses it according to the current state
                    of the parser and issues commands via '..._control' modules
                    从1接收G代码,解析G代码
3.'spindle_control' : Commands for controlling the spindle.
                               主轴控制,雕刻机的主轴带刀的轴,与XYZ无关,M3,4,5有关于主轴正反转停止命令
4.'motion_control'  : Accepts motion commands from 'gcode' and passes them to the 'planner'. This module
                    represents the public interface of the planner/stepper duo.
                      从2接收运动命令将其传递给5,相当于一个发出命令的高层接口

5.'planner'         : Receives linear motion commands from 'motion_control' and adds them to the plan of 
                    prepared motions. It takes care of continuously optimizing the acceleration profile
                    as motions are added.
                    从4接收线性运动的命令,并将其添加到准备运动计划中(计算的数据写入唤醒缓冲区)

                    随着运动不断被添加负责优化计算加速度分布图

6.'stepper'         : Executes the motions by stepping the steppers according to the plan.
                          执行动作,用两个定时器来控制三个轴完成相应的动作

4.1.2Supporting files:

'config.h'        : Compile time user settings
                        一些全局变量的宏定义,例如MINIMUM_STEPS_PER_MINUTE最低每分钟跳动多少下,也就是最低

                        频率就在这里声明的

'settings'        : Maintains the run time settings record in eeprom and makes it available
                    to all modules.
                    全局中主要的参数设置,$$命令打印出来的参数都是这里设置的

                    上电读取EEPROM的值,如果读取失败调用default值,都在这里

'eeprom'          : A library from Atmel that provides methods for reading and writing the eeprom with 
                    a small addition from us that read and write binary streams with check sums used 
                    to verify validity of the settings record.
                    存放参数的作用,有关于EPROM的读写函数
'nuts_bolts.h'    : A collection of global variable definitions, useful constants, and macros used everywhere
                      一些全局变量的定义

'serial'          : Low level serial communications and picks off run-time commands real-time for asynchronous 
                    control.
                    串口控制台

'print'           : Functions to print strings of different formats (using serial)

                   打印不同格式的字符串函数在这里定义的
大致框架如下所示

GRBL四:GRBL框架解析相关推荐

  1. GRBL四:GRBL框架解析(转载)

    因初学GRBL,网上搜集了一些GRBL的资料,怕遗忘,所以转载过来,如有侵权请联系,立即删除. 原文地址:https://blog.csdn.net/zhangjikuan/article/detai ...

  2. AlexeyAB DarkNet YOLOv3框架解析与应用实践(四)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(四) Nightmare 从前,在一所大学的大楼里,西蒙尼亚.维达第和齐瑟曼有一个很好的主意,几乎和你现在坐的大楼完全不同.他们想,嘿 ...

  3. IOS中四种json解析效率比较

    作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此"http://www.bejson.com/"网站来进 ...

  4. 蚂蚁集团网络通信框架 SOFABolt 功能介绍及协议框架解析 | 开源

    简介:开源网络通信框架 SOFABolt 首次线上直播文字回顾. ,有趣实用的分布式架构频道. 回顾视频以及 PPT 查看地址见文末.欢迎加入直播互动钉钉群 : 30315793,不错过每场直播. 大 ...

  5. RobotLegs框架解析

    RobotLegs框架解析 一,优点: 解耦,维护,统一规范利于分工合作. 二,框架思想 :基于Model-View-Controller元设计模式+S(service:用于接收外部数据与外部通讯 ü ...

  6. Freeline框架解析

    文章目录 FreeLine 框架解析 目前主流的动态编译方案对比 layoutcast Buck android studio Instant run 阿里 freeline Freeline 部署步 ...

  7. ORB_SLAM 算法框架解析

    ORB_SLAM1 论文_代码 1 框架: :ORB_SLAM1 是一个基于特征(ORB)单目SLAM系统,拥有回环检测.重定位功能.该算法的系统框架: 2 主要贡献有: 该系统主要包含:跟踪.建图. ...

  8. java中的json_JAVA中的四种JSON解析方式详解

    JAVA中的四种JSON解析方式详解 我们在日常开发中少不了和JSON数据打交道,那么我们来看看JAVA中常用的JSON解析方式. 1.JSON官方 脱离框架使用 2.GSON 3.FastJSON ...

  9. android 1.0框架,KOOM V1.0.5 框架解析

    快手在2020年中旬开源了一个线上OOM监控上报的框架:KOOM,这里简单研究下. 一.官方项目介绍 1.1 描述: KOOM是快手性能优化团队在处理移动端OOM问题的过程中沉淀出的一套完整解决方案. ...

最新文章

  1. evoc服务器长鸣报警显示正常,UPS电源故障灯亮,蜂鸣器长鸣报警怎么办
  2. 你在过度测试你的软件吗?
  3. appium+python搭建自动化测试框架_TestAPP框架(三)
  4. 瞄准千亿个护市场,纸业龙头们下半场战役已经打响
  5. ThinkServer RD430:高性价比的海量存储服务器
  6. Go 语言新提案:添加模糊测试支持
  7. docker redis mysql_docker创建redis mysql 等服务
  8. Android开发之跨进程通信-广播跨进程实现方法(附源码)
  9. 巴伦周刊:“物联网”正走向死胡同
  10. $(document).ready(function(){});不执行
  11. 提交form前先使用JS进行验证
  12. Tomcat 下载、安装与配置
  13. java给图片添加自定义文字信息
  14. 全国计算机二级vb试题库,全国计算机等级考试题库之二级VB试题
  15. linux格式化分区error,linux格式化磁盘出错
  16. 微信公总测试号的申请+微信网页授权
  17. nginx+fastdfs 502异常解决
  18. 华为太极magisk安装教程_怎么升级Magisk到最新19.4版本-正确刷入Magisk,获取ROOT教程...
  19. 216:vue+openlayers 加载GPX数据,导出geojson文件
  20. 哈工大深圳计算机水平怎么样,赞!哈工大(深圳)学子在第四届“龙芯杯”全国大学生计算机系统能力培养大赛中获多个奖项...

热门文章

  1. 【ArcGIS Pro二次开发】(17):打开GDB、SHP、CAD等各种数据
  2. c语言编程订单统计,C语言课程设计订单管理系统.pdf
  3. Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Compressed class space
  4. C++设计模式之状态模式(state)(行为型)
  5. Spring Security系列教程-Spring Security核心API讲解
  6. 模电1.3 晶体三极管
  7. 嵌入式驱动程序(5-5)点灯大师⑤之TM1668
  8. 默认模式网络(Default mode network, DMN)
  9. python 绘制箱型图
  10. Ubuntu的网络共享