This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28335: AND GATE

Part Number: TMS320F28335


最近希望用28335实现AND闸的功能
但找不到方法 以下是我的代码

--------------------------------------------------------------------------------------------------------------

#include "DSP28x_Project.h" // Device Headerfile and Examples Include File

int input1;
int input2;
unsigned int result;


void main(void)
{
// Step 1. Initialize System Control
InitSysCtrl();

EALLOW;
#if(CPU_FRQ_150MHZ) //Default 150MHZ SYSCLKOUT
#define ADC_MODCLK 0x3; //HSPCLK = SYSCLKOUT/(2*ADC_MODCLK) = 150/(2*3) = 25MHZ
#endif

#if(CPU_FRQ_100MHZ) //Default 150MHZ SYSCLKOUT
#define ADC_MODCLK 0x2; //HSPCLK = SYSCLKOUT/(2*ADC_MODCLK) = 100/(2*2) = 25MHZ
#endif
EDIS;

EALLOW;
SysCtrlRegs.HISPCP.all = ADC_MODCLK; //Define ADC clock frequency
EDIS;

//step2 : initialize GPIO pins

EALLOW;
//==========================================================
//==========================================================

GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0; // AND闸輸入
GpioCtrlRegs.GPADIR.bit.GPIO6 = 0; // GPIO输入
GpioCtrlRegs.GPAPUD.bit.GPIO6 = 1 ;

GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 0; // AND闸輸入
GpioCtrlRegs.GPADIR.bit.GPIO7 = 0; // GPIO输入
GpioCtrlRegs.GPAPUD.bit.GPIO7 = 1 ;

GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0; // AND闸輸出
GpioCtrlRegs.GPADIR.bit.GPIO8= 1; // GPIO输出
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
EDIS;


for(;;)
{
input1 = GpioDataRegs.GPADAT.bit.GPIO6; // AND闸輸入
input2 = GpioDataRegs.GPADAT.bit.GPIO7; // AND闸輸入
result = input1 & input2; // AND闸輸出
GpioDataRegs.GPADAT.bit.GPIO8 = result;
}

如图是我从28335产生出两个300kHz的方波输入至GPIO6 GPIO7
但是输出GPIO8是错的