加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

FPGA和M3的FSMC通信(现在能正确读写,但是还不完善)

(2013-01-13 21:27:40)
标签:

fpga

stm32

fsmc

it

分类: FPGA
说明:最近刚开始学习altera系列的FPGA,刚入门的时候有点云里雾里不过还好终于入门了。
      (1)特别推荐看一下特权同学做的FPGA/CPLD的视频教程,讲的很不错。
      (2)有点动手能力的话,买一个核心板就可以了,剩下自己搭建点外设,没有必要买网上
           卖的板子,浪费银子。
      (3)不过有钱了,一定买个官方的板子,专业,而且不容易出问题。
硬件开发环境:使用的是(STM32F103VET6 + EP4CE6E22C8)
硬件接口:
FPGA和M3的FSMC通信(现在能正确读写,但是还不完善)

 FSMC采用模式A,读写时序如下:

FPGA和M3的FSMC通信(现在能正确读写,但是还不完善)

FPGA和M3的FSMC通信(现在能正确读写,但是还不完善)

(1)由于这个项目我只负责调度算法和ARM部分的程序编写,所以学了一段时间XILINX的FPGA就没
     再搞了。但是现在的形势似乎有点严峻,所以我也需要搞FPGA,既然打算搞FPGA,自己就用
     点心。
(2)记得前一段时间FSMC外挂RA8875的时候,老是出问题,最近学了FPGA才知道原因。
        FSMC------------>RA8875
        FSMC ------------>FPGA   出问题的原因似乎是因为不片选FPGA的时候需要将数据
       引脚DB[15:0]设置成高阻态,关于这个问题,今天看特权同学写的《深入浅出玩
       转FPGA》也有说明


FPGA和M3的FSMC通信(现在能正确读写,但是还不完善)

ARM部分代码:ARM部分的代码比较简单,初始化一下FSMC,然后读取或写入相应的地址空间就可
FPGA部分代码:(1)这部分的代码要控制好时序,主要还是判断好CS,RD,WR这三个引脚就可以成
                   功了。
              (2)使用前需要例化一个PLL,用于给STM32提供时钟,这里将PLL配置成8MHz
              (3)初学FPGA,代码还有不规范的地方。


程序下载地址:http://bbs.armfly.com/read.php?tid=596

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有