打印
[STM32F1]

与FPGA并行通信,大家都来看看吧

[复制链接]
4591|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
有人知道这个该怎么写吗,本人用串口写的通信,但老师建议用并口写,要求用stm32发送一串数据给FPGA,然后再接收FPGA发过来的数据。(另外我还有个问题用串口的时候,用串口调试助手测试的时候,要按下发送按钮才会触发stm32的接收中断,要是与FPGA通信该怎么触发stm32的接收中断呢,是置接收引脚的高低电平吗?)
沙发
xia00| | 2016-8-13 16:19 | 只看该作者
接收引脚的高低电平,可以试试看啊

使用特权

评论回复
板凳
mmuuss586| | 2016-8-13 19:43 | 只看该作者
并行的话通过FSMC总线好了
就和读写RAM一样

使用特权

评论回复
地板
时光深巷已无她|  楼主 | 2016-8-13 20:17 | 只看该作者
mmuuss586 发表于 2016-8-13 19:43
并行的话通过FSMC总线好了
就和读写RAM一样

我还有个问题,串口通信的时候,为什么按下复位键,才会将数据发送到串口,我想用其他的按键控制,为什么就不行了呢?

使用特权

评论回复
5
时光深巷已无她|  楼主 | 2016-8-13 20:18 | 只看该作者
xia00 发表于 2016-8-13 16:19
接收引脚的高低电平,可以试试看啊

现在写FPGA的同学不在,无法测试罗

使用特权

评论回复
6
玛尼玛尼哄| | 2016-8-14 11:55 | 只看该作者
你是不是没有放到while里,然后你在while里写个按键触发的函数体不就可以了。

使用特权

评论回复
7
时光深巷已无她|  楼主 | 2016-8-14 13:35 | 只看该作者
玛尼玛尼哄 发表于 2016-8-14 11:55
你是不是没有放到while里,然后你在while里写个按键触发的函数体不就可以了。 ...

key=KEY_Scan(0);
        POINT_COLOR=RED;          
        LCD_ShowString(30,70,200,16,16,"USART TEST");
        USART_ClearFlag(USART1,USART_FLAG_TC);
         while(key==KEY0_PRES)
         {
                  for(t=0;t<2;t++)
                        {       
                                USART_SendData(USART1,a[t]);
                                while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET);
                        }       
                }
               
while(1)
        {
                if(USART_RX_STA&0x8000)
                {       
        POINT_COLOR=RED;          
                     LCD_ShowString(30,40,200,16,16,USART_RX_BUF);                        
                //        len=USART_RX_STA&0x3fff;//µÃµ½´Ë´Î½ÓÊÕµ½µÄÊý¾Ý³¤¶È
                //        printf("\r\nÄú·¢Ë͵ÄÏûϢΪ:\r\n");                       
                //        printf("\r\n\r\n");//²åÈë»»ÐÐ
                        USART_RX_STA=0;
                        LED1=0;
            POINT_COLOR=RED;          
            LCD_ShowString(35,100,200,16,16,"over");       
                }
        }         你看看我的发送前面加个按键,但测试的时候按键根本没效果

使用特权

评论回复
8
时光深巷已无她|  楼主 | 2016-8-14 19:41 | 只看该作者
mmuuss586 发表于 2016-8-13 19:43
并行的话通过FSMC总线好了
就和读写RAM一样

谢谢,我先来看看FSMC模块吧!

使用特权

评论回复
9
玛尼玛尼哄| | 2016-8-17 19:36 | 只看该作者
FSMC(Flexible Static Memory Controller,可变静态存储控制器)是STM32系列采用一种新型的存储器扩展技术。在外部存储器扩展方面具有独特的优势,可根据系统的应用需要,方便地进行不同类型大容量静态存储器的扩展。
应该是STM32特有的

使用特权

评论回复
10
lovecat2015| | 2016-8-17 20:33 | 只看该作者
你看看你的传输有什么特征,是否设置了高低电平变化

使用特权

评论回复
11
时光深巷已无她|  楼主 | 2016-8-18 18:28 | 只看该作者
玛尼玛尼哄 发表于 2016-8-17 19:36
FSMC(Flexible Static Memory Controller,可变静态存储控制器)是STM32系列采用一种新型的存储器扩展技术。 ...

stm32迷你版好像不支持FSMC,坑爹啊

使用特权

评论回复
12
时光深巷已无她|  楼主 | 2016-8-18 18:29 | 只看该作者
lovecat2015 发表于 2016-8-17 20:33
你看看你的传输有什么特征,是否设置了高低电平变化

串口我已经知道该怎么来触发接收中断了

使用特权

评论回复
13
596142041| | 2016-8-18 21:07 | 只看该作者
如果能够用FSMC最好,如果木有,自己定义一下数据格式

使用特权

评论回复
14
玛尼玛尼哄| | 2016-8-23 14:36 | 只看该作者
FSMC可以实现很牛叉的通信方式。

使用特权

评论回复
15
豆腐块| | 2016-8-23 21:50 | 只看该作者
FSMC(Flexible Static Memory Controller,可变静态存储控制器)是STM32系列采用一种新型的存储器扩展技术。在外部存储器扩展方面具有独特的优势,可根据系统的应用需要,方便地进行不同类型大容量静态存储器的扩展。

使用特权

评论回复
16
行的云| | 2017-4-7 16:32 | 只看该作者

使用特权

评论回复
17
时光深巷已无她|  楼主 | 2017-4-7 16:58 | 只看该作者
哈哈哈转眼电赛结束了,都找工作了

使用特权

评论回复
18
dzfansman| | 2017-4-7 23:05 | 只看该作者
这个使用串口不行吗

使用特权

评论回复
19
dzfansman| | 2017-4-7 23:07 | 只看该作者
STM32的FSMC和FPGA通信就可以。

使用特权

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

本版积分规则

46

主题

247

帖子

4

粉丝