Re: SPI的MCP4921寫法??
|
||||
---|---|---|---|---|
資深會員
|
SPI_ByteWrite ( (char) ((SPI_Data >> 8) & 0x00ff)) ;
(char) : 強迫轉型為 CHAR 型態 ( 8 bit ) (SPI_Data >> 8) : SPI_Data 向右位移 8 次 ( 就是將 高位元組挪到低位元組 ) & 0x00ff : 與 0X00FF 作 AND 運算
發表於: 2009/5/15 3:23
|
|||
|
Re: SPI的MCP4921寫法??
|
||||
---|---|---|---|---|
高級會員
|
參照:
雖然我沒用過 mcp4921.但軟體看起來應該是 1. 二種寫法相同 , 但SPI_Data |= 0b0011000000000000 易讀 , 我猜如果對照 mcp4921的datasheet , 0b0011xxxxxxx 應該是某個 command , 因此若再改為如下會更好.
#define XXX_COMMAND 0b0011000000000000;
2. 第一行是將SPI_Data 的high byte 經由SPI_ByteWrite ()寫出去 第二行是寫出SPI_Data 的 low byte.
發表於: 2009/5/14 22:00
|
|||
|
SPI的MCP4921寫法??
|
||||
---|---|---|---|---|
初級會員
|
int SPI_MCP4921_Write(unsigned int SPI_Data )
請問各位專業人才 (1) SPI_Data |= 0b0011000000000000 ; 可以寫成SPI_Data |= 0x3000 嗎? 雖然兩種寫法出來的波形都一樣。 (2) SPI_ByteWrite ( (char) ((SPI_Data >> 8) & 0x00ff)) ; SPI_ByteWrite ( (char) (SPI_Data & 0x00ff)); 不了解這兩行的意思??
發表於: 2009/5/14 21:41
|
|||
|