30.10.2014 Views

o_195h4n6al16jb186b1b2qs7fgssa.pdf

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Remarks: This functions initializes the SPI module and sets the Idle mode<br />

operation.<br />

Source File: OpenSPI1.c<br />

OpenSPI2.c<br />

Code Example: config1 = FRAME_ENABLE_OFF &<br />

FRAME_SYNC_OUTPUT &<br />

ENABLE_SDO_PIN &<br />

SPI_MODE16_ON &<br />

SPI_SMP_ON &<br />

SPI_CKE_OFF &<br />

SLAVE_SELECT_ENABLE_OFF &<br />

CLK_POL_ACTIVE_HIGH &<br />

MASTER_ENABLE_ON &<br />

SEC_PRESCAL_7_1 &<br />

PRI_PRESCAL_64_1;<br />

config2 = SPI_ENABLE &<br />

SPI_IDLE_CON &<br />

SPI_RX_OVFLOW_CLR OpenSPI1(config1,<br />

config2);<br />

OpenSPI1 (Continued)<br />

OpenSPI2<br />

dsPIC<br />

®<br />

Language Tools Libraries<br />

DS51456B-page 162 2004 Microchip Technology Inc.<br />

putsSPI1<br />

putsSPI2<br />

Description: This function writes a string of data to be transmitted into the SPI<br />

transmit buffer.<br />

Include: spi.h<br />

Prototype:<br />

void putsSPI1(unsigned int length,<br />

unsigned int *wrptr);<br />

void putsSPI2(unsigned int length,<br />

unsigned int *wrptr);<br />

Arguments: length This is the number of data words/bytes to be transmitted.<br />

wrptr This is the pointer to the string of data to be transmitted.<br />

Return Value: None<br />

Remarks: This function writes the specified length of data words/bytes to be<br />

SetPriorityIntSPI1<br />

SetPriorityIntSPI2<br />

Mô tả: Đây ưu tiên bộ vĩ mô cho SPI bị gián đoạn.<br />

Bao gồm: spi.h<br />

Đối số: ưu tiên<br />

Bình luận: vĩ mô này đặt SPI Interrupt bit ưu tiên của ngắt ưu tiên kiểm soát<br />

đăng ký.<br />

Mã số Ví dụ: SetPriorityIntSPI2 (2);<br />

dsPIC<br />

®<br />

Thư viện Công cụ Ngôn ngữ<br />

DS51456B trang 164 2004 Microchip Technology Inc<br />

3.14.3 Ví dụ sử dụng<br />

# xác định __dsPIC30F6014__<br />

# include<br />

# include<br />

/ * Dữ liệu nhận được SPI2 * /<br />

int datard;<br />

khoảng trống __attribute __ ((__ interrupt__)) _SPI1Interrupt (void)<br />

{<br />

IFS0bits.SPI1IF = 0;<br />

}<br />

khoảng trống __attribute __ ((__ interrupt__)) _SPI2Interrupt (void)<br />

{<br />

IFS1bits.SPI2IF = 0;<br />

SPI1STATbits.SPIROV = 0; / * Rõ ràng spi1 nhận được tràn<br />

cờ nếu đặt * /<br />

}<br />

int main (void)<br />

{<br />

/ * Giữ các thông tin về SPI configuartion * /<br />

int SPICONValue;<br />

/ * Giữ các thông tin về SPI Enable / Disable * /<br />

int SPISTATValue;<br />

/ * Timeout giá trị trong thời gian đó timer1 là ON * /<br />

int thời gian chờ;<br />

/ * Tắt module SPI * /<br />

CloseSPI1 ();<br />

CloseSPI2 ();

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!