AVR單片機之間的SPI通信_第1頁
AVR單片機之間的SPI通信_第2頁
AVR單片機之間的SPI通信_第3頁
AVR單片機之間的SPI通信_第4頁
AVR單片機之間的SPI通信_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

/******************ATmega16&SPI通信********************************FileName:master.cAuthor:滄海麒麟Date:2011.05.26Version:1.0Description:單片機ATmega16之間的簡單的SPI通信*/#include<iom16v.h>//常用頭文件,如有需要可以查庫文件include#include<avrdef.h>#include<macros.h>#include<string.h>#defineuintunsignedint#defineucharunsignedchar#definextal8chardat[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};voidDelay_1ms(void);voidDelay_nms(uintn);voidSPI_MasterPort_init(void);voidSPI_MasterRegisters_init(void);voidSPI_MasterTransmit(charcData);/*********************************************/voidmain(void){uchari=0;SPI_MasterPort_init();SPI_MasterRegisters_init();while(1){for(i=0;i<8;i++) {SPI_MasterTransmit(dat[i]);Delay_nms(500); }//endofif}//endofwhile}//****************************************voidDelay_1ms(void) {uinti;for(i=1;i<(uint)(xtal*143-2);i++);}//=============================================voidDelay_nms(uintn) {uinti=0;while(i<n){Delay_1ms();i++;}}/*=====從機SPI引腳方向定義===============*/voidSPI_MasterPort_init(void){PORTB|=0x40;//SS(PB4自定義)MOSI(PB5自定義)DDRB|=0xB0;//MISO(PB6輸入)SCK(PB7自定義)}//=============================================voidSPI_MasterRegisters_init(void){SPCR=(1<<SPE)|(1<<MSTR)|(1<<SPR0);}//=============================================voidSPI_MasterTransmit(charcData){SPDR=cData;while(!(SPSR&(1<<SPIF)));}/******************ATmega16&SPI通信********************************FileName:slave.cAuthor:滄海麒麟Date:2011.05.26Version:1.0Description:單片機ATmega16之間的簡單的SPI通信*/#include<iom16v.h>//常用頭文件,如有需要可以查庫文件include#include<avrdef.h>#include<macros.h>#include<string.h>#defineuintunsignedint#defineucharunsignedchar#definextal8voidDelay_1ms(void);voidDelay_nms(uintn);voidSPI_SlavePort_init(void);voidSPI_SlaveRegisters_init(void);ucharSPI_SlaveReceive(void);//voidSPI_SlaveTransmit(charcData);/*********************************************/voidmain(void){uchartemp;DDRA=0xFF;SPI_SlavePort_init();SPI_SlaveRegisters_init();while(1){temp=SPI_SlaveReceive();//接收一位數(shù)據(jù)SPSR&=~BIT(SPIF);// PORTA=temp; temp=0;}//endofwhile}//****************************************voidDelay_1ms(void) {uinti;for(i=1;i<(uint)(xtal*143-2);i++);}//=============================================voidDelay_nms(uintn) {uinti=0;while(i<n){Delay_1ms();i++;}}/*=====從機SPI引腳方向定義===============*/voidSPI_SlavePort_init(void){PORTB|=0xF0;//SS(PB4輸入)MOSI(PB5輸入)DDRB|=0x00;//MISO(PB6自定義)SCK(PB7輸入)}//=============================================voidSPI_SlaveRegisters_init(void){SPCR=(1<<SPE)|(1<<SPR0);}/*******************************/ucharSPI_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論