MCU命令

三D打印常用MCU命令

  • allocate_oids count=42
    • 分配 42 个 OIDs,后续用于标识和管理不同的设备或组件
  • config_spi oid=0 pin=PD7 cs_active_high=0
    • 配置一个spi对象,对象id是0,通过引脚PD7 进行SPI通信,chip select信号为低电平有效
  • config_digital_out oid=15 pin=PE1 value=0 default_value=0 max_duration=0
    • 配置一个数字输出引脚,设置其对象 ID 为 15,使用 PE1 引脚,初始值和默认值均为 0,且没有最大持续时间限制。
  • config_adxl345 oid=4 spi_oid=3
    • 配置一个加速度传感器对象,设置对象id是4,使用spi通信(spi的设备对象id是3)
  • set_digital_out_pwm_cycle oid=16 cycle_ticks=72000
    • 设置数字输出的pwm周期,对象id是16
    • cycle_ticks 指定 PWM 周期的时钟周期数。这里的值为 72000,表示 PWM 信号的完整周期将持续 72000 个时钟周期
  • config_buttons oid=24 button_count=6
    • 配置按钮,表示有6个按钮被注册和管理
  • config_analog_in oid=35 pin=ADC_TEMPERATURE
    • 配置温度传感器的模拟输入
  • config_endstop oid=1 pin=PD4 pull_up=0
    • 配置限位开关,对象id是1,使用引脚是PD4,0表示不使用引脚的上拉电阻
  • config_trsync oid=2
    • 配置同步操作
  • spi_set_software_bus oid=3 miso_pin=PE12 mosi_pin=PE11 sclk_pin=PE10 mode=3 rate=100000
    • 配置SPI软件总线
    • miso_pin指定主设备输入从设备输出引脚(Master In Slave Out),这里设置为 PE12
    • mosi_pin指定主设备输出从设备输入引脚(Master Out Slave In),这里设置为 PE11
    • sclk_pin指定时钟引脚(Serial Clock),这里设置为 PE10
    • mode 指定 SPI 模式,模式 3 表示数据在时钟的高电平上采样,并在低电平上保持
    • rate指定 SPI 总线的速率,这里设置为 100,000 Hz(100 kHz)
  • config_stepper oid=5 step_pin=PD6 dir_pin=PD11 invert_step=0 step_pulse_ticks=144
    • 配置步进电机,步进电机的id是5
    • step_pin 指定用于控制步进的引脚,这里设置为 PD6
    • dir_pin 指定用于控制方向的引脚,这里设置为 PD11
    • invert_step 指定步进信号的极性。0表示不反转步进信号
    • step_pulse_ticks 指定步进脉冲的持续时间,以时钟周期数表示,这里设置为 144 个周期
  • finalize_config crc=2842743376
    • 完成系统的配置过程,并通过 CRC 校验确保所有配置数据的准确性和完整性
  • queue_digital_out oid=16 clock=14400000 on_ticks=72000
    • 将一个数字输出操作添加到队列中
    • clock 指定系统时钟频率,这里设置为 14,400,000 Hz(14.4 MHz),用于计算时间
    • on_ticks 指定数字输出信号保持高电平的时钟周期数,这里设置为 72,000 个周期
  • buttons_add oid=24 pos=0 pin=PD14 pull_up=0
    • 添加一个新按钮
    • pos指定按钮在按钮列表中的位置,这里设置为 0,意味着这是第一个按钮
    • pin指定用于连接按钮的引脚,此处使用 PD14 引脚
    • pull_up指定是否使用上拉电阻。0 表示不启用上拉电阻,这意味着需要外部电路来确保引脚在未按下时的电平稳定
  • buttons_query oid=24 clock=89280000 rest_ticks=144000 retransmit_count=50 invert=0
    • 查询按钮的状态
    • clock指定系统时钟频率,这里设置为 89,280,000 Hz(约 89.28 MHz),用于计算时间和状态读取
    • rest_ticks指定在查询期间的静默时钟周期数,这里设置为 144,000 个周期,通常用于确保按钮状态的稳定性
    • retransmit_count指定重传次数,这里设置为 50,表示在未成功读取状态时,允许重传 50 次
    • invert指定按钮信号的极性。0 表示不反转信号
  • query_analog_in oid=31 clock=94320000 sample_ticks=72000 sample_count=8 rest_ticks=21600000 min_value=12387 max_value=32388 range_check_count=4
    • 查询模拟输入的状态
    • clock指定系统时钟频率,这里设置为 94,320,000 Hz(约 94.32 MHz),用于时间计算和信号读取
    • sample_ticks指定每次读取模拟信号的持续时间,以时钟周期数表示,这里设置为 72,000 个周期
    • sample_count指定要进行的样本数量,这里设置为 8,表示将进行 8 次读取以获取平均值或更稳定的结果
    • rest_ticks 指定在每次查询之间的静默时钟周期数,这里设置为 21,600,000 个周期,以确保信号稳定
    • min_value 指定读取值的最小期望值,确保读取的有效性
    • max_value 指定读取值的最大期望值,用于验证读取数据的范围
    • range_check_count 指定在读取后进行范围检查的次数,这里设置为 4,以确保读取值在预定范围内
  • spi_send oid=0 data=b'\x8b\x00\x00\x002'
    • 通过SPI接口发送数据
  • trsync_start oid=7 report_clock=18000000 report_ticks=7200000 expire_reason=2
    • 启动触发同步操作
    • report_clock 指定系统时钟频率,这里设置为 18,000,000 Hz(18 MHz),用于时间计算和同步操作
    • report_ticks 指定触发同步操作的时钟周期数,这里设置为 7,200,000 个周期,表示同步持续的时间
    • expire_reason 指定同步操作过期的原因,值为 2。具体的含义通常依赖于系统的实现,可以表示不同的过期条件或状态
  • stepper_stop_on_trigger oid=5 trsync_oid=7
    • 根据触发同步事件停止步进电机,步进电机的id是5
    • trsync_oid 指定与之关联的触发同步事件的对象 ID,此处为 7。这意味着步进电机将在触发同步事件时停止
  • trsync_set_timeout oid=7 clock=36000000
    • 设置触发同步的超时时间
    • clock指定系统时钟频率,这里设置为 36,000,000 Hz(36 MHz),用于计算超时时间
  • endstop_home oid=6 clock=18000000 sample_ticks=1080 sample_count=4 rest_ticks=27000 pin_value=1 trsync_oid=7 trigger_reason=1
    • 限位开关进行归位操作
    • clock 指定系统时钟频率,这里设置为 18,000,000 Hz(18 MHz),用于时间计算和信号读取
    • sample_ticks 指定每次读取限位开关状态的持续时间,以时钟周期数表示,这里设置为 1,080 个周期
    • sample_count 指定要进行的样本数量,这里设置为 4,表示将进行 4 次读取以获取更稳定的结果
    • rest_ticks 指定在每次查询之间的静默时钟周期数,这里设置为 27,000 个周期,以确保信号稳定
    • pin_value 指定限位开关的预期状态值。1 表示限位开关在被触发时应为高电平
    • trsync_oid 指定与之关联的触发同步事件的对象 ID,此处为 7,表示在此同步事件下进行归位操作
    • trigger_reason 指定触发归位操作的原因,值为 1。具体含义通常依赖于系统实现,可以表示不同的归位条件或状态
  • queue_step oid=5 interval=27000 count=208 add=0
    • 步进命令添加到队列中,控制电机移动
    • interval 指定每个步进之间的时间间隔,以时钟周期数表示,这里设置为 27,000 个周期
    • count 指定要执行的步进数量,这里设置为 208,表示将执行 208 次步进
    • add 指定是否将这条命令添加到现有队列中。0表示不添加,而是替换当前的步进队列
  • set_next_step_dir oid=8 dir=0
    • 设置下一个步进方向,步进电机的id是8
    • dir 指定下一个步进的方向。0通常表示一个方向(例如,顺时针),而 1 则表示相反的方向
  • stepper_get_position oid=%c
    • 获取步进电机的当前位置
  • reset_step_clock oid=%c clock=%u
    • 重置步进电机的时钟

posted on   logicalsky  阅读(22)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示