- 博客(59)
- 收藏
- 关注
原创 时间差值的计算及无符号数减法的问题
实际上这就是---无符号数的自动取模特性(也称为回绕特性)是计算机底层数学运算的核心机制之一,指当无符号整数的计算结果超出其数据类型所能表示的范围时,结果会自动对类型最大值+1取模,而非引发溢出错误。以前的工作中遇到一个问题,就是我有一个uint32_t的变量,每隔1ms累加一次,我需要利用这个变量来计算某段程序的运行时间。当时看到有个人直接使用的减法计算时间的差值,当时我有一个疑问就是时间溢出了怎么办?当时也是搜索了好多资料,也没有彻底解决,也请教了同事,估计他要么是不懂,要么是装不懂。
2025-06-11 14:54:03
91
原创 结构体、结构体指针、传值调用、传址调用
此时结构体内部的指针成员也会被复制,但复制的是指针的值(即地址),而不是指针指向的内容。特别需要注意的是,当结构体包含指针成员时,虽然结构体本身是传值调用,但通过指针成员仍可修改指针指向的内容,这种特殊情况常造成理解上的混淆。虽然结构体参数传递属于传值调用,但由于指针成员存储的是内存地址,在函数内部通过该指针修改其指向的内容时(如*p=new_value),会产生类似传址调用的效果。而传址调用中,形参通过指针间接访问实参的内存空间,函数内对形参的操作实际上是对实参内存的直接修改。
2025-06-11 09:30:36
62
原创 c盘怎么安全清理---微软电脑管家
系统应用管理中的工具里面有个可以转移安装的软件到d盘,有一些软件可以,大部分的都不行,只能重新安装。问了ai,也是要安装第三方的软件,win自带的不行吗?仔细一看确实是官方自带的。4、转移文件到其他的盘。3、使用自带工具扫描。
2025-05-04 17:35:43
295
原创 simulink新建变量的过程及在实际工程中的应用
本工程中有2个数据字典,分别在模块sim和som中,一个代表输入,一个代表输出,然后总得数据字典包含两者,所以每个数据字典都是一样的,相互包含,逻辑感觉有点饶人。本来按照李鹏的说法,每个模块建立一个数据字典这样也比较清晰。本工程没有采用这种方法。数据字典的层次结构(合理性先放一边,因为这个工程是这样做的,目前来看可以正常运行)输入输出端口和信号是分开的。
2025-04-21 08:53:34
61
原创 使用AI理解stateflow一例
拥抱变化,积极看待ai带来的变化,利用好这次革命,学习的革命。拿到一个程序,但不知怎么操作,ai可以识图,实践一下吧。1、先截图保存本地,上传后输入问题,请解释这张图片。
2025-04-16 15:31:25
46
原创 simulink中的数据字典 .sldd---介绍
一、概念介绍:数据字典的本质与核心价值数据字典(Data Dictionary)是系统工程的数据中枢,用于取代传统分散的基础工作区(Base Workspace),实现模型参数的集中化、结构化与版本化管理。1.1 核心属性数据类型管理:存储变量()、总线对象(Bus Object)、枚举类型、别名(AliasType)等。数据一致性保障:通过类型约束(如fixdt定点数)和单位(Unit)定义,确保模型、测试与生成代码的一致性。协作与复用。
2025-04-16 15:25:36
171
原创 stateflow中的函数
最近开始使用STATEFLOW,感觉功能比较强大,在嵌入式的应用中应该缺少不了,先将用到的仔细总结一下。还有一点,积极拥抱ai,学会使用AI的强大功能来学习。中,不同类型的函数和状态适用于不同的建模需求。
2025-04-16 15:21:54
202
原创 matlab暗黑界面的更改
2、能调整的范围很有限,现在只能调整简单的界面,希望后续能生成真正的dark模式。1.作为一个程序员啥都喜欢黑色系的,养眼吗,习惯了吧。界面相关的基本上就这么多。
2025-04-11 11:50:40
193
原创 matlab内置的git软件版本管理功能
用过matlab的人都知道,版本管理对于matlab来说真的很费劲,今天介绍的这个工具也不是说它就解决了这个痛点,只是让它变得简单一点。版本管理肯定是不可或缺的,干就完了。如图所示,它能将你模型的改动过程清晰的展示出来,这个工具还是不错的,将你的变更清晰的用图示化的工具展示,有助于图形代码的管理。如图所示,源代码管理,选项罗列的也很清晰。我们找几个常用的选项介绍一下。1、matlab多人协作开发比普通的嵌入式软件开发困难很多。3、数据字典的比较:选择与修订版比较。选择和哪个版本比较,可以选择2个。
2025-04-09 14:24:56
183
原创 sourcetree 3.4.23 安装新版后闪退、打不开
尝试退回到3.4.18,打开所在文件夹,看着还保留上一个版本,直接打开可行的。sourcetree升级到最新版后,打开后闪退。3、找到历史版本安装包重新安装试一下效果。历史版本下载,直接下载。
2025-04-08 10:49:32
293
原创 stateflow应用
文本的代码当中,执行顺序大家已经熟悉了,有条件的有跳转的,没有的顺序执行;simulink中肯定也有执行顺序的,所谓并行都是假象,先执行哪一个呢,从左往右?非也,你先画的哪一个就先执行哪一个。现在的庞大的软件都有官方的帮助文档,写的都很好,看完基本上就会了,至于AI想必都是浮云。我们做技术的应该要知道快餐和日常的区别,不能说快餐没有用,在特定的条件下吧。今天的主角是stateflow,它也是simulink中比较重要的一个工具。按照帮助文档的一步步进行,在应用来说基本上就足够了。1、主角的主角是帮助文档。
2025-04-03 14:09:12
49
原创 在输入总线信号中找不到bus中的所选信号
由于我的分支不在主分支上,我是拉取的部分模块来覆盖我本地的工程,所以应该是某个模块我没有完全更新。查最新的更改记录,这个是最新更改的,所以应该是某些模块这个信号还没有更新进去。先搜索这个信号,看信号名称,这个是手刹的信号标志。找到原工程搜索这个变量相关的模块,全部更新。还是少拷贝了一个模型,继续编译。再编译,终于可以生成了。
2025-03-29 12:55:26
201
原创 找不到信号:在输入总线信号中找不到 Bus Selector 模块 ‘BCM_01/BCM_01/Ext_Output_Bus‘ 中的所选信号
2.2 仔细察看报错的问题说明,已经给出具体的信号,仔细观察这个信号得知,这是trk这个模块的输出调试使用的临时设置的变量,可以删除,也可以重新建立一个。至此,已经基本上能定位问题的根源。怎么定义---这里有个信号解析的概念,matlab不一样的地方,信号流最终需要一个显式的关联,在文本语言中可以直接用变量名来表示,图形化的操作并不是这样。双击进入有问题的bus内,观察有问题的总线。至此已经找到问题,问题产生的根源是什么呢?2.1---先问ds,了解问题产生的根源。2.3 点击---进入。
2025-03-28 04:13:26
130
原创 matlab打开两个工程、打开文件和工程
写代码时,需要实时参考别人的代码,需要同时打开2个模型,当模型在同一个工程内时,这是可以直接打开的,如图所示。这个时候就可以同时打开多个模型了。再打开一个MATLAB主窗口。
2025-03-26 08:21:48
380
原创 遥控器钥匙学习---通过uds指令
使用原gateway硬件,软件基于sbcm-main工程新建的一个分支。主要用于钥匙学习的指令发送。一次可以学习把钥匙,uds命令,在查询到学习1把成功后,重新发送开始指令,学习第二把钥匙。5、这里先记录一下,等待后续更新完善。这里需要细化一下,为了后续方便测试。
2025-03-25 10:34:16
47
原创 ERROR:L6002U 一种解决方案
这是由于不同的人上传不同的工程,拉取更新导致的,可能的原因是keil文件夹的组织方式。因为上次做测试时引用了这个文件,应该是造成编译冲突。前面的文章也讲到过有一次出现,这次再看一下为什么。明显不在我的工程内,所以是这个文件包含的问题。打开这个文件,以及它的头文件。此文件包含删除后解决。
2025-03-11 00:21:43
427
原创 matlab-simulink难点记录1
双击空白区域输入stateflow、或者chart或者常用库里面去查找。双击空白区域输入模块名字,自动联想显示相关模块。
2025-02-13 11:05:34
356
原创 CAN物理层定义及显隐性分析
最近关于can显性隐性、0与1的问题再一次的上桌了,再梳理一下,后面将笔记整理后放在这里,供自己和他人查阅,主要还是方便自己吧。
2025-01-16 14:50:31
201
原创 怎样正确的用示波器测量CAN的波形
一个通道普通的探头能测量can总线吗?能,但不准,测量显示的波形不一定是真实的波形。想评价一下can传输的质量,can总线上没有信号,怎么办?拿着示波器直接往前冲!差分探头了解一下,为什么需要差分探头。1、示波器测量的局限性。
2025-01-15 18:50:54
636
原创 补码及存在的意义
最近遇到时间差值的问题,使用减法计算,也可以用abs函数解决,从而又一次接触到补码。补码的问题,微机原理应该学过,无奈都还给老师了,细节也忘记了。
2025-01-03 08:36:28
220
原创 TPMS信号接收与处理
a、改成双边沿触发,触发后检测io电平高低,从而判断上升沿与下降沿--效果改善显著。b、原来RKEY与tpms并行,去掉之一---效果有改善。
2024-12-24 15:18:59
263
原创 为什么handle会被翻译成句柄?
就你们IT,一帮程序员拿着日常用语就往上用,什么handle,什么class,什么default,你叫人怎么翻译,完全按意思来造个词吧,脱离原文了;物理学用词都是新造,什么entropy,什么quantum,听发音都知道有多么玄妙,翻译出来也是熵、量子这样高大上的名词。这个词的作用大概就是在读者经过各方考证,弄明白何为“句”,何为“柄”之后,终于明白了译者为追求一个“雅”字所付出的巨大努力,而后像老学究一样合上书本会心一笑吧?知乎中的回答很有想象的空间,看了几条之后,略有感悟。作者:Theodore。
2024-12-18 10:44:05
322
原创 sourcetree-将已有的本地工程推送至服务器---git相关
本地的工程运行了一段时间,成熟后想整体移至云端,协同开发怎么办?3.1、先将现有的工程在本地新建、打开。sourcetree能办到吗?3.3、最后关联远端推送即可。3.2 、在云端新建仓库。
2024-12-17 11:44:36
342
原创 关于裸机系统周期性任务执行时刻的思考
rtos的优先级管理,任务调度的优势这个时候就体现出来了。自己做裸机系统的话,这些要考虑进去。去思考问题本身,及问题产生的原因,多问Y,从根本上解决问题,而不仅仅是停留在what表面。
2024-12-17 09:28:18
182
原创 CAN配置---波特率中断引脚等---autochips-AC7811-ARM-M3内核
虽然没有nxp的配置工具那么直观,写在生成的代码里面,聊胜于无吧!
2024-12-16 13:54:11
339
原创 CAN过滤器配置---autochips-AC7811-ARM-M3内核
感觉code和mask是成对出现,搭配使用。code是允许通过的id,mask是在此基础上对此id的每一位再进行检查,mask位为1则此位不需要比较。filter mask data 其中的位=1时,表示需要和上面的codedata一样,=0时表示一样不一样都能通过过滤器。和stm32不一样,如果按照stm32的can模块来理解,那是不行的,具体的区别如下。stm32的过滤器是有列表模式和掩码模式的。两个是结合使用的,缺一不可。重点看这个5是怎么来的。autochips的没有。
2024-12-13 08:57:11
248
原创 TPMS-433mhz-fsk-manchester解码一开始的困惑
2、同事的认知:自己配置的发射和自己配置的接收是正常的,说明发射和接收没有问题。由于是使用的第三方工具,华普微的无线开发套件,自己对此不熟悉。还是由于解码设置不对,波特率设置的问题。1、解码设置不对,没有正确的解码。类似前导码有规律的出现。
2024-12-10 08:57:25
355
原创 vscode自动转换编码
现在写代码基本上是在vscode里面,但是有些调试工作还是需要到专用的ide中,编码不统一怎么办?如果只是GB2312,utf8等一些常用的编码方式,vscode还是能解决的,不需要更换编码方式保存。
2024-12-09 16:47:48
676
原创 大端小端、字节序、位序、intel、MOTORALA一文讲清楚
can总线中位序都是msb,也就是大端,高位先发。大摩小英=大端motorala小端intel。助记符小地低=小地址低字节。
2024-12-09 15:53:16
317
原创 keil 增加文件、文件夹的方式以及error L6002U的解决
keil的文件组织方式比较特殊,特殊的就显得另类,无奈调试还是需要,还是研究一下吧。
2024-12-08 07:11:48
652
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人