12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #include "WS_GPIO.h"
- /************************************************************* I/O *************************************************************/
- void RGB_Light(uint8_t red_val, uint8_t green_val, uint8_t blue_val)
- {
- neopixelWrite(GPIO_PIN_RGB,green_val,red_val,blue_val); // RGB color adjustment
- }
- void Buzzer_PWM(uint16_t Time) //ledChannel:PWM Channe dutyfactor:dutyfactor
- {
- ledcWrite(PWM_Channel, Dutyfactor);
- delay(Time);
- ledcWrite(PWM_Channel, 0);
- }
- int relays[6] = { GPIO_PIN_CH1, GPIO_PIN_CH2, GPIO_PIN_CH3, GPIO_PIN_CH4, GPIO_PIN_CH5, GPIO_PIN_CH6 };
- void TriggerRelay(int relay, bool closed)
- {
- digitalWrite(relays[relay], closed ? HIGH : LOW);
- }
- bool RelayStatus(int relay)
- {
- return digitalRead(relays[relay] > 0);
- }
- bool IsOverride()
- {
- return digitalRead(GPIO_OVERRIDE > 0);
- }
- void GPIO_Init()
- {
- /*************************************************************************
- Relay GPIO
- *************************************************************************/
- for (int i=0; i<6; i++)
- pinMode(relays[i], OUTPUT);
-
- pinMode(GPIO_OVERRIDE, INPUT);
- pinMode(GPIO_PIN_RGB, OUTPUT); // Initialize the control GPIO of RGB
- pinMode(GPIO_PIN_Buzzer, OUTPUT); // Initialize the control GPIO of Buzzer
-
- ledcSetup(PWM_Channel, Frequency, Resolution); // Set a LEDC channel
- ledcAttachPin(GPIO_PIN_Buzzer, PWM_Channel); // Connect the channel to the corresponding pin
- }
|