/* * gpio_init.c * * Created on: 4 сент. 2023 г. * Author: seklyuts */ #include "f28x_project.h" void GpioDiodInit(void) { EALLOW; GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0; GpioCtrlRegs.GPAGMUX1.bit.GPIO6 = 0; GpioCtrlRegs.GPADIR.bit.GPIO6 = 1; GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 0; GpioCtrlRegs.GPAGMUX1.bit.GPIO7 = 0; GpioCtrlRegs.GPADIR.bit.GPIO7 = 1; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioCtrlRegs.GPAMUX1.bit.GPIO10 = 0; GpioCtrlRegs.GPAGMUX1.bit.GPIO10 = 0; GpioCtrlRegs.GPADIR.bit.GPIO10 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 0; EDIS; } void GpioSetGreen(void) { GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO10 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 1; } void GpioSetBlue(void) { GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO6 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 1; GpioDataRegs.GPADAT.bit.GPIO7 = 1; GpioDataRegs.GPADAT.bit.GPIO7 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 0; GpioDataRegs.GPADAT.bit.GPIO10 = 0; GpioDataRegs.GPADAT.bit.GPIO10 = 0; } void GpioSetOrange(void) { GpioDataRegs.GPADAT.bit.GPIO6 = 1; GpioDataRegs.GPADAT.bit.GPIO6 = 1; GpioDataRegs.GPADAT.bit.GPIO6 = 1; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO7 = 0; GpioDataRegs.GPADAT.bit.GPIO10 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 1; GpioDataRegs.GPADAT.bit.GPIO10 = 1; } void GpioInit(void) { EALLOW; GpioCtrlRegs.GPCMUX2.bit.GPIO95 = 0; // реле силовое GpioCtrlRegs.GPCGMUX2.bit.GPIO95 = 0; GpioCtrlRegs.GPCDIR.bit.GPIO95 = 1; GpioDataRegs.GPCDAT.bit.GPIO95 = 1; GpioCtrlRegs.GPCMUX1.bit.GPIO64 = 0;//FaultPWM GpioCtrlRegs.GPCGMUX1.bit.GPIO64 = 0; GpioCtrlRegs.GPCDIR.bit.GPIO64 = 0; GpioDataRegs.GPCDAT.bit.GPIO64 = 0; GpioCtrlRegs.GPBMUX2.bit.GPIO57 = 0; GpioCtrlRegs.GPBGMUX2.bit.GPIO57 = 0; GpioCtrlRegs.GPBDIR.bit.GPIO57 = 1; GpioDataRegs.GPBDAT.bit.GPIO57 = 1;//BISS-C_PWR_EN GpioCtrlRegs.GPCMUX2.bit.GPIO83 = 0; GpioCtrlRegs.GPCGMUX2.bit.GPIO83 = 0; GpioCtrlRegs.GPCDIR.bit.GPIO83 = 1; #ifdef RS485 GpioDataRegs.GPCDAT.bit.GPIO83 = 0; #else GpioDataRegs.GPCDAT.bit.GPIO83 = 1; #endif GpioCtrlRegs.GPAMUX2.bit.GPIO21 = 0; GpioCtrlRegs.GPAGMUX2.bit.GPIO21 = 0; GpioCtrlRegs.GPADIR.bit.GPIO21 = 1; #ifdef RS485 GpioDataRegs.GPADAT.bit.GPIO21 = 1; #else GpioDataRegs.GPADAT.bit.GPIO21 = 0; #endif GpioCtrlRegs.GPDMUX1.bit.GPIO103 = 0; GpioCtrlRegs.GPDGMUX1.bit.GPIO103 = 0; GpioCtrlRegs.GPDDIR.bit.GPIO103 = 1; GpioDataRegs.GPDDAT.bit.GPIO103 = 0; //BISS-C_PWR_12V/5V EDIS; } //void Gpio20out(uint16_t out_bit) //{ // GpioDataRegs.GPADAT.bit.GPIO20 = out_bit; //} // //void Gpio21out(uint16_t out_bit) //{ // GpioDataRegs.GPADAT.bit.GPIO21 = out_bit; //} void Gpio6out(uint16_t out_bit)//led_r { GpioDataRegs.GPADAT.bit.GPIO6 = out_bit; } void Gpio7out(uint16_t out_bit)//led_b { GpioDataRegs.GPADAT.bit.GPIO7 = out_bit; } void Gpio10out(uint16_t out_bit)//led_g { GpioDataRegs.GPADAT.bit.GPIO10 = out_bit; } void Gpio_rainbow(uint16_t color) { GpioDataRegs.GPADAT.bit.GPIO10 = color & 1; GpioDataRegs.GPADAT.bit.GPIO10 = color & 1; GpioDataRegs.GPADAT.bit.GPIO10 = color & 1; GpioDataRegs.GPADAT.bit.GPIO7 = (color >> 1) & 1; GpioDataRegs.GPADAT.bit.GPIO7 = (color >> 1) & 1; GpioDataRegs.GPADAT.bit.GPIO7 = (color >> 1) & 1; GpioDataRegs.GPADAT.bit.GPIO6 = (color >> 2) & 1; GpioDataRegs.GPADAT.bit.GPIO6 = (color >> 2) & 1; GpioDataRegs.GPADAT.bit.GPIO6 = (color >> 2) & 1; } void Gpio55out(uint16_t out_bit) { GpioDataRegs.GPBDAT.bit.GPIO55 = out_bit; } void Gpio56out(uint16_t out_bit) { GpioDataRegs.GPBDAT.bit.GPIO56 = out_bit; } void Gpio57out(uint16_t out_bit) { GpioDataRegs.GPBDAT.bit.GPIO57 = out_bit; } void Gpio95out(uint16_t out_bit) { GpioDataRegs.GPCDAT.bit.GPIO95 = out_bit; }