?? spi.lis
字號:
.module spi.c
.area text(rom, con, rel)
0000 .dbfile D:\avrvi\AVRVi_m128_Starter_Kit\EEPROM_HC595\source\lib\spi.c
0000 .dbfunc e spi_init _spi_init fV
.even
0000 _spi_init::
0000 .dbline -1
0000 .dbline 21
0000 ; /************************************************
0000 ; 文件:spi.c
0000 ; 用途:SPI驅動
0000 ; 注意:
0000 ; 創(chuàng)建:2008.1.25
0000 ; 修改:2008.1.25
0000 ; Copy Right (c) www.avrvi.com AVR與虛擬儀器
0000 ; ************************************************/
0000 ; #include "..\config.h"
0000 ; /*************************************************************************
0000 ; ** 函數(shù)名稱: spi_init(void)
0000 ; ** 功能描述: SPI初始化
0000 ; ** 輸 入:
0000 ; ** 輸出 :
0000 ; ** 全局變量: 無
0000 ; ** 調(diào)用模塊:
0000 ; ** 說明:
0000 ; ** 注意:
0000 ; **************************************************************************/
0000 ; void spi_init(void)
0000 ; {
0000 .dbline 22
0000 ; DDRB |= (1<<MOSI)|(1<<SCK)|(1<<SS);//設置MOSI,SCK輸出
0000 87B3 in R24,0x17
0002 8760 ori R24,7
0004 87BB out 0x17,R24
0006 .dbline 23
0006 ; SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0)|(1<<SPR1);//使能SPI,主機模式
0006 83E5 ldi R24,83
0008 8DB9 out 0xd,R24
000A .dbline -2
000A L1:
000A .dbline 0 ; func end
000A 0895 ret
000C .dbend
000C .dbfunc e SPI_MasterTransmit _SPI_MasterTransmit fV
000C ; Data -> R16
.even
000C _SPI_MasterTransmit::
000C .dbline -1
000C .dbline 36
000C ; }
000C ; /*************************************************************************
000C ; ** 函數(shù)名稱: SPI_MasterTransmit(char Data)
000C ; ** 功能描述: SPI主機發(fā)送數(shù)據(jù)
000C ; ** 輸 入: Data 需要通過SPI傳輸?shù)臄?shù)據(jù)
000C ; ** 輸出 :
000C ; ** 全局變量: 無
000C ; ** 調(diào)用模塊:
000C ; ** 說明:
000C ; ** 注意:
000C ; **************************************************************************/
000C ; void SPI_MasterTransmit(char Data)
000C ; {
000C .dbline 38
000C ; /* 啟動數(shù)據(jù)傳輸 */
000C ; SPDR = Data;
000C 0FB9 out 0xf,R16
000E L3:
000E .dbline 41
000E L4:
000E .dbline 40
000E ; /* 等待傳輸結束 */
000E ; while(!(SPSR & (1<<SPIF)))
000E 779B sbis 0xe,7
0010 FECF rjmp L3
0012 .dbline -2
0012 L2:
0012 .dbline 0 ; func end
0012 0895 ret
0014 .dbsym r Data 16 c
0014 .dbend
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -