- 博客(50)
- 资源 (1)
- 收藏
- 关注
原创 DA14531 Keil开发环境与SmartSnippets Toolbox进行OTP烧录
本文摘要:介绍了使用Keil开发DA14531芯片的配置要点,包括必须使用ARM Compiler 6+、安装支持包和SWD调试设置。详细说明了固件烧录流程:记录大小、烧录程序、更新OTP标头(需设置两个应用程序标志),并将固件大小除以4后以十六进制写入OTP DMA length字段(因OTP以4字节为组织单位)。这些操作基于芯片手册说明,确保bootloader正确加载程序。
2025-11-26 20:04:40
252
原创 windows登录microsoft账号页面白屏,接着闪退
2. 后面在windows 事件中发现这个进程发生了崩溃/错误。经过排查,是与一些软件有冲突导致。比如病毒或加密软件他们劫持或绕过系统某些进程,导致出错。1. 尝试过网上换ip登录,还是不行。(大家可以首先尝试这个方法。
2025-11-24 15:06:39
38
原创 嵌入式系统代码运行优化策略和功耗优化:基于存储架构的动态执行模型
通过分析NOR/NAND Flash的物理特性与CPU-RAM的交互瓶颈,整合XIP(片内执行)、完全加载(Fully Shadowed)和按需分页(Demand Paging)三种模式的互补优势,实现启动速度、内存占用与实时性的平衡优化。
2025-10-09 15:54:12
589
原创 arm coresight
注意ETM、PTM、ITM、HTM、ETB是coresight的子集。这些工具相比普通debug的断点调试,需要更高的专业水平,因此也用于复杂软件故障定位、性能分析、执行分析等用途。这是一个arm设计的调试基础架构,我们常用的debug基本都包含在内。比如ETM、PTM、ITM、HTM、ETB等。3、coresight技术参考手册,这里有相关调试接口的介绍,如JTAG、SWD等。他可以兼容ETM的一些功能。2、介绍ETM架构规格。ETM有相关的专用调试接口。1、介绍coresight。
2025-09-17 20:03:23
204
原创 SmartSnippets Toolbox中 close debug session
在dialog的上位机SmartSnippets Toolbox工具中烧录选择,选择ram时,有一个”close debug session“选项。这个功能选上之后,JTAG将会与主控芯片保持通信,此时,芯片可能无法进入低功耗的状态。可能有一些意想不到的情况。所以使用ram download时,要注意,最好关闭此选项。
2025-09-15 11:38:20
211
原创 64 位/32 位除法和取模的通用 C 版本,具有 64 位结果和 32 位余数
对于32bit平台进行64bit的除法操作时,不能直接计算。需要使用专门的除法操作相关函数,下面的参考链接有64bit除法的相关算法,是基于div64.h中的do_div(n, base)实现的。
2025-09-08 12:25:04
449
原创 Keil中如何检查代码空间是否超限,.lds/.sct文件的核心作用?
在链接脚本中需明确指定Flash的起始地址(ORIGIN)和容量(LENGTHMEMORY#endif如:LR_IROM3 (rwx) : ORIGIN = CODE_AREA_BASE, LENGTH = CODE_AREA_SIZE这里限制了code存放起始地址和结束地址。当链接分配时间检查到超限,则立即报错。这里可以建议大家使用等工具,编译后自动显示Flash/RAM占用百分比,直观识别超限风险。
2025-08-29 17:34:00
334
原创 DA14531(Cortex-M0+)之Wake-up Interrupt Controller (WIC)
在某些情况下 (取决于微控制器设备的设计) ,WIC 仅在深度睡眠模式 (设置了 SLEEPDEEP 位) 下激活,您可能还需要在微控制器中特定于设备的 PMU 中对其他控制寄存器进行编程,以启用 WIC 模式深度睡眠。当检测到中断时,WIC 向微控制器内部的电源管理单元 (PMU) 发送请求,以恢复处理器的电源和时钟信号,然后处理器可以唤醒、恢复作并处理中断请求。WIC主要是支持低功耗的唤醒、硬件级别的唤醒,仅支持高低电平,不支持边沿触发,可以关闭NVIC电源。具备独立的唤醒中断向量。
2025-08-28 18:26:16
478
原创 current foldback折返功能是什么?
在短路负载条件下,折返会随着VOUT降低的而减小IOUT。当VOUT降至零时,折返会将输出电流保持在一个有限的恒定水平。“折返”一词源自保护操作期间折返的输出电流(IOUT)与输出电压(VOUT)曲线形状,如图1所示。如果输出引脚上连接了输出电容器或电容性负载,则VOUT会升高,而折返功能会限制IOUT。如果发生过流,折返功能(foldback)会保护我们的LDO稳压器。当过流状态消失后,VOUT会自动恢复至正常电平。LDO稳压器如何进行过流保护?
2025-08-19 15:26:35
337
原创 关于C语言连续强制类型转换,有符号数据位移,以及温度传感器int16有符号数据重组处理问题
关于C语言连续强制类型转换,是从温度传感器中数据处理拓展讨论的一个问题。
2025-08-06 23:37:02
732
原创 进入hardfault的原因
stack栈自动分配,如果代码过多,嵌套、递归、返回和传递参数多都会消耗大量stack,还有函数内有大型结构体、大量局部变量。6. 参数类型不匹配:使用与定义类型不同的参数可能导致程序跳转到`HardFault_Handler`,且这种情况下的问题通常是不固定的。4. 数据类型错误,当程序强制类型转换时,强制转换后类型内存可能未对齐,将导致错误。通过List或者Map文件,看看是否有内存地址异常的情况,同时结合第一点和第二点做分析。如DMA、MPU、RTOS任务栈、硬件浮点、终端服务函数栈。
2025-07-28 16:51:49
615
原创 Da14531蓝牙特征值1读没有回调解决
二. 后来发现需要在user_custs1_def.c中的属性表加上相关的权限声明(红色部分即权限声明,加上之后user_peripheral.c即可有正常回调。一. 我们调试中发现user_peripheral.c中的回调,一直都没有回调。(大家可以通过打印去排查)三. 官方参考资料,虽然没有明示需要加上“”,但可以很明显看到这个区别。//此处省略一部分代码。//此处省略一部分代码。//此处省略一部分代码。//此处省略一部分代码。//此处省略一部分代码。//此处省略一部分代码。
2025-05-15 21:32:55
567
原创 DA14531怎么修改Generic Access service中的Device name和 Appearence
虽然官方的设备名和广播名是挂钩的。但最终是在这个函数中实现,所以直接在这里修改代码实现即可。
2025-05-14 20:02:23
137
原创 解决opt40xx光传感器latte运行错误的问题
2.2. 进入【HKEY_LOCAL_MACHINE】>>【SYSTEM】>>【CurrentControlSet】>>【Control】>>【COM Name Arbiter】2.1. 快捷键 WIN+R,在对话框里,输入 regedit,打开注册表编辑器。1. 系统设置不能设置成unicode.2. 修改注册表,解除USB占用的问题。相关的设置在“语言与区域”的设置中。
2025-02-20 00:32:44
260
原创 C语言无符号数据与有符号数据加法运算
以下是一个常常用来测验C语言水平的题目,这个代码考点也算是有几个,很多人知道答案,但可能忽略了出题人的目的,理解上也出现了偏差,没有明白其中规则。(a+b > 6)?
2025-01-10 20:48:22
913
原创 32位CPU中,实现32位无符号乘法,返回64位无符号数据。原理解析。
大家看看我们两位数的乘法是如何计算的呢,方法也是类似的,可以把64bit的数据看做作是两位十进制数相乘,十位是u1和v1,个位是u0和v0,两个最大2位数相乘不会超过4位数,所以两个32bit的数相乘不会超过64bit,方法也就可行。//u低16bit与v高16bit相乘的结果,加上w0的进位(进位到bit16~bit31)结果。//更新为低 16 bit与高 16 bit相乘的结果加上之前的 w1。//t的高16bbit,t的进位(进位到bit32~bit47)。//取u的低16bit。
2024-09-03 00:28:22
767
原创 Telink泰凌微如何添加Lib库
2. properties - c/c++ build - Settings - TC32 C Linker - Libraries,把文件添加到编译设置中。注意添加的库文件名需要删除“lib前缀”。例如:liblt_825x.a这个库文件,添加时,删除前缀“lib”,名称则为“lt_825x.a”1.首先把lib文件放在sdk的proj_lib文件夹中。基于TLSR8258。
2024-08-26 16:36:06
389
原创 nordic undefined reference to `stdout‘,
这样,所有构建配置(“Debug”和“Release”)都可以从相同的私有配置(“Common”)继承共享选项。目标处理器,包括目录,...,只需在“Common”中设置,并在“Debug”和“Release”中使用。未在指定级别上做修改的所有选项都将继承自上层,这样就可以在一个级别上修改某些选项,例如定义、包含目录或优化级别,同时保留所有其他选项。solution有Public Configuration,Private Configuration 和 Loader Configuration 配置。
2024-07-30 15:41:23
1143
原创 Telink烧录脚本
tx_power(-30,24) ##test_name:TxPower_2498MHz信号值大小,根据板子实际信号大小更改,修改时只更改括号内-30的数值,保留24,不可过大。注意,不可全片擦除!reg_write(0x0592,0x3F) ##GPIOC的1,2,3,4,5,6 pin使能输出,其他Pin禁止输出。
2024-06-04 11:22:40
1066
原创 nordic s140 softDevice 片上系统资源要求---片内硬件外设
访问类型定义限制硬件外围设备由 SoftDevice 使用,并且是在应用程序沙箱之外。启用 SoftDevice 后,它只能可通过 SoftDevice API 访问。通过此应用程序编程接口(API),应用程序具有有限的访问。封锁硬件外围设备由 SoftDevice 使用,并且是在应用程序沙箱之外。应用程序没有访问权限。被阻止的中断外围设备由 MBR(see) 转发到 SoftDevice,并且不可用于应用程序,即使在无线电时隙 API 时隙内。开放SoftDevice 不使用硬件外围设备。
2024-04-29 16:26:22
961
原创 nordic s140 softDevice 片上系统资源要求
本节介绍 SoftDevice(包括 Master boot record and bootloader,下文简称MBR)如何使用片上系统 (SoC) 资源。SoftDevice 要求说明以下情况: SoftDevice 已启用和禁用。SoftDevice 和 MBR(see)设计为安装在代码存储空间下部的 nRF SoC 上。重置后,MBR 将使用一些 RAM 来存储状态信息。当 SoftDevice 是 启用后,它使用 SoC 上的资源,包括 RAM 和无线电等硬件外围设备。
2024-04-29 14:28:48
443
原创 Git ignore、exclude for TortoiseGit 小结
Git ignore、exclude for TortoiseGit 小结
2024-04-21 01:21:24
1490
原创 TLSR8258如何配置外部PA?
TLSR8258内部集成了一个PA,功率最大10dbm。如果想要使用外部PA LNA,那么如何配置呢。首先需要关注三个代码文件:#define PA_ENABLE 1#ifndef PA_TXEN_PIN#define PA_TXEN_PIN GPIO_PD5#endif#ifndef PA_RXEN_PIN#define PA_RXEN_PIN GPIO
2024-04-16 12:36:17
729
原创 如何让Nrf connect、EFR connect直接显示特征值数据及其单位
其 原 创 性 以 及 文 中 陈 述 文 字 和 内 容 未 经 学 术 机 构 或 标 准 组 织 证 实 , 对 本 文 以 及 其 中 全 部 或 者 部 分 内 容 、 文 字 的 真 实 性 、 完 整 生 及 时 性 本 人 不 作 任 何 保 证 或 承 诺 , 请 读 者 仅 作 参 考 , 并 请 自 行 核 实 相 关 内 容。这次我们仍以TLS8258为例,当然如果是其他蓝牙芯片,配置方式也是大差不差,规则一样的。效果如图:app直接显示了我的温度,并且有两位小数,还有温度单位。
2024-04-15 18:24:14
798
原创 ip白名单之网段
终止地址,先把掩码取反,然后再与主机ip按位与运算,那就是:00001010 00001010 00001010 11111111,转换成十进制就是。两个地址二进制按位与运算得到:00001010 00001010 00001010 00000000,那这个也就是起始可用地址也就是。主机ip地址从10进制转换为2进制:00000000 00000000 00000000 00000000。掩码地址从10进制转换为2进制:00000000 00000000 00000000 00000000。
2023-08-28 18:34:11
1552
原创 arm compiler6 and compiler5 差异
Arm Compiler for Embedded Migration and Compatibility Guide
2023-05-04 19:34:09
951
原创 expected ‘(‘ after 、error: use of undeclared identifier ‘PRESERVE8‘
以上报错均是编译器问题,SDK默认是compiler5 for keil,对于compiler6而言,很多特性不再支持。在搭建nordic 52xx系列keil开发环境时,发现报错。
2023-05-04 19:28:29
2707
原创 对word文档中指定的相同内容/文字加颜色或背景颜色
2.1.先摁下“ctrl”+"H"2.2.选择“查找”2.3.查找内容框填入“code”2.4.点击以下项中查找,选择主文档。(如果你要对某一段文章的相同文字/内容加背景、颜色,那就选择当前所选内容。如果对全文做此处理,选择主文档。2.5.现在可以看到“code”都被选中,现在可以都被选中。2.6.现在可以在“开始”-“字体”中设置字体颜色和背景颜色。(注意要先设置字体颜色,然后再设置背景颜色。
2023-03-07 16:25:38
7257
原创 fatal: protocol error: bad line length character: Welc。server refused to start a shell/command
fatal: protocol error: bad line length character: Welc。server refused to start a shell/command
2022-10-12 18:39:23
2080
1
原创 SmartRF Studio 7 not able to open device control pannel for.......
通常会有如上图所示的提示:1.打开输入文件失败。运行时,软件打开C:\ti\SmartRF Studio 7\bin\..\config\board_config\XDS110c2.dat失败。ok,查看一下,找不到这个目录和文件。解决方案:我发现这个文件在C:\Users\Flour\Documents\Texas Instruments\SmartRF Studio v7,于是我把“SmartRF Studio v7”文件整体复制到“C:\ti\SmartRF Studio 7\..
2022-01-25 10:26:37
567
原创 #1965 cannot open source file "xdc/std.h"
最近在调试TI的MCU, 在追踪一个类型别名的定义,不断打开头文件之后,再编译就出现这个问题。因为自己很清晰的记得,没有进行其他操作,所以有重新编译,还是这个报错问题。 这应该是TI CCS IDE的问题。 我们可以先点击“clean project”,这样呢,之前编译链接信息就会被清除。然后再点击“build project”...
2020-03-08 23:27:40
3742
1
原创 CPU架构、开源架构与架构授权,我来说。
计算机指令从指令集的长度特点分类:有RISC(Reduced Instruction SetComputing)和CISC(Complex Instruction SetComputer)。典型的就是手机SOC里的CPU99.99%都是RISC,我们的PC主板上的CPU99.99%都是CISC指令集。具体一点基于ARM的都是RISC,基于X86/64的Intel和AMD CPU都是CI...
2019-11-14 23:15:33
1106
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