C语言
文章平均质量分 51
狗狗25
电子工程师
展开
-
KEIL设置程序起始地址无效解决方法,STM32 IAP程序起始地址
关键词:KEIL设置程序起始地址无效解决方法STM32 IAP设置程序起始地址KEIL设置程序起始地址MDK设置程序起始地址KEIL设置ROM地址无效碰到的问题:为了实现STM32升级固件,需要设置APP程序的起始地址。按照网上的资料,设置如下:网上的教程都是这样设置的,但是我设置后,发现没起作用。使用STVP查看生成的hex文件,发现编译出来的程序地址没有改变,还是在默认的0x8000000后来发现,要让这里的设置生效,还需要设置下面的地方:必须要勾选us.原创 2020-11-11 16:31:22 · 5078 阅读 · 2 评论 -
N76E003下载,验证APROM失败。新塘烧录校验失败
转载:https://bbs.21ic.com/icview-2877618-1-1.htmlN76E003 下载的时候 出现验证APROM失败用逻辑分析仪采集3根信号线波形(RST、ICPDA、ICPCK),发现有大量毛刺,仔细分析这些毛刺,是有规律的,估计是反射波,拆开Nu-Link仿真器,果然接口电路没有吸收反射波的电阻,直通的。在3根信号上分别串联3颗220欧电阻,再次测量波形,非常干净,ICP软件也能正常稳定工作了!全局波形数据包大量毛刺放大观察毛刺..转载 2020-06-20 13:23:18 · 2018 阅读 · 0 评论 -
return导致内存泄露。C函数中不要有多次return,以及其解决方法。goto的用法。
函数中随处return,是造成我们资源泄露和程序死锁的主要根源。很多同志写过类似的代码,函数中创建了和引用了多个资源,中间使用的过程中出错了,程序return,经典的代码是这样的:voidfun() { Lock(mutex); mem=malloc(size); if(null==mem) { return...转载 2020-03-24 14:38:39 · 1418 阅读 · 0 评论 -
巧妙的实现点阵图形显示可视化编程(C语言)
一种可视化编程的方法,让点阵图形编程更加直观。适合单片机点阵图形显示,原创 2017-07-25 23:27:54 · 5180 阅读 · 1 评论 -
C语言中实现bool(布尔型变量)
C语言中,本身没有bool(布尔型变量)。但是我们可以用其他方式来模拟。一、如果简单的使用char、int、long变量来表示0/1,则太浪费空间了。二、这里介绍一种巧妙的方式实现bool,高空间利用率。#define true 1#define false 0//--------------------------------------------联合体(共用体) 定义typedef ...原创 2018-05-23 11:07:02 · 23842 阅读 · 3 评论 -
exp()近似计算,exp快速算法,C语言实现exp
本文介绍一种快速计算exp()函数的算法,算法简单,精度高,运算速度快,可以在普通单片机上实现。原理:当取 n=256 时,就能得到非常好的近似效果。 算法实现:1.n次方的算法: 例: x^16 = (((x^2)^2)^2)2 代码实现: x *= x; ...原创 2018-11-05 10:23:45 · 17079 阅读 · 0 评论 -
基于求导的快速exp()算法,exp()快速计算,exp导数算法,exp函数C语言实现
基于求导的快速exp()算法如果需要得到exp(x)的连续数列,那么常规方法需要一个一个数的运算,运算量会非常大。此时可以使用以下方法,得到连续的exp(x)数列。我们知道的导数等于本身。设 求导 因此,f(x)可以近似为: 只要比较小,该方法就能得...原创 2018-11-05 10:40:30 · 7855 阅读 · 0 评论 -
单片机意外死机,意外复位,程序跑飞
单片机意外死机,意外复位,程序跑飞。原因有以下几种。一、数组越界。 特别是使用指针操作的,如果有越界的情况,后果将很严重。二、电源不稳定。 可以用示波器监测检查三、Stack 栈溢出Stack是为了程序运行过程中临时保存所需数据而在内存里分配的一小块空间。保存的数据类型一般情况下包括以下几种:1. 函数中声明的局部变量以及参数2. 函数返回值...原创 2018-12-27 15:28:49 · 3556 阅读 · 0 评论