查看: 105|回复: 11
收起左侧

[技术问答] spi question

[复制链接]
     

25

主题

76

帖子

228

积分

中级技术员

 楼主| 发表于 2017-7-14 09:44 | 显示全部楼层 |返回版面|阅读模式
我在改写spi的程序的时候总是发生hard fault,我调试的时候发现,停在write处,这是为何,它怎么不去write?

     while(1)
                {
                                /* Write to TX register */
                                SPI_WRITE_TX(SPI0, g_au32SourceData[u32DataCount]);
                                /* Check SPI0 busy status */
                                while(SPI_IS_BUSY(SPI0));
                                /* Read received data */
                                SPI_READ_RX(SPI0);
                                u32DataCount++;
                                if(u32DataCount == TEST_COUNT)
                                                break;
                }       

21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

83

主题

1796

帖子

5403

积分

高级工程师

发表于 2017-7-14 19:30 | 显示全部楼层 |返回版面
没说是哪个单片机的啊,新唐官方都给例程序的。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

83

主题

1796

帖子

5403

积分

高级工程师

发表于 2017-7-14 19:30 | 显示全部楼层 |返回版面
没说是哪个单片机的啊,新唐官方都给例程序的。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

75

主题

1818

帖子

5485

积分

高级工程师

发表于 2017-7-15 22:08 | 显示全部楼层 |返回版面
没看出来哪个单片机的。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

32

主题

723

帖子

2164

积分

初级工程师

发表于 2017-7-17 21:41 | 显示全部楼层 |返回版面
我用库函数搞不懂的时候就直接IO模拟,可以试试我的方法。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

54

主题

1491

帖子

4479

积分

中级工程师

发表于 2017-7-17 22:32 | 显示全部楼层 |返回版面
总是用IO做SPI的路过。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0
     

25

主题

76

帖子

228

积分

中级技术员

 楼主| 发表于 2017-7-18 18:06 | 显示全部楼层 |返回版面
yiyigirl2014 发表于 2017-7-14 19:30
没说是哪个单片机的啊,新唐官方都给例程序的。

我知道有示例程序
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0
     

25

主题

76

帖子

228

积分

中级技术员

 楼主| 发表于 2017-7-18 18:07 | 显示全部楼层 |返回版面
heisexingqisi 发表于 2017-7-17 21:41
我用库函数搞不懂的时候就直接IO模拟,可以试试我的方法。

你有写好的借我参考一下吗
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0
     

25

主题

76

帖子

228

积分

中级技术员

 楼主| 发表于 2017-7-18 18:07 | 显示全部楼层 |返回版面
天灵灵地灵灵 发表于 2017-7-17 22:32
总是用IO做SPI的路过。

你有写好的借我参考一下吗
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

93

主题

247

帖子

800

积分

高级技术员

发表于 2017-7-19 09:19 | 显示全部楼层 |返回版面
寫超過記憶體的範圍了。
while(1)
{
SPI_WRITE_TX(SPI0, g_au32SourceData[u32DataCount]);
...
u32DataCount++;
}
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0
     

25

主题

76

帖子

228

积分

中级技术员

 楼主| 发表于 2017-7-19 10:54 | 显示全部楼层 |返回版面
a_ziliu 发表于 2017-7-19 09:19
寫超過記憶體的範圍了。
while(1)
{

什么意思?超过了数组的大小?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0

32

主题

723

帖子

2164

积分

初级工程师

发表于 2017-7-19 20:10 | 显示全部楼层 |返回版面
超过最大地址了?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里 http://open.21ic.com 移步更多21ic独家微课:http://open.21ic.com/list/3/0/0
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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