資源簡(jiǎn)介
我寫(xiě)的Cs5530的SPI驅(qū)動(dòng)程序,希望能對(duì)有用的兄弟有用
代碼片段和文件信息
/*******************************************************************************
??????????????????????????數(shù)字傳感器AD-Box轉(zhuǎn)換模塊
--------------------------------------------------------------------------------
通訊規(guī)則:?
1:時(shí)鐘4.9152?MHz/波特率9600/8個(gè)數(shù)據(jù)位/1個(gè)停止位/
2:通訊連接采用硬件MAX485雙向單工?
3:每個(gè)上行/下行的數(shù)據(jù)包的字節(jié)個(gè)數(shù)都是不一樣的?(?通訊數(shù)據(jù)量?)??
4:數(shù)據(jù)采用中斷接收?+?查詢發(fā)送的方式?
5:總是由主機(jī)向從機(jī)發(fā)送一個(gè)數(shù)據(jù)包從機(jī)收到數(shù)據(jù)包后校驗(yàn)正確向主機(jī)回復(fù)一個(gè)數(shù)據(jù)包?
6:采用多ADC共用MCU
7:采用握手應(yīng)答機(jī)制
********************************************************************************/?
#include?“config.h“
#define?cs5530_clk_h???????????(PORTB|=(1< #define?cs5530_clk_l???????????(PORTB&=~(1< #define?cs5530_cs_h????????????(PORTB|=(1< #define?cs5530_cs_l????????????(PORTB&=~(1< #define?cs5530_in_h????????????(PORTB|=(1< #define?cs5530_in_l????????????(PORTB&=~(1< #define?cs5530_out?????????????(PINB&0x08)
/*********************************************************************************************************
*?函數(shù)名稱(chēng)???????:?void?cs5530_write(uint8_t?write_cs5530data)
*?功能描述???????:?cs5530寫(xiě)一個(gè)字節(jié)
*
*?輸入?yún)?shù)???????:?無(wú)
*
*?返回值?????????:?無(wú)
*?全局變量???????:?無(wú)
*?調(diào)用函數(shù)???????:?無(wú)
*
*?作 者?????????:?ligang
*?日 期?????????:?2008-12-09
*--------------------------------------------------------------------------------------------------------
*?修 改?????????:?
*?日 期?????????:?
*?描??述?????????:?
*--------------------------------------------------------------------------------------------------------
*********************************************************************************************************/ ???
void?cs5530_write(uint8_t?write_cs5530data)
{
cs5530_cs_l;
SPDR=write_cs5530data;
while(!(SPSR?&?(1< cs5530_cs_h;
}
/*********************************************************************************************************
*?函數(shù)名稱(chēng)???????:?uint8_t?cs5530_read(void)
*?功能描述???????:?cs5530讀一個(gè)字節(jié)
*
*?輸入?yún)?shù)???????:?無(wú)
*
*?返回值?????????:?無(wú)
*?全局變量???????:?無(wú)
*?調(diào)用函數(shù)???????:?無(wú)
*
*?作 者?????????:?ligang
*?日 期?????????:?2008-12-09
*--------------------------------------------------------------------------------------------------------
*?修 改?????????:?
*?日 期?????????:?
*?描??述?????????:?
*--------------------------------------------------------------------------------------------------------
*********************************************************************************************************/ ???
uint8_t?cs5530_read(void)
{???uint8_t?ad_number;
????cs5530_cs_l;
SPDR=0xFF;?????????????????????///先發(fā)送一個(gè)空操作指令
while(!(SPSR?&?(1< ad_number=SPDR;??????????????//讀SPI
SPSR=0x00;
cs5530_cs_h;
return?ad_number;
}
/*********************************************************************************************************
*?函數(shù)名稱(chēng)???????:?uint32_t??CS5530_Read_Dword?(?void?)
*?功能描述???????:?讀一個(gè)雙字
*
*?輸入?yún)?shù)???????:?無(wú)
*
*?返回值?????????:?無(wú)
*?全局變量???????:?無(wú)
*?調(diào)用函數(shù)???????:?無(wú)
*
*?作 者?????????:?ligang
*?日 期?????????:?2008-12-09
*-------------------------------------
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件???????2505??2009-01-05?16:14??cs5530.h
?????文件??????10553??2009-02-02?15:35??main.c
-----------?---------??----------?-----??----
????????????????13058????????????????????2
評(píng)論
共有 條評(píng)論