NIOSIISPI详解如何使用SPI方式传输_第1页
NIOSIISPI详解如何使用SPI方式传输_第2页
NIOSIISPI详解如何使用SPI方式传输_第3页
NIOSIISPI详解如何使用SPI方式传输_第4页
NIOSIISPI详解如何使用SPI方式传输_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SPINIOSIISPIEmbeddedPeripherals(ver9.0,Mar2009,4MB).pdfNIOSIISPIIP-CORESPISlaveJTAGtoAvalonMaster.pdfSPIADS12562、功能描述Spi通讯包括两条数据线(进、出)、一条同步时钟线和MasterOutSlaveIn(mosi)MasterInSlaveOut(miso)SerialClock(sclk)SlaveSelect(ss_n)最多可以设臵32个从设备。sclkspi-coreSclkAvalonMMAvalonMMsclktxdata132txdataTxdatatxdatatxd

2、atamosiRxdatarxdatamisoLSBMSBrxdata116rxdata在主设备模数时,接收移位寄存器直接受miso驱动mosiLSBMSBSOPCSPI-CORE5.1SPIclockrateNIOSIINumberofselect(SS_n)signalsSpecifydelay.NumberofSelect(SS_n)Signals设臵从设备的个数。取值范围是132。该选择会产生n个SS_n引脚,用于片选。SPIClock(sclk)Rate该时钟是有Avalon-MM分频产生,其数学关系是/2,4,6,8,.SOPC2.SpecifyDelay5.2数据寄存器设臵Wid

3、thtxdatarxdata132ShiftdirectionLSBMSB5.3ss_n,sclk,mosimiso定4种模式。1Clockpolarity臵为0时sclk设臵为1时,sclk2Clockphase为0时,sclk臵为1sclk1.ClockPolarity=0,ClockPhase=02.ClockPolarity=0,ClockPhase=1ClockPolarity=1,ClockPhase=0ClockPolarity=1,ClockPhase=16、NIOSII1.Alteraalt_avalon_spi_command()DIY6.1#includealtera_a

4、valon_spi.h#includealtera_avalon_pio_regs.h文件中包含有寄存器地址与API函数。IOWR_ALTERA_AVALON_SPI_SLAVE_SEL();/从设备选IOWR_ALTERA_AVALON_SPI_CONTROL(base,data);/控制IORD_ALTERA_AVALON_SPI_RXDATA(base);/IOWR_ALTERA_AVALON_SPI_TXDATA(base,data);/写IORD_ALTERA_AVALON_SPI_STATUS(base);/读状态SPIrxdata和txdata1631:16statusROETO

5、EEssOrxdata/ForceSS_nactive:na_spi_0-np_spicontrol|=np_spicontrol_sso_mask;for(i=0;inp_spistatus&np_spistatus_trdy_mask);na_spi_0-np_spitxdata=datai;/Readandthrowawaythereceiveddata:while(!(na_spi_0-np_spistatus&np_spistatus_rrdy_mask);na_spi_0-np_spirxdata;/Waituntilthelastbyteistransmitted:while(!

6、(na_spi_0-np_spistatus&np_spistatus_tmt_mask);/ReleaseSS_n:na_spi_0-np_spicontrol&=np_spicontrol_sso_mask;anrxdataanrxdatastatus中的RRDY设为1;软件可设查询此位来判断是否有新数while(IORD_ALTERA_AVALON_SPI_STATUS(base)&ALTERA_AVALON_SPI_STATUS_RRDY_MSK=1);brxdataRRDYcrxdataRRDY=1;rxdatarxdataROE=1;rxdatatxdataaTRDY=1while

7、(IORD_ALTERA_AVALON_SPI_STATUS(base)&ALTERA_AVALON_SPI_STATUS_TRDY_MSK=1);brxdataTRDY=0;txdataTRDY=1;TRDY=0txdataTOE=1;6.2intalt_avalon_spi_command(alt_u32base,alt_u32slave,alt_u32write_length,constalt_u8*wdata,alt_u32read_length,alt_u8*read_data,/srcalt_u32flags)/altera/81/ip/altera/sopc_builder_ip/altera_avalon_spi/alt_u32base,alt_u32slave,/constalt_u8*wdata,/write_lengthalt_u32read_length,/alt_u8*read_data,/将读出的数据存储到数组所设定的read_length长度

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论