замена ацп2 на ацп1
This commit is contained in:
parent
1362b58739
commit
09d1aafce3
@ -24,15 +24,12 @@
|
|||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
InitPerif();
|
InitPerif();
|
||||||
//SciaRegs.SCITXBUF.all = 0xA5;
|
|
||||||
|
|
||||||
for(;;)
|
for(;;)
|
||||||
{
|
{
|
||||||
// asm (" NOP");
|
// asm (" NOP");
|
||||||
frmmstr_run();
|
frmmstr_run();
|
||||||
rele_run();
|
rele_run();
|
||||||
|
|
||||||
// Gpio_rainbow(diod);
|
|
||||||
AdcRun();
|
AdcRun();
|
||||||
BissClkgenRun();
|
BissClkgenRun();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,25 +1,25 @@
|
|||||||
/*
|
/*
|
||||||
* adc_init.c
|
* adc_init.c
|
||||||
*
|
*
|
||||||
* Created on: 19 äåê. 2023 ã.
|
* Created on: 19 <EFBFBD><EFBFBD><EFBFBD>. 2023 <EFBFBD>.
|
||||||
* Author: seklyuts
|
* Author: seklyuts
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "f28x_project.h"
|
#include "f28x_project.h"
|
||||||
|
|
||||||
Uint16 AdcbResult0;
|
Uint16 AdcaResult0;
|
||||||
Uint16 AdcbResult1;
|
Uint16 AdcaResult1;
|
||||||
int16 ADCdiff;
|
int16 ADCdiff;
|
||||||
Uint16 adc_start = 0;
|
Uint16 adc_start = 0;
|
||||||
|
|
||||||
__interrupt void adcb1_isr(void)
|
__interrupt void adca1_isr(void)
|
||||||
{
|
{
|
||||||
AdcbResult0 = AdcbResultRegs.ADCRESULT0;
|
AdcaResult0 = AdcaResultRegs.ADCRESULT0;
|
||||||
AdcbResult1 = AdcbResultRegs.ADCRESULT1;
|
AdcaResult1 = AdcaResultRegs.ADCRESULT1;
|
||||||
|
|
||||||
AdcbRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;
|
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;
|
||||||
|
|
||||||
ADCdiff = AdcbResult0 - AdcbResult1;
|
ADCdiff = AdcaResult0 - AdcaResult1;
|
||||||
//
|
//
|
||||||
// Acknowledge
|
// Acknowledge
|
||||||
//
|
//
|
||||||
@ -33,27 +33,27 @@ void ADCConfigure(void)
|
|||||||
// Map ISR functions
|
// Map ISR functions
|
||||||
//
|
//
|
||||||
EALLOW;
|
EALLOW;
|
||||||
PieVectTable.ADCB1_INT = &adcb1_isr; //function for ADCA interrupt 1
|
PieVectTable.ADCA1_INT = &adca1_isr; //function for ADCA interrupt 1
|
||||||
|
|
||||||
PieCtrlRegs.PIEIER1.bit.INTx2 = 1;
|
PieCtrlRegs.PIEIER1.bit.INTx1 = 1;
|
||||||
IER |= M_INT1;
|
IER |= M_INT1;
|
||||||
//
|
//
|
||||||
// Write configurations
|
// Write configurations
|
||||||
//
|
//
|
||||||
AdcbRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4
|
AdcaRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4
|
||||||
AdcSetMode(ADC_ADCB, ADC_RESOLUTION_12BIT, ADC_SIGNALMODE_SINGLE);
|
AdcSetMode(ADC_ADCA, ADC_RESOLUTION_12BIT, ADC_SIGNALMODE_SINGLE);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Set pulse positions to late
|
// Set pulse positions to late
|
||||||
//
|
//
|
||||||
AdcbRegs.ADCCTL1.bit.INTPULSEPOS = 1;
|
AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1;
|
||||||
|
|
||||||
AdcbRegs.ADCCTL2.bit.SIGNALMODE = 0;
|
AdcaRegs.ADCCTL2.bit.SIGNALMODE = 0;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Power up the ADC
|
// Power up the ADC
|
||||||
//
|
//
|
||||||
AdcbRegs.ADCCTL1.bit.ADCPWDNZ = 1;
|
AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Delay for 1ms to allow ADC time to power up
|
// Delay for 1ms to allow ADC time to power up
|
||||||
@ -62,15 +62,15 @@ void ADCConfigure(void)
|
|||||||
|
|
||||||
|
|
||||||
//ADCB
|
//ADCB
|
||||||
AdcbRegs.ADCSOC0CTL.bit.CHSEL = 0; //SOC0 will convert pin B0
|
AdcaRegs.ADCSOC0CTL.bit.CHSEL = 0; //SOC0 will convert pin B0
|
||||||
AdcbRegs.ADCSOC0CTL.bit.ACQPS = 14; //sample window is acqps +
|
AdcaRegs.ADCSOC0CTL.bit.ACQPS = 14; //sample window is acqps +
|
||||||
//1 SYSCLK cycles
|
//1 SYSCLK cycles
|
||||||
AdcbRegs.ADCSOC1CTL.bit.CHSEL = 1; //SOC1 will convert pin B1
|
AdcaRegs.ADCSOC1CTL.bit.CHSEL = 1; //SOC1 will convert pin B1
|
||||||
AdcbRegs.ADCSOC1CTL.bit.ACQPS = 14; //sample window is acqps +
|
AdcaRegs.ADCSOC1CTL.bit.ACQPS = 14; //sample window is acqps +
|
||||||
//1 SYSCLK cycles
|
//1 SYSCLK cycles
|
||||||
AdcbRegs.ADCINTSEL1N2.bit.INT1SEL = 1; //end of SOC1 will set INT1 flag
|
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 1; //end of SOC1 will set INT1 flag
|
||||||
AdcbRegs.ADCINTSEL1N2.bit.INT1E = 1; //enable INT1 flag
|
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1; //enable INT1 flag
|
||||||
AdcbRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //make sure INT1 flag is cleared
|
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //make sure INT1 flag is cleared
|
||||||
|
|
||||||
EDIS;
|
EDIS;
|
||||||
}
|
}
|
||||||
@ -81,7 +81,7 @@ void AdcRun(void)
|
|||||||
if(adc_start)
|
if(adc_start)
|
||||||
{
|
{
|
||||||
adc_start = 0;
|
adc_start = 0;
|
||||||
AdcbRegs.ADCSOCFRC1.all = 0x0003; //SOC0 and SOC1
|
AdcaRegs.ADCSOCFRC1.all = 0x0003; //SOC0 and SOC1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -16,7 +16,7 @@ typedef unsigned char uint8_t;
|
|||||||
#define GPIO_PIN_SCLA 1 // GPIO number for I2C SCLA
|
#define GPIO_PIN_SCLA 1 // GPIO number for I2C SCLA
|
||||||
|
|
||||||
|
|
||||||
// Макрос для отправки команды на OLED-дисплей
|
//Макрос для отправки команды на OLED-дисплей
|
||||||
#define SSD1306_WRITECOMMAND(cmd) \
|
#define SSD1306_WRITECOMMAND(cmd) \
|
||||||
do { \
|
do { \
|
||||||
I2C_TXdata[0] = 0x00; \
|
I2C_TXdata[0] = 0x00; \
|
||||||
@ -44,3 +44,6 @@ typedef enum {
|
|||||||
} SSD1306_COLOR_t;
|
} SSD1306_COLOR_t;
|
||||||
|
|
||||||
|
|
||||||
|
uint8_t SSD1306_Init(void);
|
||||||
|
int buttonsDisp();
|
||||||
|
int ScreenDisp();
|
||||||
|
|||||||
@ -89,6 +89,8 @@ void InitPerif(void)
|
|||||||
|
|
||||||
FRMUartInit();
|
FRMUartInit();
|
||||||
|
|
||||||
|
ADCConfigure();
|
||||||
|
|
||||||
#ifdef REF0
|
#ifdef REF0
|
||||||
temperatureInit();
|
temperatureInit();
|
||||||
#else
|
#else
|
||||||
@ -96,11 +98,11 @@ void InitPerif(void)
|
|||||||
#endif
|
#endif
|
||||||
// Enable Timer0
|
// Enable Timer0
|
||||||
|
|
||||||
InitCpuTimers();
|
InitCpuTimers();
|
||||||
// Configure CPU-Timer 0, 1, and 2 to interrupt every second:
|
// Configure CPU-Timer 0, 1, and 2 to interrupt every second:
|
||||||
// 200MHz CPU Freq, 1 second Period (in uSeconds)
|
// 200MHz CPU Freq, 1 second Period (in uSeconds)
|
||||||
//
|
//
|
||||||
ConfigCpuTimer(&CpuTimer0, 200, 1000000);
|
ConfigCpuTimer(&CpuTimer0, 200, 1000000);
|
||||||
|
|
||||||
// Enable global Interrupts and higher priority real-time debug events:
|
// Enable global Interrupts and higher priority real-time debug events:
|
||||||
//
|
//
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user