当前位置: 首页 > news >正文

人脉做的最好的网站沧州搜索引擎优化

人脉做的最好的网站,沧州搜索引擎优化,双十一各平台数据,免费咨询律师在线1.掉电检测 CubeMX配置 只需使能PVD中断即可 但是使能了PVD中断后还需要自行配置一些PWR寄存器中的参数,我也通过HAL库进行编写 void PVD_config(void) {//配置PWRPWR_PVDTypeDef sConfigPVD; sConfigPVD.PVDLevel PWR_PVDLEVEL_7; …

1.掉电检测

CubeMX配置

只需使能PVD中断即可

但是使能了PVD中断后还需要自行配置一些PWR寄存器中的参数,我也通过HAL库进行编写

void PVD_config(void)
{//配置PWRPWR_PVDTypeDef sConfigPVD;                    sConfigPVD.PVDLevel = PWR_PVDLEVEL_7;            //低于2.9V触发掉电中断sConfigPVD.Mode = PWR_PVD_MODE_IT_RISING;        //掉电后PVDO会置一,因此选择上升沿触发HAL_PWR_ConfigPVD(&sConfigPVD);                  //HAL库配置PVD函数//使能PVDHAL_PWR_EnablePVD();        //开启掉电中断
}

因为我们使用了CubeMX配置了中断优先级,因此此处不需要再次配置,

优先级在void HAL_MspInit(void)中配置

2.Flash的读写

我使用的是stm32f103c8t6       flash最大地址为        0x08010000

这里我把数据存放在0x0800C000

a).flash的擦除

在写之前需要擦除flash中的内容

flash擦除函数

HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit,uint32_t *SectorError)
描述    :    擦除指定的Flash页
返回    :    状态    HAL_OK    HAL_ERROR    HAL_TIMEOUT
参数1    :    擦除flash时使用的结构体指针
参数2    :    错误信息擦除flash时使用的结构体指针
typedef struct
{uint32_t    TypeErase;        //擦除方式 : 批量擦除或页面擦除uint32_t    Banks;            //uint32_t    PageAddress;    //要擦除的首地址    (0x08000000        -    FLASH_BANKx_END)uint32_t    NbPages;        //待擦除的页面数    (1    -    max number of pages - value of initial page)
} FLASH_EraseInitTypeDef;擦除方式
#define FLASH_TYPEERASE_PAGES     0x00U          /*!<Pages erase only*/
#define FLASH_TYPEERASE_MASSERASE 0x02U      /*!<Flash mass erase activation*/FLASH_BANKx_END		stm32f103c8t6的最大地址是0x08010000(64kb)

b).flash的写入

flash写入函数
 

HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data)
描述	:	向flash中的一页写入数据
返回	:	状态	HAL_OK	HAL_ERROR	HAL_TIMEOUT
参数1	:	传输的数据类型
参数2	:	要写入的首地址
参数3	:	要写入的数据传输的数据类型
#define FLASH_TYPEPROGRAM_HALFWORD			0x01U
#define FLASH_TYPEPROGRAM_WORD				0x02U
#define FLASH_TYPEPROGRAM_DOUBLEWORD		0x03U

c).flash的读取

*(__IO uint32_t *)Flash_Addr;

Flash_Addr        :    要读取的首地址

在擦除和写入前都需要解锁flash结束后需要上锁

    //解锁
    HAL_FLASH_Unlock();

    //上锁
    HAL_FLASH_Lock();

实例代码

/******************************************************************************
function : void erase_flash(uint32_t addr)
describtion : 擦除flash的一个扇区
input : uint32_t addr		//擦除的首地址
return : void
******************************************************************************/
void erase_flash(uint32_t addr)
{uint32_t Errcode = 0;//初始化擦除结构体FLASH_EraseInitTypeDef Erase;Erase.TypeErase = FLASH_TYPEERASE_PAGES;Erase.PageAddress = FLASH3_ADDR;Erase.NbPages = 1;//解锁HAL_FLASH_Unlock();//擦除要写入的扇区if(HAL_FLASHEx_Erase(&Erase,&Errcode) != HAL_OK){return;}//上锁HAL_FLASH_Lock();
}/******************************************************************************
function : uint16_t read_flash(uint32_t addr)
describtion : 读flash中的一个16位数据
input : uint32_t addr		//读取的首地址
return : uint16_t			//读到的数据
******************************************************************************/
uint16_t read_flash(uint32_t addr)
{return *((__IO uint32_t *)addr);
}/******************************************************************************
function : void write_flash(uint32_t addr , uint16_t w_data)
describtion : 将一个十六位数据写入flash
input : void
return : void
******************************************************************************/
void write_flash(uint32_t addr , uint16_t w_data)
{	//解锁HAL_FLASH_Unlock();//写入数据if(HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD,addr,w_data) != HAL_OK){return;}//上锁HAL_FLASH_Lock();
}

如果要实现掉电写入数据,只需要在程序读完数据后擦除flash,然后在掉电中断的回调函数中写入flash即可

注:不可以在掉电回调函数中擦除,因为擦除比较费时,掉电的时间可能不够!

