1155|0

250

帖子

5

TA的资源

纯净的硅(初级)

楼主
 

【可视化家庭环境分析仪】使用ST MEMS传感器套件读取环境数据 [复制链接]

 

第一次使用M7开发,难度感觉还是有的,需要理解F7中例程给的东西,怎么烧写,下载,然后中间因为其是两层结构,boot和实际的app是分别下载的,所以我还是先看了例程,怎么跑例程的。之后修改下用cube_mx生产了一个自己的app文件。

下面看下我们的板子和修改过程吧。

 

Arduino接口的东西可以直接接上。

 

在cube中直接添加我们的传感器包,然后把对应的接口都弄好,这些因为是直接自己弄给的所以都得选择好,在有些ST例程中他是有对应的板级包了,里面包含了很多弄好的东西。

这里生成的工程还不能使用。我们需要对工程进行修改。

 

在keil中我们需要吧编译器升级使用6,然后就是下面的IROM地址,这个地址就是我们的外部QSPI Flash的地址, RAM使用的还是我们内部的。因为没有图像的原因,所以暂时还不需要进行加载外部SDRAM。

 

找到我们的SystemInit函数,这里我们需要作为app来使用,重新定义了我们的中断向量表。 

/* FPU settings ------------------------------------------------------------*/

  #if (__FPU_PRESENT == 1) && (__FPU_USED == 1)

    SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2));  /* set CP10 and CP11 Full Access */

  #endif

  /* Reset the RCC clock configuration to the default reset state ------------*/

  /* Set HSION bit */

  RCC->CR |= (uint32_t)0x00000001;



  /* Reset CFGR register */

  RCC->CFGR = 0x00000000;



  /* Reset HSEON, CSSON and PLLON bits */

  RCC->CR &= (uint32_t)0xFEF6FFFF;



  /* Reset PLLCFGR register */

  RCC->PLLCFGR = 0x24003010;



  /* Reset HSEBYP bit */

  RCC->CR &= (uint32_t)0xFFFBFFFF;



  /* Disable all interrupts */

  RCC->CIR = 0x00000000;



#if defined (DATA_IN_ExtSDRAM)

  SystemInit_ExtMemCtl();

#endif /* DATA_IN_ExtSDRAM */



  /* Configure the Vector Table location add offset address ------------------*/

#ifdef VECT_TAB_SRAM

  SCB->VTOR = SRAM1_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM */

#else

  SCB->VTOR = APPLICATION_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation to APPLICATION_ADDRESS in preprocessor defines */

#endif

SCB->VTOR = APPLICATION_ADDRESS | VECT_TAB_OFFSET;这里就是重新定义了,给的历程中再全局宏里面定义了 APPLICATION_ADDRESS

 

实际的我们只需要添加红框中的宏即可,后面的都是一起其他地方的优化,我们的在cubemx中都直接设定过了的。如后面的系统频率,我们是直接设置好了的。

 

搞完后代码都会直接生成的,我们的应用函数也都弄好了。

 

之后就是修改下载的地方,这里我们不能下载到内部flash中了,因为内部flash是作为boot用了。我们需要下载到外部Flash中。

 

对于boot怎么找,可以找cube下在的F7包,里面有历程,包括出厂的历程都存在的,所以提供的还是比较完善的。包括开机的两个GUI里面都有的。

 

使用里面例程也需要注意。

 

有些打开的是用外部SDRAM,程序中没有初始化,这样就会导致不能运行,所以一定选择内部RAM。

 

完成后打开串口就有信息了。还需注意串口1被修改了。

 

是PA9和PB7。

点赞 关注
 
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表