- 博客(5)
- 收藏
- 关注
原创 进行分散加载避免擦写flash对中断的影响
使用stm32f4 在进行对flash的擦除和写操作过程中,会使中断无法进入,为避免其他严重依赖中断处理的实时性极强的程序无法及时处理,我把中断向量表拷贝到ram中,并把中断服务函数编译到ram中,1、中断向量表拷贝到ram中void moveInterruptVectorToRam(void){memcpy(0x20000000,(uint32_t *)NVIC_VectTab_FLASH, 512);NVIC_SetVectorTable(NVIC_VectTab_RAM,0x00);}
2021-01-09 19:25:44 1301
原创 const修饰指针
const int a=1; 和int const a=1; 意思一样,都是修饰a为常量。const int *p = &b; const 修饰的是 *p 所以指针指向的内容是不可改变的,int * const p = &b; const 修饰的是指针变量p,所以指针所指向的地址是不可改变的,指向的内存数据是可以改变的;const int* const p = &b; 指针所指向的地址不可改变,指向的内存数据也不可改变。在C语言中,const int ...
2020-05-21 22:49:58 173
原创 指针的自加自减
unsigned char buf[4]={1,3,5,7};unsigned char *p=buf;*p++等于多少?和 ++ 的优先级是一样的,并且都是右运算符,所以计算时的结合方式是,++和p先做运算,然后运算结果再和 * (解除指针引用,又叫取值运算符)进行运算;所以计算结果为3;自减同理:p=&buf[3];*p-- = 3;...
2019-09-02 18:02:15 324
原创 keil汉字在source insight中显示乱码问题
习惯了用source insight 看代码,可是有时候在keil中显示正常的文字,在用source insight查看的时候总是乱码,下面是乱码通常使用的解决方法:1、如果你只是想正确显示当前文件中的汉字,file--->reload as encoding可以看到如下图对话框,可以选择ANSI或者GB180302、针对整个工程汉字的显示设置:options--->...
2019-08-30 16:05:02 674
原创 const在指针中的三种不同情形
对指针及其指向的内容使用const有3种不同的情形。1、指向常量的指针。指针指向的内容不能修改,但可以把指针设置为指向其他内容。const int value=10;const int *p=&value;2、常量指针。存储在指针中的地址不能修改。像这样的指针只能指向初始化 时指定的地址。但是,地址的内容不是常量,可以修改。int* const p=&value;3、...
2019-08-30 12:29:44 193
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人