您的位置:首页 > 移动开发 > IOS开发

【原创】基于NIOS II的ADS1256 SPI驱动

2009-08-11 20:47 302 查看


/*********************************说明**********************************/
在SOPC里面SPI设置如下:
#ifndef ADS1256_H_
16#define ADS1256_H_
17#include "altera_avalon_spi_regs.h"
21#include "altera_avalon_spi.h"
22#include "system.h"
23#include "altera_avalon_pio_regs.h"
24#include "priv/alt_busy_sleep.h"
25
29//ADS1256 Command Definitions
30//#define ADS1256_WAKEUP 0x00 //Completes SYNC and Exits Standby Mode
31#define ADS1256_RDATA 0x01 //Read Data
32#define ADS1256_RDATAC 0x03 //Read Data Continuously
33#define ADS1256_SDATAC 0x0f //Stop Read Data Continuously
34#define ADS1256_RREG 0x10 //Read from REG rrr 0001 rrrr (1xh) 0000 nnnn
35#define ADS1256_WREG 0x50 //Write to REG rrr 0101 rrrr (5xh) 0000 nnnn
36#define ADS1256_SELFCAL 0xf0 //Offset and Gain Self-Calibration
37#define ADS1256_SELFOCAL 0xf1 //Offset Self-Calibration
38#define ADS1256_SELFGCAL 0xf2 //Gain Self-Calibration
39#define ADS1256_SYSOCAL 0xf3 //System Offset Calibration
40#define ADS1256_SYSGCAL 0xf4 //System Gain Calibration
41#define ADS1256_SYNC 0xfc //Synchronize the A/D Conversion
42#define ADS1256_STANDBY 0xfd //Begin Standby Mode
43#define ADS1256_RESET 0xfe //Reset to Power-Up Values
44#define ADS1256_WAKEUP 0xff //Completes SYNC and Exits Standby Mode
45
46
47
48//ADS1256 REGISTER MAP
49#define ADS1256_STATUS 0x00 //STATUS REGISTER (ADDRESS 00h)
50#define ADS1256_MUX 0x01 //Input Multiplexer Control Register (Address 01h)
51#define ADS1256_ADCON 0x02 //A/D Control Register (Address 02h)
52#define ADS1256_DRATE 0x03 //A/D Data Rate (Address 03h)
53#define ADS1256_IO 0x04 //GPIO Control Register (Address 04H)
54#define ADS1256_OFC0 0x05 //Offset Calibration Byte 0, least significant byte (Address 05h)
55#define ADS1256_OFC1 0x06 //Offset Calibration Byte 1 (Address 06h)
56#define ADS1256_OFC2 0x07 //Offset Calibration Byte 2, most significant byte (Address 07h)
57#define ADS1256_FSC0 0x08 //Full.scale Calibration Byte 0, least significant byte (Address 08h)
58#define ADS1256_FSC1 0x09 //Full.scale Calibration Byte 1 (Address 09h)
59#define ADS1256_FSC2 0x0a //Full.scale Calibration Byte 2, most significant byte (Address 0Ah)
60
61
62void InitAds1256();
66int ReadFromAds1256();
67
68#endif /*ADS1256_H_*/
69
70

/***************************源文件****************************/

1#include "ads1256.h"
19
29void InitAds1256()
41int ReadFromAds1256()
62
83

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: