nothings / stb

stb single-file public domain libraries for C/C++
https://twitter.com/nothings
Other
25.77k stars 7.66k forks source link

problem in reading libraries #1611

Closed akremkhadhraoui closed 4 months ago

akremkhadhraoui commented 4 months ago

include <ti/drivers/GPIO.h>

include

include

include <ti/drivers/ADC.h>

include <ti/sysbios/knl/Clock.h>

include

#define LED1_PIN IOID_9
#define LED2_PIN IOID_10
#define LED3_PIN IOID_11
#define POT1_PIN IOID_4
#define POT2_PIN IOID_5
#define BUTTON_PIN IOID_2

define MAX_PATTERN 3

uint32_t blink_speed = 100; uint8_t brightness; uint8_t pattern = 1; bool previousButtonState = false; uint32_t previousButtonTime = 0;

ADC_Handle adc;

void setup() { GPIO_init(); ADC_init();

GPIO_setConfig(LED1_PIN, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
GPIO_setConfig(LED2_PIN, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
GPIO_setConfig(LED3_PIN, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
GPIO_setConfig(BUTTON_PIN, GPIO_CFG_IN_PU | GPIO_CFG_IN_INT_FALLING);
GPIO_setCallback(BUTTON_PIN, changePattern);

ADC_Params adcParams;
ADC_Params_init(&adcParams);
adc = ADC_open(POT1_PIN, &adcParams);

GPIO_enableInt(BUTTON_PIN);

startClock(); // Start the clock

}

void startClock() { Clock_Params clockParams; Clock_Params_init(&clockParams); clockParams.period = 0; // One-shot clock clockParams.startFlag = TRUE; // Start the clock immediately Clock_Handle hClock; Clock_construct(&hClock, NULL, 0, &clockParams); }

void loop() { blink_speed = map(ADC_convertToMicroVolts(ADC_convert(adc, NULL)), 0, 3300, 1000, 100); brightness = map(ADC_convertToMicroVolts(ADC_convert(adc, NULL)), 0, 3300, 0, 255);

switch (pattern) {
    case 1:
        pattern1();
        break;
    case 2:
        pattern2();
        break;
    case 3:
        pattern3();
        break;
}

printf("Blink Speed: %d ms, Brightness: %d, Pattern: %d\n", blink_speed, brightness, pattern);
Clock_sleep(blink_speed * 1000); // Delay in milliseconds

}

void pattern1() { GPIO_write(LED1_PIN, brightness); GPIO_write(LED2_PIN, brightness); GPIO_write(LED3_PIN, brightness); Clock_sleep(blink_speed * 1000); GPIO_write(LED1_PIN, 0); GPIO_write(LED2_PIN, 0); GPIO_write(LED3_PIN, 0); }

void pattern2() { GPIO_write(LED1_PIN, brightness); Clock_sleep(blink_speed 1000); GPIO_write(LED1_PIN, 0); GPIO_write(LED2_PIN, brightness); Clock_sleep(blink_speed 1000); GPIO_write(LED2_PIN, 0); GPIO_write(LED3_PIN, brightness); Clock_sleep(blink_speed * 1000); GPIO_write(LED3_PIN, 0); }

void pattern3() { GPIO_write(LED1_PIN, brightness); GPIO_write(LED3_PIN, brightness); Clock_sleep(blink_speed 1000); GPIO_write(LED1_PIN, 0); GPIO_write(LED2_PIN, brightness); GPIO_write(LED3_PIN, 0); Clock_sleep(blink_speed 1000); }

void changePattern(uint_least8_t index) { bool buttonState = GPIO_read(BUTTON_PIN); uint32_t currentTime = Clock_getTicks();

if (buttonState != previousButtonState && currentTime - previousButtonTime > 50) {
    if (buttonState == false) {
        pattern++;
        if (pattern > MAX_PATTERN) {
            pattern = 1;
        }
    }
    previousButtonTime = currentTime;
}
previousButtonState = buttonState;

}

int main() { setup();

while (1) {
    loop();
}

return 0;

} Capture1

nothings commented 4 months ago

wrong repository