完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
你好,我最近初次使用ADI公司的单片机ADUC7060,有几个问题已经困扰我一段时间了,希望贵公司的工程师能为我解答一下,不胜感激!
(1)SPI结构的问题 我之前用过的PIC单片机,其SPI结构如图所示,但我并没在ADUC7060的数据手册上找到其SPI的图片。所以有如下问题: PIC单片机中,SPI中发送与接收共用一个寄存器SSPBUF,ADUC7060中SPITX与SPIRX是否也是否在物理上也是共用一个寄存器? (2)、SPI接收数据的问题 PIC单片机中,SPI在接收时要先发送一字节数据,产生8个时钟,将数据通过移位寄存器SSPSR读取进来(发送即接收,接收即发送)。其spi读取代码如下: SSPBUF=data1;//先发送1字节数据,以产生8个时钟,将所读取数据依次移位进SSPSR while(!SSPIF);//等待发送完成 SSPIF=0;//清除标志位 data2=SSPBUF;//读取数据 在ADUC7060的官方代码中,在数据接收时,先会有一个ucDummyRd=SPIRX,然后在中断中会有szRxData[ucRxCount++]=SPIRX。 我想知道ucDummyRd=SPIRX中读取到的是什么值。它读取到的是否是FIFO的当前值?它读取到的是否是一个没用的数据?其目的是否只是为了产生8个时钟脉冲,以达到移位的目的(类似于PIC中接收数据前先发送数据)?真正有效的数据是否出现在中断中的szRxData[ucRxCount++]=SPIRX,被szRxData[0]读取? (3)SPI发送接收4个字节产生中断的问题 如果设SPICON中SPIMDE为11,也即发送或接收完4个字节才产生中断,那么作为SPI接收的前奏,是否应该有4次个ucDummyRd=SPIRX?为什么在官方SPI_Test->SPI_Master 中只有一次ucDummyRd=SPIRX,只读取一次,产生8个时钟脉冲能造成中断吗? (4)在官方程序示例ADuC706x_IARExamplesIARSPI_TestMaster中,接收6个字节,为什么接收中断中写的是 if (ucRxCount < 7) // Have max 6 bytes been received? 这岂非是接收7个字节? 在官方程序示例ADuC706x_IARExamplesIARSPI_BasicSPI_Master中,接收6个字节,为什么接收中断中写的是 if (ucRxCount <16) // Have max 6 bytes been received? 这样是否读取了16个数据? (5)ADUC7060中,如果使用外部晶振,定时器1就要作为唤醒定时器。当器件被唤醒后,定时器1是否还能做别的用途? 非常感谢! |
|
相关推荐
1个回答
|
|
ADuC7060的SPI的TX和RX fifo 是独立的。
我没有跑过这个code,读了一下,我觉得这里ucDummyRd=SPIRX是和这个参考代码相联系的,因为在while前,发送了一个字节,我认为是抛弃接收到的这个字节。 code中if (ucRxCount <16) // Have max 6 bytes been received? 这句话应该是有问题的,16或许应该是6。 如果7060是master,那么发送一个数据,对应就会接收一个数据(slave要配置好)。因为Master提供通信的clock,slave收到clock就会发送数据。 如果发送4个字节产生中断,这个在RX的buffer中也应该有4个字节,是否有用取决于实际的应用情况。 问题5,我觉得是可以的,前提是代码的先后顺序和执行逻辑上确保没有问题就可以。 |
|
|
|
只有小组成员才能发言,加入小组>>
258 浏览 0 评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1299 浏览 2 评论
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1896 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4237 浏览 2 评论
8995 浏览 1 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1422浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1645浏览 2评论
1616浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1299浏览 2评论
213浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 21:23 , Processed in 0.826446 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号