OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5260|回复: 5

写内部FLASH,NSS如何配置

[复制链接]

13

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2014-2-23
在线时间
1 小时
发表于 2014-4-17 00:01:20 | 显示全部楼层 |阅读模式

我用的板子是MINI板。103RB


我移植了战舰板的读写2401的程序。他上面的初始化是这样的,

void NRF24L01_Init(void)
{
   RCC->APB2ENR|=1<<3;     //使能PORTB时钟     
  RCC->APB2ENR|=1<<5;  //使能PORTD时钟
  RCC->APB2ENR|=1<<8;  //使能PORTG时钟
 //这里pb12和pd2拉高,是为了防止互相影响 .
 //因为他们共用一个SPI口.  
 GPIOB->CRH&=0XFFF0FFFF;
 GPIOB->CRH|=0X00030000; //PB12 推挽     
 GPIOB->ODR|=1<<12;     //PB12上拉 防止W25X的干扰
      
 GPIOD->CRL&=0XFFFFF0FF;
 GPIOD->CRL|=0X00000300; //PD2 推挽     
 GPIOD->ODR|=1<<2;     //PD2上拉   禁止SD卡的干扰

 GPIOG->CRL&=0X00FFFFFF;
 GPIOG->CRL|=0X33000000; //PG6 7 推挽     
 GPIOG->CRH&=0XFFFFFFF0;
 GPIOG->CRH|=0X00000008; //PG8 输入     
 GPIOG->ODR|=7<<6;     //PG6 7 8 上拉   

 SPI2_Init();      //初始化SPI  
 //针对NRF的特点修改SPI的设置
  SPI2->CR1&=~(1<<6);  //SPI设备失能
 SPI2->CR1&=~(1<<1);  //空闲模式下SCK为0 CPOL=0
 SPI2->CR1&=~(1<<0);  //数据采样从第1个时间边沿开始,CPHA=0 
 SPI2->CR1|=1<<6;   //SPI设备使能
 
 NRF24L01_CE=0;    //使能24L01
 NRF24L01_CSN=1;   //SPI片选取消      
}


因为他是针对NRF24L01的,所以后六行是针对2401设置的。

但是如果我要读内部的FLASH 我应该要怎么配置????

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2014-2-23
在线时间
1 小时
 楼主| 发表于 2014-4-17 00:14:34 | 显示全部楼层

这是103的FLASH地址分配。但我就是不怎么明白 我们存数据的话应该存在哪个区?  那么我们写的程序的开始地址是哪里。有人能给解释下吗?

回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-4-17 08:23:28 | 显示全部楼层
回复【2楼】blatand:
---------------------------------
主存储器
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

13

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2014-2-23
在线时间
1 小时
 楼主| 发表于 2014-4-17 10:57:27 | 显示全部楼层
回复【3楼】Badu_Space:
回复【2楼】blatand: --------------------------------- 主存储器
---------------------------------
回复【2楼】blatand:
这是103的FLASH地址分配。但我就是不怎么明白 我们存数据的话应该存在哪个区?  那么我们写的程序的开始地址是哪里。有人能给解释下吗?
---------------------------------
我看了战舰的例程,存数据应该是可以从0x80000000开始按页存储的。
那么程序开始的地址就是信息块那边的地址,但这分配的地址空间也太小了吧。
????老师,麻烦您说清楚点,我不太懂。谢谢。
回复 支持 反对

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-4-17 11:24:25 | 显示全部楼层
怎么文不对题啊,楼主你是不是搞错了?
于20150522停用该账号:http://www.microstar.club
回复 支持 反对

使用道具 举报

13

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2014-2-23
在线时间
1 小时
 楼主| 发表于 2014-4-17 11:29:07 | 显示全部楼层
回复【5楼】styleno1:
怎么文不对题啊,楼主你是不是搞错了?
---------------------------------
后来看了闪存编程的PDF,了解到了NSS的用处了。  这个问题算是我自己解决了。
二楼是针对闪存编程里边的模块组织有疑问,才提出来的。。见谅了。哈哈
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-12 00:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表