城南花已开..
码龄10年
关注
提问 私信
  • 博客:253,084
    253,084
    总访问量
  • 48
    原创
  • 1,359,119
    排名
  • 82
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2015-04-27
博客简介:

城南花已开的博客

博客描述:
记录每一次小小的进步!!!
查看详细资料
个人成就
  • 获得181次点赞
  • 内容获得40次评论
  • 获得1,041次收藏
  • 代码片获得119次分享
创作历程
  • 1篇
    2023年
  • 2篇
    2021年
  • 15篇
    2020年
  • 29篇
    2019年
  • 13篇
    2018年
成就勋章
TA的专栏
  • STM32系列开发经验
    20篇
  • C#
    6篇
  • 算法
    2篇
  • Zigbee--->CC2530
    14篇
  • 个人代码
    1篇
  • Zigbee
    15篇
  • PIC单片机
    1篇
  • C语言
    5篇
  • 实际开发经验
    14篇
  • 个人爱好
    1篇
  • STM32
    18篇
  • 模电数电
    2篇
  • 无线通讯
    2篇
  • 行动的巨人
    1篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

HardFault_Handler问题查找方法

在开头加上0x 后将从图中6处复制的地址粘贴,得到如图中7处所示的数据。3.由于异常发生时,内核将R0~R3、R12、R14(LR)、PC、XPRS寄存器依次入栈,其中R14(LR)即为发生异常前PC将要执行的下一条指令地址。取Memory1的0x200006B8地址中的第6个地址,即图中6处08000A15。2. 打开Memory窗口,将MSP对应的值0x200006B8输入至Memory窗口的Address出(图中5),进行查找。通过R14(LR)即图中2处的值,可确定在MSP(主堆栈)。
转载
发布博客 2023.06.01 ·
2379 阅读 ·
0 点赞 ·
1 评论 ·
14 收藏

c语言栈溢出的原因及解决办法_STM32编程:是时候深入理解栈了

308a08b954ee9de2d3d74da7d482fc43.png[导读] 从这篇文章开始,将会不定期更新关于嵌入式C语言编程相关的个人认为比较重要的知识点,或者踩过的坑。为什么要深入理解栈?做C语言开发如果栈设置不合理或者使用不对,栈就会溢出,溢出就会遇到无法预测乱飞现象。所以对栈的深入理解是非常重要的。版权声明:所有文章版权归嵌入式客栈所有,如商业使用,须嵌入式客栈授权。欢迎关注微信公众号,内容更丰富。啥是栈先来看一段动画:b01edc95ab3f4b1f773e4430d3.
转载
发布博客 2021.05.06 ·
3282 阅读 ·
0 点赞 ·
0 评论 ·
10 收藏

关于RS485的DMA发送,以及EN使能脚的自动切换

ST官方都有APPNOTE指导的(对于UART没有RS485功能的单片机型号而言):1、启动DMA前,先关闭UART发送完成中断,并清除发送完成中断标志;2、在DMA传输完成中断函数中,开启UART发送完成中断;3、在UART发送完成中断函数中,切换RS485为接收态;DMA中断时,只表示需要传送的所有数据字节全部传送到串口的发送数据寄存器中了。此时串口实际上还有2个字节并未发送完成,数据寄存器和移位寄存器中的2个字节还需要发送,并不能关闭串口发送。同理,如果是485切换方向,必须要等到.
原创
发布博客 2021.03.09 ·
5788 阅读 ·
1 点赞 ·
1 评论 ·
21 收藏

C# VS2017中Windows窗体更改图标

