打印
[STM32F1]

在__low_level_init插入自己添加的程序

[复制链接]
855|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lin19890716|  楼主 | 2015-6-11 10:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
__interwork int __low_level_init(void)
{
  /*==================================*/
  /*  Initialize hardware.            */
  /*==================================*/

  /*==================================*/
  /* Choose if segment initialization */
  /* should be done or not.           */
  /* Return: 0 to omit seg_init       */
  /*         1 to run seg_init        */
  /*==================================*/
    *(volatile  u32  *)0x40021014 = 0x00000114;          /* Enable FSMC clock                                    */


    *(volatile  u32  *)0x40021018 = 0x000001E0;          /* Enable GPIOD, GPIOE, GPIOF and GPIOG clocks          */

                                                                /* --------------------- CFG GPIO --------------------- */
                                                                /* SRAM Data lines, NOE and NWE configuration           */
                                                                /* SRAM Address lines configuration                     */
                                                                /* NOE and NWE configuration                            */
                                                                /* NE3 configuration                                    */
                                                                /* NBL0, NBL1 configuration                             */
    *(volatile  u32  *)0x40011400 = 0x44BB44BB;
    *(volatile  u32  *)0x40011404 = 0xBBBBBBBB;

    *(volatile  u32  *)0x40011800 = 0xB44444BB;
    *(volatile  u32  *)0x40011804 = 0xBBBBBBBB;

    *(volatile  u32  *)0x40011C00 = 0x44BBBBBB;
    *(volatile  u32  *)0x40011C04 = 0xBBBB4444;

    *(volatile  u32  *)0x40012000 = 0x44BBBBBB;
    *(volatile  u32  *)0x40012004 = 0x44444B44;
                                                                /* --------------------- CFG FSMC --------------------- */
    *(volatile  u32  *)0xA0000010 = 0x00001011;          /* Enable FSMC Bank1_SRAM Bank                          */
    *(volatile  u32  *)0xA0000014 = 0x00000200;
   
    return 1;
}
在里面添加自己的一些程序,像led什么的可以运行,添加对Flash操作就不行 这是为什么??求大神求解!!!
沙发
mzhboy| | 2015-6-11 13:29 | 只看该作者
falsh的操作放RAM里试试

使用特权

评论回复
板凳
myxiaonia| | 2015-6-11 14:38 | 只看该作者
完全原生模式的寄存器操作

使用特权

评论回复
地板
yinhaix| | 2015-6-11 16:06 | 只看该作者
不懂,,,,,,,

使用特权

评论回复
5
可可球| | 2015-6-11 20:49 | 只看该作者
不懂,帮你顶了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

15

帖子

1

粉丝