173 lines
4.3 KiB
C
173 lines
4.3 KiB
C
/*
|
|
* 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;
|
|
}
|