zoukankan      html  css  js  c++  java
  • 山寨F407板子如何烧录正点原子例程、Keil下载提示Invalid ROM Table

    山寨F407板子如何烧录正点原子例程

    手头这块块信赢达的STM32F407板子,是模仿正点原子探索者STM32F407板子的,外设和接口,几乎是一模一样。

    探索者板子用的是STM32F407ZET6,  信赢达的是STM32F407ZGT6。

    如何查看这两颗芯片的区别?两种方法,选其一。

    1. 打开两个数据手册自己去对比

    2. 打开CubeMX, 进行对比

    通过CubeMX来查看芯片的基本信息显然更加直观和高效。

    经过CubeMX软件上的芯片介绍,这两颗料的管脚是一样的,RAM大小也一样,唯一的区别是ZET6的FLASH大小是512KB,而ZGT6的FLASH大小是1MB。

    所以,管脚都一样,仅FLASH大小的区别而已,应该是可以直接烧录正点原子的例程的。

     

    一,于是,直接烧录试试。 烧录一个正点原子的TFT LCD例程。

    1.  提示下载错误

    2. 百度出来的解决办法

    https://blog.csdn.net/yufengzheyang/article/details/76954121

    大致意思是要修改晶振频率,适配你的板子。

     

    回过头来,细看原理图,发现区别,区别是:

    探索者板子用的外部高速晶振(HSE)是8M的,  信赢达的HSE是25M的。

    于是我修改了正点原子例程的下面两处

    实测烧录成功了。

    但是烧进去什么反应也没有,屏幕也是黑的。(PS,我的屏幕就是正点原子的屏幕,3.5寸电阻屏)

     

    遗漏了哪个步骤呢?

    回忆我对RTThread的使用经验, 其是借助CubeMX来配置时钟的。

    我们找到正点原子例程的配置时钟的代码看一下

    从这个备注来看,很显然,正点原子的时钟树的配置是按照HSE为8M来配置的。我们烧进例程,程序跑不起来,应该就是这个原因导致的。

    我们仅仅修改了外部HSE为25M,却还没有配置好时钟树呢!

    于是我们可以通过CubeMX来自动生成时钟树的配置代码,然后复制黏贴到正点原子的此处时钟配置的地方。

    TFT LCD例程程序就跑起来了。

     

    PS,后记,有时候还是会烧录不进去,提示Invalid ROM Table,修改魔术棒的这里会好些:

    我用的是CMSIS-DAP仿真器, SWD下载方式, 接RESET脚,勾选under reset。

     

     

    .

    /************* 社会的有色眼光是:博士生、研究生、本科生、车间工人; 重点大学高材生、普通院校、二流院校、野鸡大学; 年薪百万、五十万、五万; 这些都只是帽子,可以失败千百次,但我和社会都觉得,人只要成功一次,就能换一顶帽子,只是社会看不见你之前的失败的帽子。 当然,换帽子决不是最终目的,走好自己的路就行。 杭州.大话西游 *******/
  • 相关阅读:
    Foj1675数论
    JSTL与EL之间的千丝万缕
    2013多校联合2 I Warm up 2(hdu 4619)
    ios视图切换之push与present混用
    Ruby设计模式透析之 —— 适配器(Adapter)
    晓说智能指针shared_ptr为何可以实现跨模块分配和释放内存
    CSS的力量
    MySQL-select 1;
    MySQL数据库-语言简介
    Eclipse开发工具提交代码
  • 原文地址:https://www.cnblogs.com/happybirthdaytoyou/p/15746897.html
Copyright © 2011-2022 走看看