未分类
1.1k 词
C610电调CAN通信协议及使用指南基本信息及资料 通信协议:C610电调采用CAN通信协议 协议参考文档:40. CAN—通讯实验 — [野火]STM32 HAL库开发实战指南——基于H743_Pro_V 硬件适配:Arduino Mega2560无CAN差分信号引脚,需外接MCP2515(实现CAN差分信号与SPI信号转换) 推荐库:GitHub - autowp/arduino-mcp2515(Arduino MCP2515 CAN接口库) 报文接收格式用于向电调发送控制指令控制电调的电流输出,两个标识符(0x200和0x1FF)各自对应 控制4个ID的电调。控制转矩电流值范围-10000-0-10000,对应电调输出的转矩电流 范围-10-0-10A。 即0x200用于控制1-4号电调 数据域 内容 电调ID DATA[0] 控制电流值高8位 1 DATA[1] 控制电流值低8位 1 DATA[2] 控制电流值高8位 2 DATA[3] 控制电流值低8位 2 DATA[4] 控制电流值高8位 3 DATA[5] 控制电流值低8位...
未分类
1.1k 词
Makefile 入门:从基础到实用技巧一、为什么需要Makefile?简单说,Makefile是「编译规则说明书」。一个工程可能有几十上百个源文件,按功能放在不同目录里。Makefile定义了: 哪些文件先编译,哪些后编译 哪些文件修改后需要重新编译 甚至可以执行打包、备份等额外操作 有了Makefile,只需敲一个make命令,整个工程就会自动编译,极大提高开发效率。 二、先搞懂:编译和链接在讲Makefile之前,先明确两个基本概念: 编译(compile):把源代码(.c/.cpp)变成中间目标文件(Unix下是.o,Windows下是.obj)。编译器只检查语法和函数/变量是否声明。 链接(link):把一堆中间目标文件拼成可执行文件。链接器找函数的实现,找不到就会报错(比如VC里的Link 2001)。 举个例子:main.c编译成main.o,tool.c编译成tool.o,最后链接成app可执行文件。 三、Makefile 基本规则Makefile的核心是「依赖关系」和「执行命令」,格式如下: 123目标(target)... : 依赖...
未分类
1.8k 词
C语言指针到底是个什么东西指针,恐怕是C语言中最让人又爱又恨的东西。有人觉得它很难懂,但是不得不说,它真的很好用!!!。 指针是什么?—— 本质是地址你可以把指针理解为一种特殊的变量类型——没错,int*、char*本质上都是指针类型。它们的核心功能只有一个:存储内存地址。 先看个最基础的例子: 12345678910#include <stdio.h>int main(int argc, char const *argv[]){ int a = 123; int* pointer = &a; // 取a的地址,赋值给指针 printf("a的值: %d\n", a); printf("pointer存储的地址: %p\n", pointer); printf("pointer指向的内容: %d\n", *pointer); // *表示"取地址中的值" return 0;} 运行结果显而易见: 123a的值: 123p...