自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 STM32-对芯片启动读保护,实现加密(详解)

一、Flash存储器介绍STM32的Flash包括主存储器(HD版本,512KB)+信息块。信息块包括2KB的系统存储器(用于系统自举启动代码)和16字节的选项字节(8个字节数据+8个字节数据的反码)。二、STM32读保护STM32读保护是通过设置RDP选项字节,然后在系统重新复位加载了新的RDP选项字节后启动的。当保护字节被写入相应的值以后:●通过从内置SRAM或FSMC执行代码访问主闪存存储器的操作,通过DMA1、DMA2、JTAG、SWV(串行线观察器)、SWD(串行线调试)、ETM和边界扫描

2021-10-28 18:05:52 2839

原创 STM32H7LWIP,过滤,配置opt,调整rxbuffer大小等

STM32H7LWIP,过滤,配置opt,调整rxbuffer大小等讲讲ping不通和lwip内存分配再然后讲讲lwip内核的线程工作原理再聊聊mac、ip等其他的过滤我是发现搞单片机的人越来越少了,不断的查lwip资料查不到,自己看代码,走了很多弯路,本文不太适合教初学者怎么跑通lwip,因为在h7上跑通lwip是有很多博主去实现过的。讲讲ping不通和lwip内存分配跑不通的原因有很多,最明显的是h7有mpu,cubemx生成的代码使用gnu编译器,需要自己在flash.ld汇编文件里添点东西给b

2021-10-28 18:00:33 2177 6

原创 stm32 全局变量(变量和函数)绝对地址编译

最近在研究怎么把代码编译到自己想要的位置,然后只运行一次就自宫,分享一下。方法一:void fun(void) __attribute((section(".ARM.__at_0x8100000")));方法二:#pragma arm section code=".ARM.__at_0x8100000"void fun(void){}#pragma arm section定位变量:int val attribute((section(".ARM.__at_0x20000000"))) =

2021-03-07 15:00:40 1934

原创 win10+Ubuntu 双系统安装 多次失败终于成功

网上的教程真的太多太多了,尝试的我头皮发麻,最后终于成功了。其实也没那么难。首先我的电脑是联想Y430P,I5,256SSD,1T机械,两个硬盘都是基本盘,gpt格式。win10装在SSD中,Ubuntu16 装在机械中说下安装体会要点吧1.准备好u盘启动盘,ultraISO就可以,其中有用到说要HDD+和加入syslinux导引的这个我为了怕出错也都用了。2.然后关闭电脑的快速启动,据...

2020-04-14 21:28:30 538 2

原创 ucos 学习 -c语言的应用 指向函数的指针

之前对typedef理解不是很深入 不是特别理解ucos中定义这么多乱七八糟的typedef做什么直到今天又翻了一下书,看到typedef的作用其中有一条是这么写的:typedef有利于程序的通用与移植,比如有的计算机系统int 是两个字节 而有的int是四个字节 那么如果在程序中 各个地方都使用int ,当需要把int从4字节的计算机 移植到2字节的计算机上时,程序一定会出错,这个时候我们就...

2019-09-09 14:01:49 146

原创 UCOSIII 中连续两次挂起 一次解挂实验失败现象

某次实验中,任务1两次调用OSsuspend挂起任务2,之后任务调用一次OSresume解挂任务2,结果发现解挂失败。后来发现解挂两次,任务2被恢复。挂起的时候任务控制块的成员变量SuspendCtr用来记录任务挂起次数!每挂起一次此变量就加一,解除挂起的时候此变量就会减一。只有最后一次解除挂起任务才会起作用的。也就是你所谓的试验结果,连续两次调用函数OSTaskSuspend()挂起一个任务...

2019-09-03 22:11:09 432

原创 STM32F1 库函数开发-preprocess的symbols作用

一、魔术棒点击去后可以看到下图所示这里的define其实和在函数里直接写define 没什么太大的区别 懂了以后写在任何地方都可以首先是有两个必须要有的define1.USE_STDPERIPH_DRIVER,2.STM32F10X_HD,这两个定义,在stm32f10x.h文件下面可以找到,如果不定义STM32F10X_HD,这个中断变量的这些值就没法定义,跟变量相关的代码运行可能会...

2019-08-31 14:14:13 1075

原创 关于Stm32F1x systick滴答定时器如何延时超过1.86s的方式、移植方式

方式1:首先参考一下正点原子的代码://延时nms//注意nms的范围//SysTick->LOAD为24位寄存器,所以,最大延时为://nms<=0xffffff*8*1000/SYSCLK//SYSCLK单位为Hz,nms单位为ms//对72M条件下,nms<=1864 void delay_ms(u16 nms){ u32 temp; ...

2019-08-30 14:02:29 581

原创 STM32F1中ISP,IAP,ICP之间的区别与联系

stm32F1的三个存储器及对应的启动模式:内置FLASH:正常我们的程序都是存放在这里。系统内置存储器(ROM):出厂前st公司会在此存储器内写入一个引导启动程序(ROM中的BootLoader,后面还有一个flash的BootLoader)。内置SRAM:掉电易失,可以用来调试程序。(这个暂时可以不用理他)ISP:in system program 在系统中编程,出厂前ST已经将自家的...

2019-07-30 22:13:03 1787

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除