Test
Dependencies: mbed-dev-OS5_10_4
MySources/AdMember.cpp
- Committer:
- kevman
- Date:
- 2020-08-07
- Revision:
- 0:014fad4dfb9d
File content as of revision 0:014fad4dfb9d:
/*------------------------------------------------------------------------------- Programm Name: AdMember.C Version: 1.0 Sprache: C Compiler: CrossStudio Ver. 2.0 Autor: PS Copyright: PS Funktion: Member-Funktion für den A/D Wandlerzugriff 28.10.2012: -------------------------------------------------------------------------------*/ #include "Headers.h" // uint8_t Ch1[8], Ch2[8]; extern uint8_t ReadAd0In(int n); extern uint8_t ReadAd1In(int n); /*------------------------------------------------------------------------------- Liest das IO Register beider AD's -------------------------------------------------------------------------------*/ uint8_t ReadAdIoPortRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_IO), Wandler); // 0x41 lesen des I/O Portregisters { AdInRead(Wandler); return(g_AReadTemp); } } uint8_t ReadAdRevisionRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_REV), Wandler); // 0x42 { AdInRead(Wandler); return(g_AReadTemp); } } uint8_t ReadAdTestRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_TEST), Wandler); // 0x43 ReadAd0Ad1In(3); return(true); } uint8_t ReadAdStatusRegister(uint8_t Wandler) // wird von Main aufgerufen { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_STATUS), Wandler); // 0x44 { AdInRead(Wandler); return(g_AReadTemp); } } uint8_t ReadAdCheckSumRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_CHKSUM), Wandler); // 0x45 ReadAd0Ad1In(2); return(true); } uint8_t ReadAdZeroScaleRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_ZS_CAL), Wandler); // 0x46 ReadAd0Ad1In(3); return(true); } uint8_t ReadAdFullScaleRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_FS_CAL), Wandler); // 0x47 ReadAd0Ad1In(3); return(true); } uint8_t ReadAdChnZeroScaleRegister(uint8_t Wandler) { int i; for(i = 0; i < 4; i++) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_C_ZS | i), 0); // 0x50-57 ReadAd0In(3); Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_C_ZS | i), 1); // 0x50-57 ReadAd1In(3); #ifdef SINGLE_DEBUG printf("Wandler 1: %02X %02X %02X\n",g_ReadReg[0], g_ReadReg[1], g_ReadReg[2]); // Parameter ist egal, liest sowieso beide printf("Wandler 2: %02X %02X %02X\n",g_ReadReg[4], g_ReadReg[5], g_ReadReg[6]); // Parameter ist egal, liest sowieso beide #endif } return(true); } uint8_t ReadAdChnFullScaleRegister(uint8_t Wandler) { int i; for(i = 0; i < 8; i++) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_C_FS | i), Wandler); // 0x58 - 5F ReadAd0Ad1In(3); } return(true); } uint8_t ReadAdChnStatusRegister(uint8_t Chn, uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_CHANNEL(AD7739_ADDR_C_STAT, Chn)), Wandler); // 0x60 - 67 { AdInRead(Wandler); return(g_AReadTemp); } } uint8_t ReadAdChnSetupRegister(uint8_t Wandler) { int i; for(i = 0; i < 8; i++) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_C_SET | i), Wandler); // 0x68 - 6F ReadAd0Ad1In(1); } return(true); } uint8_t ReadAdConvTimeRegister(uint8_t Wandler) { int i; for(i = 0; i < 8; i++) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_C_CT | i), Wandler); // 0x70 - 77 ReadAd0Ad1In(1); } return(true); } uint8_t ReadAdChnModeRegister(uint8_t Wandler) { Ad7739OutWrite(AD7739_READ_OP(AD7739_ADDR_MODE), Wandler); // 0x70 - 77 ReadAd0Ad1In(1); return(true); } uint8_t ReadAd0In(int n) { int i; for(i=0;i<n;i++) { AdInRead(0); // g_ReadReg[i] = g_AReadTemp; } return(true); } uint8_t ReadAd1In(int n) { int i; for(i=0;i<n;i++) { AdInRead(1); // g_ReadReg[i+4] = g_AReadTemp; } return(true); } uint8_t ReadAd0Ad1In(int n) { int i; for(i=0;i<n;i++) { AdInRead(0); // g_ReadReg[i] = g_AReadTemp; } for(i=0;i<n;i++) { AdInRead(1); // g_ReadReg[i+4] = g_AReadTemp; } return(true); }