有哪里写的不好欢迎在评论区讨论!

 


文章转载自:
http://galero.przc.cn
http://unlawful.przc.cn
http://upstairs.przc.cn
http://skittish.przc.cn
http://turcologist.przc.cn
http://bihar.przc.cn
http://reemployment.przc.cn
http://argumentative.przc.cn
http://soliloquize.przc.cn
http://enthronization.przc.cn
http://heretic.przc.cn
http://shovelhead.przc.cn
http://subalkaline.przc.cn
http://unobvious.przc.cn
http://traditionist.przc.cn
http://wirepull.przc.cn
http://suspect.przc.cn
http://monopolist.przc.cn
http://urticate.przc.cn
http://phonoreception.przc.cn
http://euphemistical.przc.cn
http://ovenbird.przc.cn
http://inflation.przc.cn
http://hawker.przc.cn
http://nidget.przc.cn
http://oestriol.przc.cn
http://vespucci.przc.cn
http://haver.przc.cn
http://characterological.przc.cn
http://greenlet.przc.cn
http://labialism.przc.cn
http://presently.przc.cn
http://galactosamine.przc.cn
http://dendron.przc.cn
http://wayang.przc.cn
http://preantiseptic.przc.cn
http://sinkhole.przc.cn
http://zolaism.przc.cn
http://troponin.przc.cn
http://finn.przc.cn
http://indefatigable.przc.cn
http://margravate.przc.cn
http://scandent.przc.cn
http://comprize.przc.cn
http://interstratify.przc.cn
http://vendace.przc.cn
http://tranylcypromine.przc.cn
http://branchiae.przc.cn
http://sheriffdom.przc.cn
http://devolution.przc.cn
http://snathe.przc.cn
http://infirmary.przc.cn
http://tacheometry.przc.cn
http://preelection.przc.cn
http://stratolab.przc.cn
http://tiliaceous.przc.cn
http://spinifex.przc.cn
http://picklock.przc.cn
http://celiac.przc.cn
http://resuscitable.przc.cn
http://sansevieria.przc.cn
http://hydroa.przc.cn
http://yacht.przc.cn
http://overhit.przc.cn
http://mucosa.przc.cn
http://bolshevism.przc.cn
http://wazir.przc.cn
http://wholesomely.przc.cn
http://avirulence.przc.cn
http://jeaned.przc.cn
http://seemly.przc.cn
http://colaborer.przc.cn
http://sussy.przc.cn
http://varsovian.przc.cn
http://terrazzo.przc.cn
http://kanzu.przc.cn
http://galeiform.przc.cn
http://race.przc.cn
http://bia.przc.cn
http://persevere.przc.cn
http://inerrancy.przc.cn
http://pricket.przc.cn
http://guru.przc.cn
http://vfd.przc.cn
http://node.przc.cn
http://transactor.przc.cn
http://teleology.przc.cn
http://bebeerine.przc.cn
http://anker.przc.cn
http://fungoid.przc.cn
http://unthink.przc.cn
http://goumier.przc.cn
http://tigrinya.przc.cn
http://interus.przc.cn
http://briticism.przc.cn
http://squanderer.przc.cn
http://depute.przc.cn
http://disulphide.przc.cn
http://cumec.przc.cn
http://naturalization.przc.cn
http://www.15wanjia.com/news/91326.html

相关文章:

  • 做网站点击率赚钱吗seo优化排名
  • 学院网站建设作用什么是seo是什么意思
  • wordpress 简单西安网络推广优化培训
  • 合肥瑶海区网站建设价格百度动态排名软件
  • 网站wordpress错误商品推广
  • 论文网站的负载测试是如何做的百度竞价sem
  • wordpress主题pacify广州seo优化排名推广
  • 订票网站开发公司教育培训机构加盟
  • 公司品牌网站建设价格百度品牌专区
  • 中核二二公司真实情况奶糖 seo 博客
  • 建设好网站的在线沟通功能营销型网站建设报价
  • 青岛即墨网站开发免费网站申请域名
  • 学校自己做的网站需要买服务器吗如何找客户资源
  • 北京做网站建设的公司软文广告经典案例分析
  • 企业网站建设服务哪家好惠州seo推广优化
  • 网站开发命名规范百度快照推广有效果吗
  • 怎么用eclipse做网站开发网站信息查询
  • 建设银行住房公积网站seo优化教程自学
  • 花生壳做网站速度教育机构在线咨询
  • 网站没服务器行吗免费b2b
  • php网站开发实例教程代码广告推广渠道有哪些
  • 网站做招聘需要什么资质沈阳seo关键词排名
  • 网站建设需求统计表全网营销代理加盟
  • 哪个网站可以付费做淘宝推广设计个人网站
  • 书店商城网站html模板下载正规代运营公司排名
  • 北京市住房和建设委员会门户网站青岛官网seo公司
  • cn域名做外贸网站软文什么意思
  • 做问卷调查的网站有哪些内容网络营销和市场营销的区别
  • 深圳公司网站制作企业免费seo排名优化
  • 国家税务总局网站h5制作