- 博客(182)
- 收藏
- 关注
原创 STM32-- 调试--调试遇到的问题
SysTick_Handler函数在rtos的时候被修改了,改回裸机的时候,SysTick_Handler函数要改回来,延时函数才会正常使用。
2025-04-10 01:28:45
75
原创 linux-- Ubuntu配置ssh访问过程
这样,你的 Ubuntu 机器就可以作为 SSH 服务器使用了!如果你在 SSH 配置中修改了端口,例如。如果需要修改 SSH 配置,可以编辑。一般配置到允许远程访问就可以使用了。替换为你的 Ubuntu 用户名,替换为你的 Ubuntu IP)如果你不想使用密码登录,可以配置。或者手动放行默认 SSH 端口。表示你的 SSH 服务器地址是。
2025-03-30 09:54:16
523
原创 git-- github的使用--账户和本地连接
SSH 密钥:适合经常进行 Git 操作的用户,配置后不需要每次输入密码。个人访问令牌(PAT):适合使用 HTTPS 克隆仓库的用户,令牌代替密码进行身份验证。无论哪种方式,你都可以简化 Git 操作并确保更高的安全性。如果有更多问题,欢迎随时提问!一个设备配置了两个ssh,要注意区分host,就是有一个不能直接使用ssh链接,修改成定义的名字有点麻烦,后续找找其他方式。
2025-03-30 08:53:52
918
原创 STM32--定时器配置、问题、细节
1.不同时钟总线上的定时器时钟频率默认是不一样的,例如stm32f103vct6,最高频率是72mhz,默认apb1的频率是36mhz,apb2是72mhz,导致其他部分同样的配置,定时器时间会相差两倍。apb1通常挂载通用定时器,apb2挂载高级定时器,在配置定时器的时候要注意,这个差异。时钟树显示apb1上面的定时器也能调整到72mhz,我没有实际去尝试。
2025-03-14 17:25:19
109
原创 嵌入式硬件--开发工具-AD使用常用操作
在pcb界面点击L--试图界面中找到“视图选项”--单层模式选择 not in single layer mode。在pcb界面点击L--试图界面中找到“视图选项”--单层模式选择 gray scale other layers。1.如何显示/隐藏其他图层。
2025-03-14 17:10:07
332
原创 工具-- vscode使用问题记录--调试
1.python每次都要重启扩展,才能run成功,不然会出现下面的报警。每次重新打开文件运行都会报警,没有找到解决办法。或者使用reload window指令,
2025-02-17 16:22:45
174
原创 STM32--定时器输出pwm知识点_stm32 pwm-CSDN博客
要设置成PWM_1_TIM_Period设置成0xffff - 1,设置成其他数值会出现脉冲一会有一会咩有。1. 选择TIM_OCMode_Toggle电平翻转模式,
2025-01-16 15:20:25
510
原创 单片机--51- RAM
也可以强制把变量数据保存在0X80--0xff区域,但是禁止这样做,很容易和sfr发生冲突。在这种常规的生命和定义下,变量会被保存在0x0008h--0x007e的地址内,2.RAM被分配的区域是256bytes,
2025-01-01 12:20:52
711
原创 单片机-- 51-keil使用查看空间占用
芯片读回的程序(整个地址0x00000--0x00ff0)硬件:sonix sn8f570212asg。1.keil打开map文件(.m51格式)软件:keil51 v9.60。
2025-01-01 09:40:07
676
原创 STM32-- keil -常用功能
uvprojx文件就是我们平时双击打开的工程文件,它记录了整个工程的结构,如芯片类型、工程包含了哪些源文件等内容;uvoptx文件记录了工程的配置选项,如下载器的类型、变量跟踪配置、断点位置以及当前已打开的文件等等;uvguix文件记录了MDK软件的GUI布局,如代码编辑区窗口的大小、编译输出提示窗口的位置等等。在keil菜单栏没找到怎么修改工程名称,目前先使用这种方式。1.修改整个工程名称(keil-c51编辑器)
2024-12-20 08:34:53
992
原创 stm32-- 存储-flash和ram
是嵌入式系统中存储全局变量和静态变量的两种主要内存区域,它们分布在 RAM 中,但初始化方式和功能不同。通过合理优化 RW Data 和 ZI Data,可以有效减少 RAM 的占用,提高嵌入式系统的运行效率。栈使用超过定义大小时,可能会覆盖其他 RAM 区域,引发不可预料的行为。通过合理规划堆和栈,可以充分利用 RAM,确保嵌入式系统的稳定性和性能。当堆和栈在 RAM 中相遇时,可能会导致程序异常。在 STM32 的 RAM 中,堆和栈的位置通常是通过。中,但它们的分配方式和用途有所不同。
2024-12-13 22:48:33
1223
原创 嵌入式硬件-- 元器件焊接
第一次使用,直接拿东西挑一点涂在引脚上,不知道多少合适,加热台加热到260左右,放在上面观察锡融化,往引脚上附着,就差不多了。一定要冷却,不然很容易掉。用刀片刮过的,要不然,小圆球更多。138度的低温锡(锡膏),锡膏要保存在冰箱里。
2024-12-11 11:46:25
1919
原创 STM32-- 看门狗--介绍、使用场景、失效场景
虽然看门狗是一种非常可靠的保护机制,但它并不是万能的。如果系统设计或硬件环境存在问题,看门狗也可能无法复位。通过合理设计、冗余机制和充分测试,可以最大程度地降低看门狗失效的风险。
2024-11-28 01:43:24
1856
原创 STM32-- keil使用 -设备选择
就能选择SONIX SN8F5000 Family了,不安装SN-Link_Driver for Keil C51的话,会找不到sn8f5000系列的芯片。SN-Link_Driver for Keil C51_V3.00.005安装到keil c51的安装文件夹,keil c51新建工程的时候,比如stm8系列在这里是没有的,因为他的内核是哈弗架构。在project--》manager--》pack installer,更新芯片包,在安装驱动包之前,这个下拉栏是灰色的,只有固定的设备可以选择;
2024-11-27 19:15:30
453
原创 电脑-- 环境变量设置
打开电脑文件夹--》右键属性---》高级系统设置--》高级--》环境变量--》用户环境变量/系统环境变量。新建 PYENV => D:\Developer\pyenv-win。win10搜索框进入环境变量,系统变量是设置不了的;在 “Path”这个变量里面,编辑,添加新的路径。追加 Path => %PYENV%\shims。%PYENV%:表示PYENV 这个变量的路径。追加 Path => %PYENV%\bin。新建环境变量和追加路径。
2024-11-26 16:11:15
505
原创 STM32-- keil 的option for target使用
如:stm32f103c8t6的工程,可以直接在device这里修改成stm32f103vct6,虽然引脚不一样,但是很多一样的地方,可以直接使用,有些不修改也可以下载程序。fromelf -c -o "$L@L.txt" "#L" 生成txt格式的汇编文件,和hex文件同名,同文件夹下面;fromelf -c -o "$L@L.asm" "#L" 生成asm格式的汇编文件,和hex文件同名,同文件夹下面。会给每个c文件都生成,因此没问题的情况下,是不勾选这两个选项,要不然,编译会很耗时间。
2024-11-23 20:15:12
535
原创 STM32-- 调试- 延时、编译空循环
模拟串口输出字符,用到延时函数,同样的延时函数,会有正常和不正常输出的情况;也能正常发送串口数据,电脑接收到[19:42:11.328]收←◆Ahello02。Get_SysTimeMs__和delay_us__函数,可以正常发送串口函数。Get_SysTimeMs__和delay_us__函数,可以正常发送串口函数。Get_SysTimeMs__和delay_us__函数就能正常发送串口数据。只有delay_us函数,使用while循环,发送串口数据更是乱码。printf("中文\n");
2024-11-23 19:45:55
803
原创 c-- 调试 printf管理
要让printf在调试时可用,而在工作时禁用,可以通过以下几种方法实现。这些方法主要依赖于条件编译或配置宏来控制printf的行为。printf通过#define宏控制printf的启用或禁用。
2024-11-23 09:05:13
267
原创 STM32-- 串口发送数据
?答:的作用是等待串口的发送数据寄存器(TXE,Transmit Data Register Empty)变为空,确保可以向串口发送新的数据。这是 STM32 标准外设库(SPL,Standard Peripheral Library)提供的函数,用于检查 USART 的标志位状态。
2024-11-23 05:49:25
711
原创 工具-- source sight-使用问题
1.使用source insight 打开文件,因为有的行太长,1000多个字符,一打开文件si就警告,还要截断,修改文件,一保存就闪退,在打开,就各种问你是保存是回复,搞晕了。没找到有什么方法取消行的字符数限制,就改用了vs studio,vs没有报警。
2024-11-22 16:01:36
187
原创 STM32-- 串口介绍
电压什么不对,后来确定原因是引脚反了,虽然反了,但是中间偶尔也能收到几个正确的字符,所以开始主要以为是程序有问题。如果max输入端没问题,输出端差分引脚ab接反了,电脑串口助手也能收到字符,就像波特率不对,也能收到字符,不过解析出来的是乱码。max485:5v左右驱动,不过有时候3.3v驱动也可以使用,具体有什么问题或者通过电路规避问题还没有了解过。此电路图是简单版本,没有偏置电路(上下拉),防冲击器件,可以使用的,只是少了安全等旁电路。MAX488/MAX490/MAX491:用于rs422。
2024-11-22 09:39:32
615
原创 STM32-- keil常见报错与解决办法
注释掉之后,一直读取不正确,因为我的while里面的延时判断有问题,应该是太短了,有个printf,--timeout之后,printf会把时间拉长,可是去掉之后,timeout减到0,相关标志位还没有变化,可是实际上这个整个while时间很短,导致直接在这里return了。3. 现象:一直发送无用数据到串口,使用debug模式,刚debug连接上,还咩有点击运行,就自动运行了,然后一直发送 \0\0;原因:硬件引脚引起的,断开相应的连线,就正常了,不知道为什么。
2024-11-22 09:37:56
643
原创 STM32--JLINK使用、下载问题记录
解决:断开sw的3.3v,只连接gnd,swclk,swdio可以下载程序。使用segger jflash可以连接成功,但是下载程序会失败;解决过程:尝试一边复位一边下载程序,一直失败。现象:keil下载,会提示如上信息;
2024-11-21 20:12:06
255
原创 STM32--学习记录---jlink使用
target-》mannual programming-》erase sectors或者erase chip;(不擦除也能下载程序,)9.下载成功后: target-》mannual programming-》start application。6.选择 target-》connect;1.打开软件,会提示是否打开上一次的.jflash文件;connect成功和下载程序后,单片机处于不受控制状态;SEGGER J-Flash V6.82g下载程序;3.选择器件,找不到,可以找相近的或者相近的核心。
2024-11-05 21:51:30
418
原创 STM32--KEIL新建工程过程
Options for Target -> C/C++ 菜单下修改外汇晶振频率)1. Crystal设置:晶振频率(一般8MHz或12MHz)2. Xtal(MHz):填写外部晶振频率3. Memory Layout设置:- IROM1: 0x08000000, Size根据芯片选择- IRAM1: 0x20000000, Size根据芯片选择```3. 添加标准库文件:```1. 添加启动文件:2. 添加标准外设库文件(根据需要):等等...```
2024-10-27 08:27:16
1418
原创 STM32--调试-printf输出
1.问题:同样的can接收中断,在使用正常模式的时候,中断里面的printf可以正常打印,使用回环模式的时候,也正常进入中断,但是printf却没有打印,UART/串口忙碌:如果 UART 正在发送其他数据,中断中的 printf 可能无法立即输出。printf 通常不是中断安全的。时序问题:中断可能在 printf 完成输出之前就结束了,导致输出不完整或丢失。中断嵌套:如果发生中断嵌套,高优先级中断可能会打断 printf 的执行。系统负载:系统负载较重时,可能影响中断处理和串口输出的时序。
2024-10-18 10:35:04
328
原创 STM32--外设学习记录--can通讯
现象:程序运行到 if (HAL_CAN_Start(&hcan)!= HAL_OK)死机了,把连接线拔掉,又能继续往下运行了,或者不连接线就一直是正常的。当时电路连接:stm32f103c8t6的canrx(pa11)----另一个stm32f103c8t6(未上电)的cantx引脚(pa12)canrx引脚在连接外部电路会影响程序初始化,HAL_CAN_Start这一步进入了死机,printf("HAL_CAN_Start初始化错误\n");
2024-10-17 16:04:12
275
原创 c-- c语言进阶 typedef
这种只能Person person01;使用struct Person person01是错误的。或者struct Person person01也可以。给结构体取一个别名:struct Person---》Person。枚举和联合使用是一样的。上面带标签的结构体等效于。
2024-10-05 23:26:24
221
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人