[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄张富春
2019-4-16 20:13:22 显示全部楼层

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
官方2019步兵开源学习,小白读代码

这个帖子是我第二次写,主要是因为之前一板图片有问题,但新的一版肯定有新的内容啦。
开源变量无法仿真?论static在C/C++里的用法,感兴趣的小伙伴请到文末看啦)

大家好,我是沈阳航空航天大学SH-黑鹰战队的一名大二电控队员,对于2019官方的开源,想必大家读起来相当艰难,
本宝宝也是,但经过几个月的学习,也与不少收获,现在写出来与大家交流呀

以下开源的图片可能因为图片太小,所以有些不好读,但都在附件或者链接里啦,大家可以下载,收1金币意思一下啦


1.2019官方步兵开源,MindMaster思维导图
大家读开源的时候思路不清晰,这是我们自己读代码的一些方法,先写出程序的思路图

(注:附件需要MindMaster软件来读,下面是一丢丢的截图)



捕获.PNG

捕获0.PNG

捕获1.PNG


2.如何写一个指针,以电机反馈数据为例
有道云笔记链接:http://note.youdao.com/noteshare?id=162b26027f85406862d6fd2a5e16500c&sub=F4CBA7EA4443465D9117C5B09BA14DFB




1. 定义一个结构体
clipboard.png
2.声明变量
clipboard0.png

3.将接收的数据存入结构体
clipboard1.png
4.建立一个读取函数
clipboard2.png

5.定义接收结构体
clipboard3.png
6.定义结构体下的变量
clipboard4.png
7.赋值  在初始化里
clipboard5.png
8.由指针写出数据
clipboard6.png
9.经过滤波还是啥算法处理后赋值
clipboard7.png

3.RM2019官方步兵,对于结构体设置不同模式方式
有道云笔记链接:
http://note.youdao.com/noteshare?id=dbfb5b5d354e0fb05d5f18f57557acab&sub=1120D0609B46498E930A0D659B7C6979




1.定义一个结构体  behaviour

clipboard.png
2.设置不同情况下模式
clipboard0.png

clipboard1.png


3.设置不同模式下的。。。
clipboard2.png


4.电机定角度旋转的两个处理方式
有道云笔记链接:
http://note.youdao.com/noteshare?id=e9d97ccc704eb6fef4bc8c37e0550f13&sub=38E1B3733A47472AA60E000A957A7DD2

第一个是电科开源,可以任意定角度
第二个是RM2019步兵开源,虽然不能转超过180度但也有他自己的好处




1.角度无限加处理方式
clipboard.png
设置一个数圈的变量或者指针,每一次通过突变点加一次
使用时:
clipboard0.png

clipboard1.png
2.角度在-pi道pi的处理方式
clipboard2.png
使用时:
clipboard3.png

clipboard4.png
rad_format函数
clipboard5.png



5.如何写一个can发送与接收函数
本人学了快一年32了,对can理解一直不到位,最近有了新的突破,给大家分享啦
can接收理解:

Date[0]                      Date[1]                   都是高八位

10101010                  10101010



等待接收的16位数据
0000000000000000

Date[0]<<8 变成低8位

Date[0]<<8    Date[1]
10101010      10101010
              按位或
00000000      00000000
                get
1010101010101010
               使用
好处:传输速度快 稳定
弊:一个ID只能传8位数据


6.关于static在C/C++中的使用(部分图片出自网络)

@@B1T]FMK9)M~2[(V7AM7~1.png

AU}V0Z__W}W.jpeg

静态:static定义局部变量不会被刷新

比如:static int a=0;//这个只执行一遍,之后的循环不被执行刷新a的值


如果只在当前文件使用,可以这样 clipboard.png

file:///E:/%25E6%259C%2589%25E9%2581%2593%25E4%25BA%2591%25E7%25AC%2594%25E8%25AE%25B0/qq17FCBFC6B4E2C53FE677D0E1E190E83F/972e014731014c3088076ff3264186b3/clipboard.png

只在.c文件上面这样定义即可(本部分比较潦草,主要是我自己的笔记,没在乎太多,关于static在2019开源用的很广,大家可以仔细观察)

本人还是小白啦,希望大家多多指点,今天心血来潮写的贴子,肯定会有一些小问题甚至错误,希望大家及时指正,也可以找我交个朋友,互相学习

0e194021ee0b5546c89af4bc6985f8eb.jpg

(最后卖个萌








MindMaster思维导图.zip

70.19 KB, 下载次数: 994

售价: 1 金钱  [记录]

MindMaster思维导图

跳转到指定楼层

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
步兵Dior
2019-4-17 00:03:10 显示全部楼层
感谢这位大佬的分享,希望多分享技术贴~

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
步兵Dior
2019-4-16 23:55:19 显示全部楼层
继续支持继续支持

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄张富春
 楼主| 2019-4-16 20:16:08 显示全部楼层
感谢@快拆小分队@Dior等大佬对我第一版的支持,谢谢

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄永不言弃
2019-4-17 08:32:07 显示全部楼层
感谢永不言弃对你的支持,虽然 也是小白哈哈哈

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄永不言弃
2019-4-17 08:32:20 显示全部楼层
写的真的很好,很用心啦

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄永不言弃
2019-4-17 08:32:49 显示全部楼层

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
英雄张富春
 楼主| 2019-4-17 09:44:41 显示全部楼层
永不言弃 发表于 2019-4-17 08:32
@快拆小分队 @牛兔 @橙小橙 @太工2019 @花师小哲 看看这兄弟写的,挺赞

谢谢你鸭,以后还会努力写出更好的帖子的

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
工程花师小哲
2019-4-17 09:55:10 显示全部楼层
永不言弃 发表于 2019-4-17 08:32
@快拆小分队 @牛兔 @橙小橙 @太工2019 @花师小哲 看看这兄弟写的,挺赞

嗯,是很不错的,继续加油哦

[嵌入式] 【RM2019 步兵开源学习,小白读代码分享】

  [复制链接]
步兵快拆小分队
2019-4-17 10:42:24 显示全部楼层
好哟好哟  给你加精!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

快速回复 返回顶部 返回列表