一、图片准备1、需要.ICO格式的文件。2、矢量图下载可在阿里巴巴的矢量图库中下载(https://www.iconfont.cn)。3、下载PNF文件的图片后需转成.ICO格式(https://www.uupoop.com)。4、尽量将转好后的.ICO文件放置.sln文件相同的目录之下。二、Windows窗体中左上角图标在窗体属性中的ICON添加图片即可。三、外部桌面显示图标...
原创
发布博客 2020.12.01 ·
2859 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

c# RadioButton控件使用小结

一、整体描述c#的VS2007中 RadioButton 用于多个选择下进行单选操作。Checked用于设置默认勾选,同一个容器只会出现一个。二、容器的使用用于将同一个项目中的多个单选框进行分组,否则无法同时选中两个不相关的控件。例如上图中:固件类型、芯片型号。三、代码实现软件中radioButton_Software1.Checked关键字在窗体的Design中(Name)中进行更改。 if (radioButton_Software1.Checke
原创
发布博客 2020.11.30 ·
3639 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

J-Scope V6.11m使用小结

一、使用平台芯片:STM32F407VET6编译软件:KEIL 5使用软件:J-Scope V6.11m二、使用方法1、目标板下载对应软件,并让软件生成对应的.axf文件。2、将j-link连接至目标板,打开J-Scope V6.11m软件,选择打开新的项目。3、按以下步骤建立项目,以及添加所需要监控的变量即可。三、附加1,更多使用方法及手册,点击软件右上角Help,About。...
原创
发布博客 2020.10.27 ·
1124 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

PID调节经验

Kp: 比例系数 ----- 比例带(比例度)P:输入偏差信号变化的相对值与输出信号变化的相对值之比的百分数表示 (比例系数的倒数)T:采样时间Ti: 积分时间Td: 微分时间温度T: P=20~60%,Ti=180~600s,Td=3-180s压力P: P=30~70%,Ti=24~180s,液位L: P=20~80%,Ti=60~300s,流量L: P=40~100%,Ti=6~60s。(1)一般来说,在整定中,观察到曲线震荡很频繁,需把比例带增大以减少震荡;...
转载
发布博客 2020.10.21 ·
1572 阅读 ·
1 点赞 ·
0 评论 ·
13 收藏

STM32 堆栈大小的设置及分析

一、通过map文件了解堆栈分配(STM32、MDK5)--避免堆栈溢出环境:STM32F103C8T6,MDK5在最近的一个项目的开发中,每当调用到一个函数,程序就直接跑飞。debug跟进去看不出什么逻辑错误,但发现函数内局部变量声明之后,全局变量的值被清零,后来查看局部变量地址已经超出栈的范围,于是确定是栈溢出。如果不稍微了解一下堆栈,在开发过程中可能碰到各种奇怪的错误。二、.map和startup.s文件MAP文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何.
原创
发布博客 2020.10.15 ·
15684 阅读 ·
21 点赞 ·
1 评论 ·
138 收藏

关于STM32F4上CCM内存知识扩展

该篇用于记录一些使用方法之外的知识点。关于具体使用方法请看 STM32F4上CCM内存的使用小结(https://blog.csdn.net/qq_27747359/article/details/109085292)一、CCM内存的优点与缺点The main system consists of 32-bit multilayer AHB bus matrix that interconnects:Eight masters: – Cortex® -M4 with FPU ...
原创
发布博客 2020.10.14 ·
1965 阅读 ·
2 点赞 ·
1 评论 ·
7 收藏

STM32F4上CCM内存的使用小结

一、CCM内存介绍相较于F2,F4新加的一个特殊内部SRAM。64 KB CCM (内核耦合存储器)数据 RAM 不属于总线矩阵(请参见图 1 : STM32F405xx/07xx和 STM32F415xx/17xx 器件的系统架构)。只能通过 CPU 对其进行访问(dma等外设不能访问)。二、用法(基于MDK)1、自动分配法(不建议使用)设置完后,若重新编译,map文件里就会有这块SRAM的资源分配——由于IRAM1优先使用,而且一般SRAM1够用,就不会给它分配资源。2...
原创
发布博客 2020.10.14 ·
5392 阅读 ·
10 点赞 ·
0 评论 ·
60 收藏

485通讯关于匹配电阻的选择

A: 我们公司的做法是:在485的任何一个节点上,对 A上拉;对B下拉,具体接线就是:(+5V---R1---A---R2---B---R3---GND),其中R1:3.3K,R2:180欧姆, R3:3.3K,取消原来的120欧电阻,这样在总线空闲的时候就保证A比B高出大约200mV的电压,也就是说能保证总线上的数据状态在空闲的时候是稳定的1。这可是我们公司几年的现场经验得来的,效果很好,保证比原来那种方式好多了.B: 确有可取之处,但是请问: 在485的任何一个节点上,对A上拉,对B下拉,...
原创
发布博客 2020.08.03 ·
8682 阅读 ·
4 点赞 ·
0 评论 ·
33 收藏

CAN通讯故障分析

一、现象CAN监控器上出现错误帧。二、分析过程1、检查匹配电阻。两端均为120R电阻,全部断电后万用表测量为60R。(60R为最佳匹配电阻)2、测试发现单独接发送端,将接收端断开,问题消失,锁定问题为接收端问题。3、经过核查得知,发送端为500K波特率,接收端为250K波特率,导致问题出现。三、总结1、匹配电阻需两端120R。2、总线上只要有一个节点波特率不一致,将导致总线数据传输异常。此次为监控端、发送端为500K,接收端为250K。四、知识扩充1...
原创
发布博客 2020.08.03 ·
9873 阅读 ·
1 点赞 ·
0 评论 ·
31 收藏

TPC817隔离光耦使用小结

一、参数详情FEATURES● Current transfer ratio(CTR: MIN.80% at I F =5mA, V CE =5V)● High isolation voltage between input and output(Viso=5000V rms)● Creepage distance>7.62mm● UL Recognized File # E478892● Compliant to RoHS directive 2011/65/EU and in accord
原创
发布博客 2020.07.31 ·
8403 阅读 ·
7 点赞 ·
2 评论 ·
41 收藏

STM32实时操作系统的FreeRTOS 和uCOS II的比较

freeRTOS比uCOS II优胜的地方:1。内核ROM和耗费RAM都比uCOS 小,特别是RAM。 这在单片机里面是稀缺资源,uCOS至少要5K以上, 而freeOS用2~3K也可以跑的很好。2。freeRTOS 可以用协程(Co-routine),减少RAM消耗(共用STACK)。uCOS只能用任务(TASK,每个任务有一个独立的STACK)。3。freeRTOS 可以有优先度一样的任务,这些任务是按时间片来轮流处理,uCOSII 每个任务都只有一个独一无二的优先级。因此,理论上讲,freeRT
转载
发布博客 2020.07.30 ·
2297 阅读 ·
0 点赞 ·
0 评论 ·
10 收藏

STM32 ~ BootLoad 总结与分析

boot地址为:0x8000000 ~ 0x800c000主程序地址为:0x800c000之后主函数之前添加一下中断向量偏移,以及程序起始地址。注意:相关外设时钟,比如定时器时钟、UART时钟等。必须在中断向量偏移程序之前初始化,否则相关外设会开启失败。(RCC_Configuration();) RCC_Configuration(); GPIO_Configuration(); NVIC_Configuration(); IWDG_Init(5,1562); /.
原创
发布博客 2020.06.03 ·
1494 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

在emwin中,调用GUI_Delay()函数,程序卡死,黑屏

没有OS_TimeMS+1可以在systick里或者定时器里定时+1
原创
发布博客 2020.06.03 ·
2231 阅读 ·
1 点赞 ·
1 评论 ·
1 收藏

解决zigbee CC2530/CC2630 用Flash Programmer下载hex文件,提示Chip is locked! Not able to read IEEE address

先用smartRF Flash programmer的Erase选项擦除芯片(先不要勾选Erase and program),擦除成功后就可以使用了。原因是厂家写入了lock bit
原创
发布博客 2020.05.09 ·
3385 阅读 ·
4 点赞 ·
2 评论 ·
6 收藏

C# winform中复制文本框内容的功能代码

在C#的winform开发的过程中,复制文本框中的内容是个常见的功能,假设窗体上有个文本框,name为textBox1,复制功能的具体代码如下:if (textBox1.Text != "") { Clipboard.SetDataObject(textBox2.Text.Trim()); MessageBox.Show("复制成功,你现在可以直接粘贴到任何...
转载
发布博客 2020.03.05 ·
3791 阅读 ·
2 点赞 ·
0 评论 ·
6 收藏

C#中的项目文件夹debug 和release的区别

一:各文件类型介绍Bin 目录用来存放编译的结果,bin是二进制binrary的英文缩写,因为最初C编译的程序文件都是二进制文件,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径,我们可以通过:项目属性—>配置属性—>输出路径来修改。   obj是object的缩写,用于存放编译过程中生成的中间临时...
原创
发布博客 2019.11.28 ·
1784 阅读 ·
3 点赞 ·
0 评论 ·
9 收藏

窗口看门狗的作用是什么?窗口看门狗复位分析

一,窗口看门狗介绍  独立看门狗的喂狗范围 0-X(X由预分频器和重装载值决定,最大值为0xFFF)  独立看门狗相关介绍:传送门:独立看门狗  相比于独立看门狗,窗口看门狗限定了喂狗时间段(由喂狗上限和喂狗下限值限定的喂狗范围)  所以形象的称作窗口看门狗  二,为什么需要窗口看门狗  独立看门狗:在0-重载值之间任意时间都可以喂狗  如果程序跑飞后又跑回正常 ...
原创
发布博客 2019.11.28 ·
6364 阅读 ·
16 点赞 ·
2 评论 ·
96 收藏
加载更多