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
指定用于控制步进的引脚,这里设置为 PD6dir_pin
指定用于控制方向的引脚,这里设置为 PD11invert_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
- 重置步进电机的时钟
MCU命令的更多相关文章
- GNSS模块使用笔记
目录 目录 GNSS芯片 NMEA0183 协议 指令 GNSS TO MCU MCU TO GNSS GNSS芯片 ATGM336H-5N31(GPS+BDS双模) 原理图 NMEA0183 协议 ...
- (原创)巩固理解基于DS18B20的1-wire协议(MCU,经验)
1.Abstract 如前篇随笔所写,将以前遇到最难懂的两个部分重拾一下.前一篇写的是I2C协议(http://www.cnblogs.com/hechengfei/p/4117840.htm ...
- SPI模式下MCU对SD卡的控制及操作命令
一.前言 SD 卡有两个可选的通讯协议:SD 模式和 SPI模式 SD 模式是SD 卡标准的读写方式,但是在选用SD 模式时,往往需要选择带有SD 卡控制器接口的 MCU,或者必须加入额外的SD卡控制 ...
- SPI模式下MCU对SD卡的控制及操作命令(转)
源:SPI模式下MCU对SD卡的控制及操作命令 一.前言 SD 卡有两个可选的通讯协议:SD 模式和 SPI模式 SD 模式是SD 卡标准的读写方式,但是在选用SD 模式时,往往需要选择带有SD 卡控 ...
- SD卡初始化以及命令详解
SD卡是嵌入式设备中很常用的一种存储设备,体积小,容量大,通讯简单,电路简单所以受到很多设备厂商的欢迎,主要用来记录设备运行过程中的各种信息,以及程序的各种配置信息,很是方便,有这样几点是需要知道的 ...
- 痞子衡嵌入式:恩智浦MCU安全加密启动一站式工具NXP-MCUBootUtility用户指南
NXP MCU Boot Utility English | 中文 1 软件概览 1.1 介绍 NXP-MCUBootUtility是一个专为NXP MCU安全加密启动而设计的工具,其特性与NXP M ...
- 烽火2640路由器命令行手册-11-IP语音配置命令
IP语音配置命令 目 录 第1章 配置拨号对命令... 1 1.1 配置拨号对命令... 1 1.1.1 dial-peer voice. 1 1.1.2 application. 2 1.1.3 ...
- 痞子衡嵌入式:飞思卡尔i.MX RT系列MCU启动那些事(3)- Serial Downloader模式(sdphost/MfgTool)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的Serial Downloader模式. 在上一篇文章 Boot配置(BOOT Pin, eFUSE) ...
- 痞子衡嵌入式:飞思卡尔i.MX RT系列MCU启动那些事(4)- Flashloader初体验(blhost)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的Flashloader. 在上一篇文章 Serial Downloader模式(sdphost, mf ...
- 痞子衡嵌入式:飞思卡尔i.MX RT系列MCU启动那些事(5)- 再聊eFUSE及其烧写方法
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的eFUSE. 在i.MXRT启动系列第二篇文章 Boot配置(BOOT Pin, eFUSE) 里痞子 ...
随机推荐
- 正态分布——“牛而B之”
1 问题: 什么是正态分布,为什么这么出名和重要? 1.1 名气大 为什么叫"正态分布",也有地方叫"常态分布",这两个名字都不太直观,但如果我们各取一字变为& ...
- Java编程案例(专题)
文章目录 案例一:买飞机票 案例二:开发验证码 案例三:评委打分 案例四:数字加密 案例五:数组拷贝 案例六:抢红包 案例七:找素数 案例八:模拟双色球 8.1 手动投注 8.2 随机开奖号码 8.3 ...
- C++之OpenCV入门到提高002:加载、修改、保存图像
一.介绍 今天是这个系列<C++之 Opencv 入门到提高>得第二篇文章.今天这个篇文章很简单,只是简单介绍如何使用 Opencv 加载图像.显示图像.修改图像和保存图像,先给大家一个最 ...
- Java面试题及答案整理汇总(2024最新版)
前言 辞退了老板,准备找下家,又要开始面试了,不得不准备准备八股文,还是很有必要针对性的刷一些题,很多朋友的实战能力很强,但是理论比较薄弱,要多准备准备理论知识,攻克面试官.这是我在全网寻找稍微比较完 ...
- 5.1 Vim及其安装
通过前面的学习我们知道,Linux 系统中"一切皆文件",因此当我们在命令行下更改文件内容时,不可避免地要用到文本编辑器. 作为一名 Linux 初学者,你必须熟练掌握 Linux ...
- 网站免费https加密教程
为网站实现HTTPS加密可以大大提高网站的安全性和用户信任度.以下是一个详细的免费HTTPS加密教程: 一.选择免费SSL证书提供商 JoySSL:这是目前国内为数不多的国产CA服务商打造的自主品牌S ...
- 连接数据库报错的异常可以用mysqli_report来捕获
有时候数据库密码改了或者数据库删了,就会有一个mysqli的链接报错,是因为直接使用了类似代码 $connection = new mysqli('127.0.0.1', 'test_user', ' ...
- ETCD集群+ TLS认证
目录 1.下载etcd cfssl相关命令 2.配置文件 /app/etcd/conf/conf.yml 3.用系统命令启动,创建 /usr/lib/systemd/system/etcd.servi ...
- Mac 上常见的环境配置文件
当使用命令行终端进行开发时,环境配置文件可以用来自动化执行一些命令或设置环境变量,以提高工作效率和方便使用.在 Mac 上,常见的环境配置文件有以下几种: 1. 在.bash_profile文件中配置 ...
- ServiceMesh 5:异常重试和超时保护提升服务可用性
★ ServiceMesh系列 1 背景 在复杂的互联网场景中,不可避免的会出现请求失败或者超时的情况. 从程序的的响应结果来看,一般是Response返回5xx状态的错误:从用户的角度去看,一般是请 ...