1.FreeMaster - MCU的记录调试利器
2.你可能不知道的ChromeDevtools实用功能
3.åç ï¼åç ï¼è¡¥ç ï¼ç§»ç
4.VS Code 1.66 正式发布!终于支持文件的轴源本地历史记录!
5.纯干货!记录陀螺仪MPU6050模块输出姿态角(有完整版源码)
FreeMaster - MCU的轴源调试利器
FreeMaster是什么?
FreeMaster是NXP官方提供的一款免费、用于数据可视化的记录MCU调试软件。通过SWD、轴源网页源码定位UART、记录CAN等通信接口,轴源它可以在PC上显示MCU中的记录数据变量。无需在目标工程中引入FreeMaster相关的轴源源代码,只需将需要实时显示的记录变量设为全局变量或静态局部变量。FreeMaster通过SWD接口读取内存值,轴源并实时显示在界面上。记录
FreeMaster如何工作?
在使用jlink调试工具连接的轴源情况下,FreeMaster能通过SWD接口读取内存,记录无需修改目标工程代码。它支持显示和修改内存变量,但可视化功能较为强大,如显示波形等。FreeMaster在基本数据读写基础上增加了丰富的可视化功能,帮助用户更直观地调试ARM内核MCU代码。
FreeMaster的vpt指标源码版本与下载
FreeMaster有多个版本,从2.0移植到最新3.2。除了传统的FreeMASTER上位机外,还有FreeMaster Lite支持Web远程通信和第三方使用JSON-RPC的应用。FreeMaster 2.0至2.5版本适合大多数调试需求,3.0以上版本体积大,功能多,但并非所有用户都需使用。提供下载链接方便用户获取。
FreeMaster的基本设置
安装后,新建工程以保存配置,便于后续更新。在使用SWD时,无需修改工程设置和代码。选择通信方式(推荐Plug-in模式)并引入axf文件,即可在FreeMaster中索引变量名称和地址。新增变量观察器,设置观测类型、大小、频率和格式。创建波形图显示界面,设置显示变量、视频壁纸源码颜色和坐标轴。导出观测数据进行分析。
总结
FreeMaster提供强大的数据可视化功能,简化了MCU调试过程。其版本多样,适合不同需求。通过基本设置和高级功能,用户可更直观地进行代码调试,尤其适用于电控算法的调试。此外,导出功能支持数据记录和分析,提升调试效率。
你可能不知道的ChromeDevtools实用功能
今天来分享ChromeDevTools的个实用调试功能!1.保留日志当我们刷新完页面之后,通常控制台的Console面板就会被清空。如果想保留控制台的日志,就可以在设置中勾选Preservelog选项以保留控制台中的日志。
2.代码覆盖率我们可以打开设置,在Experiments中勾选Recordcoveragewhileperformancetracing选项。
在面板下方的Coverage面板中点击红色按钮以记录页面的代码覆盖率:
代码覆盖率使用动态分析法来收集代码运行时的覆盖率,让开发者知道有代码在页面上真正的源码找封面使用。动态分析是指在应用运行状态下收集代码执行数据的过程,换句话说,覆盖率数据就是在代码执行过程中通过标记收集到的。
3.显示重绘在浏览器的开发者工具中可以通过开启显示重绘选项以查看页面在执行操作时哪些元素会发生重绘。
在控制台右上角三个点中的Moretools选项中开启Rendering选项卡:
在Rendering(渲染)选项卡中开启Paintflashing:
当刷新页面时,显示绿色的区域就是重新绘制区域。
4.检查动画Chrome的开发者工具不仅可以调试样式,还可以调试动画,可以在控制台右上角三个点中的Moretools选项中开启Animations选项卡:
当页面的动画执行时,就会在时间轨道上查看所有的动画,点击其中一个动画可以懂得执行过程以及时间轴:
我们可以在时间轴上定位到任一时刻的动画帧,也可以拖动左右两端的圆点来修改动画的延迟和周期,修改之后可以在属性面板看到对应的CSS样式。
5.截图Chrome浏览器内置了截图功能,可以在浏览器开发者工具中使用Ctrl+Shift+P(Windows)或者Command+Shift+P(Mac)快捷键打开搜索来查找screenshot:
这里有四个选项:
第一个:截取自选区域;
第二个:截取整个网页;
第三个:截取当前节点;
第四个:截取当前屏幕。
截图完成后自动下载到下载目录,打开浏览器的下载框或本机的下载目录即可看到。
6.LocalOverrides我们可以使用本地资源覆盖网页所使用的资源,比如可以使用本地CSS文件覆盖网页的css文件,修改样式。将本地的源码安装miniwep文件夹映射到网络,在Chrome开发者功能里面对CSS样式的修改都会直接改动本地文件,页面重新加载,使用的资源也是本地资源,达到持久化的效果。
详见:/post/
8.事件监听器的断点有时应用会在用户发生交互时出现问题,这时我们就可以添加事件监听器添加断点来捕获这些事件以检查交互时的问题。可以在Source面板右侧的EventListenerBreakpoints中勾选相应的事件:
9.DOM操作的断点当页面的内容发生变化时,如果想要知道是哪些脚本影响了它,就可以给DOM设置断点。我们可以右键点击需要设置断点的DOM元素,在弹出的菜单中点击Breakon以选择合适的断点。
可以看到,Breakon中有三个选项:
SubtreeModifications:子节点(内容、属性)修改通知,常用在子节点内容发生变化后,来定位源码;
AttributesModifications:当前节点的属性修改通知,常用在节点的className等属性被修改后,来定位源码了;
NodeRemoval:当前节点移动时通知,常用在节点被移除时,定位源码。
.异步请求的断点XHRbreakpoints可以用于异步请求的断点,点击加号即可添加断点规则,输入请求的URL地址(片段),会在请求地址包含对应字符串的异步请求发出的位置自动停止:
原文:/post/åç ï¼åç ï¼è¡¥ç ï¼ç§»ç
åå¨åé¢ï¼è¯¥æç« ä¸ºæ¬äººå¦ä¹ ä¸åçä¸äºç¬è®°åå¿å¾ï¼å表åºæ¥ä¸»è¦æ¯ä¸ºäºè®°å½èªå·±çå¦ä¹ è¿ç¨ãæ¬äººæçå¦æµ ï¼ç¬è®°é¾å åå¨ä¸è¶³çè³çº°æ¼ï¼ä½ä¼ä¸å®ææ´æ°ãåºæ¬ç¥è¯ï¼å设æä¸ä¸ªnä½çäºè¿å¶æ°
åè¿ä¸ªäºè¿å¶æ°å ±æ ç§ç¶æï¼è¿ä¸ªæ°æ大为
åè¿æ¥ ï¼åæäºè¿å¶ä¸º ï¼ä¸å ±æ8ä½ï¼1åé¢7个å°æ°
以ä¸ä¸¾ä¾å为nä½æ°ï¼å®ä¾ä¸º8ä½æ°
åç
ç®åç´æ¥çäºè¿å¶ï¼ä»¥ä¸ä»¥å®ç¹æ°ä¸ºä¾ã
å®ç¹çº¯å°æ°ï¼ 0 é¦ä½ä¸ºç¬¦å·ä½ï¼0为æ£1为è´ï¼è¿é表示0.1ï¼ï¼
å®ç¹çº¯æ´æ°ï¼ 0 è¿é表示1ï¼ï¼
å 为æ符å·ä½ï¼æ以ææ£è´é¶ä¹å 0 å 1
æ°æ®èå´ï¼-~ï¼åé¢7ä½å ¨ä¸º1ï¼//å ¬å¼è¡¨è¾¾ä¸º
ç¹ç¹ï¼åç ä¸éåå åï¼ä½éåä¹é¤
åç
æ£æ°çåç ä¸å ¶åç ç¸åï¼è´æ°çåç æ¯å¯¹å ¶ç¬¦å·ä½åçåç éä½ååï¼ç¬¦å·ä½ä¸åï¼ä¸º1ï¼
åç è½è¡¨è¾¾çæ°æ®èå´ï¼ä¸æºç ä¸æ ·
è¡¥ç
ç®çï¼æ¹ä¾¿è®¡ç®æºè¿è¡å å
ç¹ç¹ï¼å¨æºå¨ä¸éåå åçæ°å表示æ¹å¼
è¡¥ç è½å®ç°è®¡ç®æº"å ä¸è´æ°"çæ¬è´¨åçæ¯æ¨¡è¿ç®ï¼ä¹å°±æ¯Aåå»BçäºAå ä¸Bç¸å¯¹äºAçè¡¥æ°åæ±æ¨¡ã就好åæ¶é顺æ¶éæ¨å¨3håéæ¶éæ¨å¨9hå¾å°çç»æä¸æ ·ã
äºè¿å¶æ±è¡¥ç ï¼
è¡¥æ°=ï¼åæ°+模ï¼ï¼mod 模ï¼ï¼å¾ææ¾ï¼è¥åç æ¯æ£ï¼åè¡¥ç æ¯å®æ¬èº«ï¼å¯¹äºæ£æ°å®å ¨ä¸ç¨èèæ±è¡¥ç ã
对äºè®¡ç®æºï¼å 为两个ç¸å çæ°çä½æ°ç¸åï¼nï¼ï¼ä¸åä¸è½è¶ è¿n+1ä½ï¼å æ¤åºè¯¥åç模æ¯...ï¼n个0ï¼ã
å æ¤å¯¹äºnä½çº¯å°æ°ï¼å®ç模ï¼åè¿å¶ï¼ä¸º2 ï¼å¯¹äºnä½çº¯æ´æ°ï¼å®ç模为2 n
模 ï¼ ï¼1 0 ï¼
åç ï¼ ï¼ 0 ï¼
注æå°ï¼å°½ç®¡ç¬¦å·ä½æ²¡æä»»ä½æ°å¼ä¿¡æ¯ï¼è¿éå模ä¾ç¶æ符å·ä½èèè¿å»äºï¼åå æ¯æ们å¯ä»¥éè¿å®ä¹è¡¥ç ï¼æ¥ä½¿ç¬¬ä¸ä¸ªç¬¦å·ä½åä¸è®¡ç®æºè®¡ç®ï¼ä»èå¾å°æ³è¦çç»æã
ï¼åæ¶ï¼æ符å·ä½ç®è¿å»å¯ä»¥è®©æ们å¨ç¨æ°å¦å ¬å¼æ³æ±äºè¿å¶è¡¥æ°æ¶ï¼ç´æ¥ä»ç»æå¾å°è¡¥ç
ä¾: x= -0.
[x]è¡¥=+x=.-0.=1.
åæ¥æ¯è¦å模å¾è¡¥æ°ä¸º0.ï¼2ï¼ï¼ä½æ£å¥½é¦ä½ç1å¯ä»¥è¡¨ç¤ºåæ°çè´å·ï¼å æ¤å¯ç´æ¥è¯»åºè¡¥ç 为1
ï¼
å æ¤å¯¹äºè¡¥ç ï¼ç¬¦å·ä½æ¢èµ·æ示æ£è´å·çä½ç¨ï¼ååä¸è¿ç®ã
å¦å¤ï¼åºå«äºåç æ两个0ï¼æ£è´0ï¼ï¼å¨è¡¥ç çè§å®ä¸ï¼åªæä¸ä¸ª0ï¼...çæ£0ï¼å 为åç ä¹å ¨æ¯0ï¼ï¼è1 ...å¯ä»¥è¡¨ç¤º-1ï¼è¡¥ç 纯å°æ°ï¼æ-2 n-1 (è¡¥ç 纯æ´æ°)
//å¯ä»¥è¿ä¹è®°ï¼ä»¥çº¯æ´æ°ä¸ºä¾ï¼ï¼å 为åé¢n-1个0ååå为n-1个1ï¼å 1å为2 n-1 ()ï¼åé¢ä¸ä¸ª1表示è´æ°ï¼å æ¤è¡¥ç è½è¡¨ç¤º-2 n-1
è¡¥ç æä¹æ¥ï¼åç 为æ£ï¼è¡¥ç ä¸åç ç¸åï¼åç 为è´ï¼åé¢çä½æ°ä¸ºåç ååå 1
移ç
ç®çï¼ä¸ºäºæ¹ä¾¿è®¡ç®æºæ¯å¤§å°ï¼æ¶é¤ç¬¦å·ä½å¯¹è®¡ç®æºçå¹²æ°
åçæ¯æè´æ°é¨åå ¨é¨ç§»å°éè´æ°æ¹åï¼ä¹å°±æ¯è¯´è¦æ第ä¸ä½ç¬¦å·ä½çæä¹ç»æ¶é¤æãæ¶é¤æ¹æ³ä¸ºï¼å¯¹äºè¡¥ç çæ£æ°ï¼ç¬¦å·ä½ç±0å为1ï¼å¢å¤§ï¼å¯¹äºè¡¥ç çè´æ°ï¼ç¬¦å·ä½æ¦å¿µæ¶é¤ï¼å¨è®¡ç®æºä¸è¢«å®ä¹ä¸ºæ£æ°ï¼å为äºç¡®ä¿åè´æ°å°äºåæ£æ°ï¼ç¬¦å·ä½ç±1å为0ã
为äºä¿è¯æ¯ä¸ªæ°ä¹é´å¤§å°å ³ç³»ä¸åï¼è¦ç¨è¡¥ç æ¥è½¬æ¢æ移ç ï¼ç¨åç æ¥è½¬æ¢çè¯ï¼è´æ°ä¹é´ç大å°å ³ç³»ä¼å转ã
æ°å¦å ¬å¼ï¼
å®è§ä¸æ¥çæ¯æå± ä¸çæ´ä¸ªæ°è½´å¹³ç§»å°äºéè´åè½´ä¸ï¼æ¯ä¸ªæ°ä¹é´ç大å°å ³ç³»ä¸åã
纯å°æ°[X] 移 =1+X
纯æ´æ° [X] 移 = (ä¸è¬æ å)
移ç æä¹æ¥ï¼ç§»ç åè¡¥ç å°¾æ°ç¸åï¼ç¬¦å·ä½ç¸å(ä¹å°±æ¯è¡¥ç é¦ä½ç1->0 ;0->1ï¼
å 为移ç ä»è¡¥ç é£éæ¥ï¼æ以ä¹è½é¢å¤å¤è¡¨ç¤ºä¸ä¸ªæ°
VS Code 1. 正式发布!终于支持文件的本地历史记录!
Visual Studio Code 1. 的最新发布亮点颇多,其中一项重大改进是终于支持文件的本地历史记录。这个功能让你能够独立于源代码控制,跟踪本地文件的每一次更改,每次保存编辑器时,历史记录就会自动添加到时间轴视图中。每个历史条目包含文件的完整内容,并支持设置语言过滤、工作区和文件夹设置,这些设置现在会自动保存,直到用户手动调整。
在终端方面,搜索功能得到增强,所有匹配项都会高亮显示,你可以自定义颜色。滚动条中添加了注释,帮助快速理解代码结构。对于JavaScript调试,1.版本引入了堆配置文件支持,有助于分析内存使用情况。CSS格式化程序也得到了提升,内置扩展可处理CSS、LESS和SCSS,并提供了可自定义的设置选项。
HTML文件中的JavaScript语义突出显示也更加精确,增强了代码的可读性。此外,VS Code现在支持在浏览器窗口中直接拖放文件和文件夹,方便文件管理。R语言扩展也有了新主题,提供了丰富的功能,如代码完成和linting,以及集成的终端和数据可视化工具。更多详细内容,你可以参考微软官方博客。
纯干货!陀螺仪MPU模块输出姿态角(有完整版源码)
在准备国赛的PID控制项目中,遇到风力摆的解决方案时,我曾在CSDN上寻找资料但收获寥寥。直到发现正点原子的资料介绍MPU模块,才豁然开朗。视频教程详细而实用,尽管需要微调,但整体思路清晰。借此学习成果,我决定记录下这个学习过程。
陀螺仪,作为角运动检测装置,其原理基于高速旋转体保持角运动方向不变。陀螺仪工作时,通过高速旋转保持稳定,可测量角速度和角加速度,进而推算出PITCH、YAW和ROLL角。MPU则集成了陀螺仪、加速度计和DMP,可以输出9轴信号,配合InvenSense的运动处理库,简化姿态解算,减轻系统负担。
MPU的特点在于其内部构造,包括三轴陀螺仪、三轴加速度计,以及温度传感器。它通过IIC接口提供数据,配置寄存器如电源管理、陀螺仪满量程范围、加速度传感器范围和FIFO使能等,都是关键参数。比如,通过设置SMPLRT_DIV,可以精确控制陀螺仪的采样频率。
硬件连接部分,只需连接5V电源、地线、IIC数据线和地址线,其中地址线PA需确保在使用前禁用JTAG。软件代码方面,正点原子提供了官方库移植和基础IIC通信函数,以及MPU初始化等关键部分。
学习过程中,还涉及FIFO的理解,它是数据传输中的先入先出机制,对于提高系统性能非常重要。另外,注意PA的使用限制和MPU的参考点设定,这些都是实施项目时需要关注的细节。
最后,通过MPU,可以实时获取PITCH、ROLL和YAW的度数,以及温度数据。视频教程是深入学习的好资源,为项目提供了实用的指导。
以上是关于MPU模块输出姿态角的详细解读,希望能帮助到同样在摸索的你。