CS5532驱动程序,gpio口驱动,方便移植。程序最后有单通道连续极单次转换演示,及双通道单次交替转换演示。
程序风格
/**
* 读写命令帧
*/
typedef struct{
uint8_t RSB :3; // bit2~0,寄存器选择位
// 000 保留
// 001 偏移寄存器
// 010 增益寄存器
// 011 配置寄存器
// 100 转换数据寄存器(只读)
// 101 通道设置寄存器
// 110 保留
// 111 保留
uint8_t rw :1; // bit3, 0:写入所选寄存器 1:读出所选寄存器
uint8_t CS :2; // bit5~4,通道选择
uint8_t ARA :1; // bit6, 以阵列方式访问寄存器, ARA
uint8_t cmdx:1; // bit7,此位固定为0
}CS5532_CMD0_Typedef;
/**
* 转换命令帧
*/
typedef struct{
uint8_t CC :3; // bit2:0 转换/校准位
// 000 正常转换
// 001 自偏移校准
// 010 自增益校准
// 011 保留
// 100 保留
// 101 系统偏移校准
// 110 系统增益校准
// 111 保留
uint8_t CSRP :3; // bit5:3 这些位作为指针指向通道设置寄存器,单次或连续转换都根
// 据此指针所指向的通道设置寄存器的内容执行。
uint8_t MC :1; // bit6 0 执行完全稳定的单次转换
// 1 执行连续转换
uint8_t cmdx :1; // bit7, 此位固定为1
}CS5532_CMD1_Typedef;
1