- 博客(111)
- 收藏
- 关注
原创 CAN协议的采样点
可以参考TSMaster:硬件—总线硬件–硬件配置。SJW 是围绕标称 80% 采样点做动态纠偏CAN 里一个 bit 时间会被分成几段:Sync_SegTimeSeg1TimeSeg2“采样点 80%”指的是:从这一位开始算起,走到整个位时间的 80% 位置时,控制器去读取总线电平,判定这一位是 0 还是 1。
2026-07-06 11:58:01
288
原创 hex格式介绍
Intel HEX 文件里每条以 : 开头的记录,最后 1 个字节,也就是最后两个十六进制字符,是该行记录的 checksum。格式是:含义:LL:数据长度,例如 20 表示 0x20 = 32 字节数据AAAA:低 16 位地址TT:记录类型,00 是数据记录,01 是文件结束,04 是扩展线性地址DATA:数据内容CC:本行 checksumchecksum 不是整文件校验,而是每一行单独校验。
2026-06-14 22:16:55
171
原创 codex自定义skill
先找到自己的codex根目录此路径下面有AGENTS,这个是全局规则AGENTS.md是全局/项目级行为约束更像“默认规矩”SKILL.md是某一类任务触发时才使用的专项说明更像“专用手册”所以如果把“注释必须按 EN 整段 + CN 整段”写进 AGENTS.md,那效果就是:以后不管哪个工程只要会话加载了这个全局 AGENTS.mdagent 写注释时都应该按这个规则来,不需要单独调用skill来说明下面是我的AGENTS.md所要求的全局规则。
2026-05-27 19:20:17
212
1
原创 TC397的VLAN
VLAN 是二层的802.1Q标签机制它能把一个物理以太网划分成多个逻辑子网TC397 的GETH支持 VLAN 收发和过滤TC397 可以和 RK 在相同 VLAN ID 下通信如果要普通以太网通信,就双方都不要加 VLAN tag。
2026-05-19 11:49:19
337
原创 关于虚拟机的共享文件夹
vmware-host\Shared Folders里面,直接在文件夹里面输入即可。上图的主机路径就是自己设置的,然后虚拟机的共享文件夹路径固定在。
2026-05-12 11:50:18
37
原创 示波器与逻辑分析仪推荐
这个示波器有很多功能,比如下降沿采样可以设置下降幅度到多少再进行采样,4通道采样,可以通过网线和电脑连接后在网页输如192.168.1.1进入RIGOL界面。pico的示波器体积很小,可以通过usb插入电脑,通过picoscope来在电脑上面查看波形,十分方便,推荐5颗星。也可以通过u盘保存,开机后,屏幕左上方可以进行设置 – save。这个页面可以去录制波形视频/截图。
2026-04-01 16:26:06
69
原创 TC397的引脚捕获上升沿
我这里是捕获1s1MHZ的方波,所以RisingEdgeCnt应该是1000 000左右,这个变量是1s内抓到的上升沿的次数。
2026-01-30 15:43:04
62
原创 aurix调试的时候显示遇到了致命错误,请重启
1换elf ,把目前的elf移除,再在debug目录里面把elf加进来。在工作区清空metadata ,然后再次编译,这个招很管用。aurix出现这种错误,下面三种办法都试一下。3调试器,板子全部断电再上电。
2026-01-30 15:38:54
66
原创 剪切板推荐,pastemate代替win系统自带的,复制粘贴
链接: https://pan.baidu.com/s/1InJIvHtkC9tQqMgQiq-jhw?pwd=5668 提取码: 5668。通过网盘分享的文件:pastemate剪切板.rar。win自带的有上限,也不会同步,放弃了,用这个。
2026-01-08 14:11:27
111
原创 extern用法
/ 可选,include 头文件即可。// 定义(分配存储)extern int g_cnt;// 声明(不分配)void inc(void) { g_cnt++;常量表(只读 Flash)
2025-12-31 10:40:02
221
原创 字节对齐的优化
1.vs(不是vscode)上面调试,会自动显示当前结构体的存储情况2.用sizeof看当前的结构体大小3.可以手写测试代码,给结构体里面的各个成员赋值,然后调试的时候在内存里面看分布情况。
2025-12-29 15:20:51
220
原创 hex转bin,bin转数组
bin文件是机器语言,可以在任意的平台执行,所以我们公司有一个这样的功能,给用户一个界面,这里面是一个函数,函数里面用户可以去配置can的收发规则,上报频率等等,然后下载进单片机。那么这是如何实现的呢?我们用cubeide编译的lib库,这个lib库只针对某个c文件去编译链接,然后在map文件我们可以看到header结构体,他在map的起始位置,这个header结构体里面有函数指针,函数指针在c文件里面指向用户的可修改函数。参考tf1011的lib库实现。这是bin的生成工程。
2025-12-24 15:46:13
319
原创 C语言写exe脚本之DBC生成器
ubuntu虚拟机下写exe是不合适的,因为linux下不支持exe文件,还需要把exe放到共享文件夹(和主机共享),然后在win下面执行。然后生成exe文件 gcc DBC_Builder.c -o dbc_processor.exe。2.安装mingw64和cmake(个人笔记有)// 需要处理内存分配、字符串长度、查找替换…看版本号,下面就是mingw安装完成。同样也要按照mingw。1.安装vscode。Python一行搞定。
2025-12-05 18:38:51
423
原创 TLF35583芯片编程
通过 SPI 接口(SCS, SCL, SDI, SDO)对 TLF35584 进行的所有常规配置、状态读取和控制操作。引脚号名称功能说明(推测)1BSG电池选择或电源门控(Battery Select / Gate)2VST电压检测或测试(Voltage Sense / Test)3ENA使能控制(Enable)4WAK唤醒信号(Wake-up)5QST快速启动或状态查询(Quick Start / Status)6AG1模拟地1(Analog Ground 1)
2025-12-04 18:03:42
946
原创 英飞凌infineon tools烧写hex文件,MEMTool烧写固件
ucb里面包含这个文件,告诉英飞凌芯片hex的启动地址是从0xA0000000开始的。刷写完成后,继续刷写另一个hex进入PFLASH: 16 MByte OnChip Program FLASH (not ready)用aurix工程生成一个hex,然后把这个hex的ucb刷写进芯片。因为芯片默认的ucb是invalid。
2025-11-24 18:44:02
587
原创 windows实时机&实时扩展
windows本身是不支持实时操作的,他保证最大吞吐量和线程优先级越高获取时间片越多,但无法保证在某个具体的时间执行那些具体的操作。一帧tcp的收发就耗时260us,30帧耗时200ms。这如果是在实时机上面发送给下位机,这部分延迟将降至10us级别.windows的延迟和电脑性能,内存使用等等一些列因素有关,延时不确定。因为windows作为上位机给下位机发TCP报文,或者其他命令时,有非常大的延时。为什么需要windows里面装一个具备RTOS功能的扩展呢?所以就有了windows实施扩展这一个设备。
2025-11-21 11:49:56
246
原创 union用法
比如下列的就是union的省空间用法,这样这一个8字节的union可以用来表示非常多不同的结构体。关于字节对齐,可以填充无用字节或者用汇编#pragma pack来指定下来的声明用几字节对齐。union有很多成员,在使用时只对其中的一个成员生效。联合体总大小 = 最大成员大小 = 8。
2025-11-19 18:20:44
163
原创 英飞凌外部以太网时钟与TC397延时1us
我发现手册有两个晶振,一个40M给主时钟,一个125M给P11.5当作以太网的时钟。因为超过100M的需要引用外部晶振。125M是1000M以太网的指定频率,手册与数据手册有介绍。而且在代码里面没有发现关于P11.5的配置,估计如果使用以太网ETH,会自动把P11.5引脚当作时钟来用。
2025-11-18 18:42:27
235
原创 电感和磁珠区别
电感不让电流跳变,电容不让电压跳变,断电时,电感会储存的电流释放掉,磁珠不储存能量,用来过滤高频噪声在原理图里面,L来代表电感,FB代表磁珠ta1101。
2025-11-18 15:10:06
1075
原创 AURIX与tasking改变字体大小
aurix和tasking都是英飞凌的开发ide软件,所以操作是一样的。1.右键代码空白处,点preferences。
2025-11-14 16:21:39
205
原创 如何取消读保护
摘要:解决STM32读保护清除问题,当ST-LINK Utility无法清除level1读保护时,改用STM32CubeProgrammer工具。操作步骤:连接后进入OB选项,将RDP值改为0xAA(保护等级0),点击应用即可成功解除读保护。附操作界面截图展示关键步骤。该方法比传统工具更可靠有效。
2025-11-04 10:19:14
318
原创 交流电如何转为直流电
但是注意多少还是会有波动的,所以对ADC这种来说,参考电压还是选用专用的稳压芯片(稳压二极管不行,因为稳压二极管的范围也比较大)有的设备是宽压输入(9~36V),我们可以先降压到5V,再升压到12V给内部设备。整流桥可以把交流电-的那一部分翻上来,所以频率翻倍了。然后使用电容使电压更平稳。
2025-09-24 18:18:53
362
原创 SPI与IIC所能挂载的从机数量
每颗芯片引脚电容 + 走线/焊盘寄生电容,通常 4~5 pF/设备,因此 8~10 个器件就已接近上限;对于IIC,有8位,其中最后一位一般是读写位,只剩7位了,2的7次方-2(全0,全F地址) = 126个,这是理论的iic能接这么多,但实际。设备越多,并联电阻越小,必须降低上拉阻值以保持边沿速度,但 MCU/主控 I²C 口驱动能力有限,电流过大时低电平被抬高,同样造成误码。英飞凌TC397XX的SPI最多6个,保险一般一个SPI挂4个。这和硬件有关系,如果SPI的从机都频率比较低,那么能接更多个。
2025-09-22 15:15:52
669
原创 虚拟机ubuntu联网
桥接模式下,虚拟机与物理网络上的其他设备(如主机和路由器)直接通信,就像虚拟机是网络中的一台物理设备一样。虚拟机需要访问外部网络(如互联网),但外部网络不需要访问虚拟机。虚拟机位于主机的虚拟网络(通常是私有子网)中,主机通过NAT机制将虚拟机的请求转发到物理网络。虚拟机获取与主机相同网络的IP地址(通常通过DHCP),并可以与网络中的其他设备直接通信。虚拟机需要与物理网络上的其他设备进行直接通信,如用于测试服务器应用、网络服务等。虚拟机与主机通过VMware的虚拟网络交换机连接在一个独立的虚拟网络中。
2025-09-17 18:14:21
837
原创 同星TSMaster的CAN消息收发与实际收发计数对应不上
如果,每秒发一次,但是TSMaster的TX计数不是1s加1,这个可能是TSMaster的bug,出现在老版本。更新侯数据就对的上了。
2025-09-16 11:58:16
220
原创 劳德巴赫与Trace32的安装与使用
注意要想烧进去一定先用aurix烧录一次(任意程序都可以,一般用点灯程序),然后劳德巴赫才能进行后续的烧写工作。
2025-09-15 15:00:16
825
原创 先楫HPM6E80点灯
如果不特殊操作,那么上电复位后所有的gpio都由gpio0这个控制器控制。他有两个gpio控制器,目的是为了方便双核操作。
2025-08-15 17:02:40
534
原创 TSMaster-C小程序使用
本文介绍了使用同星TSMaster工具(推荐32位版本)通过C小程序控制CAN报文收发的方法。主要内容包括:1)在C小程序中设计继电器控制逻辑,实现0-39号继电器循环开关(1秒间隔);2)演示了通过TCAN结构体发送CAN报文(ID 0x240D)控制继电器的代码实现;3)说明TCAN结构体定义(可在TSMaster.h查看),包含通道索引、ID、数据等属性,支持标准/扩展帧设置。该方案便于开发人员通过嵌入式代码灵活控制CAN设备。
2025-08-07 16:52:50
2764
原创 Could not set Option bytes!Please reset the target and retry
摘要:两块相同的STM32H750板子出现读保护解除异常,一块能用ST-Link Utility解除,另一块失败。检查硬件正常后,尝试使用过时的STVP软件未果,最终用STM32CubeProgrammer成功解除。问题源于初始RDP值为0x55(非标准值),手动改为0xAA后成功将Flash擦为全FF并解除保护。该案例揭示了非常规RDP值可能导致工具识别异常,新型芯片需使用官方推荐工具处理。(149字)
2025-08-04 15:10:47
552
原创 关于windows虚拟机无法联网问题
这篇文章介绍了如何检查和开启虚拟机相关服务的方法。首先通过services.msc命令查看并确保虚拟机服务正常运行,若被禁用可通过还原默认配置恢复。文章详细说明了如何设置主机网络共享,包括在网络适配器选项中配置共享,并确保VMnet8设置为NAT模式以实现虚拟机上网。此外还提到遇到netbridge.dll文件缺失时的解决方法,以及一个使用无线网卡直接连接wifi的设想。整个过程配有详细的操作截图,便于读者理解。
2025-07-30 18:12:46
1091
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