Indholdsfortegnelse:

NOCAR (Notificación De Carga): 5 trin
NOCAR (Notificación De Carga): 5 trin

Video: NOCAR (Notificación De Carga): 5 trin

Video: NOCAR (Notificación De Carga): 5 trin
Video: ¿Al cargar tu móvil Samsung aparece un Triángulo Amarillo? 2024, November
Anonim
NOCAR (Notificación De Carga)
NOCAR (Notificación De Carga)

Abstrakt

Vi skaber nye teknologier og teknikker hvert år. Tidligere var dampmaskinen det første trin i noget, vi kaldte den industrielle revolution. Mennesket har ikke hængt tilbage siden da. Vi har skabt maskiner for at gøre vores liv lettere, og hver gang nu forsøger vi at forbedre de ting og processer, vi allerede har lavet.

Den moderne bil blev først introduceret i 1886. Siden da har den haft en stor udvikling på mange aspekter. Fra hastighedsgrænsen til vægtkontrollen har den ændret sig og taget mange veje. En ny teknologi fik bilen til ikke at kræve fossile brændstoffer: hybridbilen. Denne metode har imidlertid mere begrænsede grænser. En ulempe er den tid, det tager at genoplade. Det er ikke så let at gå til tankstationen og fylde tanken på et par minutter. Nogle biler har brug for timer til at fuldføre opladningen. Mange hvis tankstationen er i nærheden af en rekreativ zone eller shoppingzone, dog. Og det har mening, hvis det tager længere tid at fylde dit batteri, har det ingen mening med dig at være der hele tiden, så det giver dig mulighed for at gå, hvor du vil i mellemtiden. Men når bilen er ladet op, vil du blive pålagt en bøde på din bil, hvis du ikke har taget din bil ud af ladestationen. Formålet med dette produkt er at løse et normalt problem i fremtidige hybridbiler (hybridbiler har et godt bud på bordet). Vi implementerer et kredsløbssystem ved hjælp af en Dragonboard 410c. Den sender dig en e -mail for at advare dig om, at din bils energiladning er op til en vis procentdel. På denne måde kan du udføre dine aktiviteter uden at skulle bekymre dig om din bil stadig oplader, eller den er klar (og sandsynligvis får en bøde). Selvom denne type problem her i Mexico ikke ser ud til at dukke op, hurtigere end vi forventer vil nye systemer slå jorden over de fossile brændstoffer, og hybridbilerne vil spille en vigtig rolle. Nye love er blevet etableret, og bøder er nu et faktum, ikke en fjern idé.

Billedkredit: Clipper Creek: Ladestationer til elektriske køretøjer

Trin 1: Materialer

  • DragonBoard 410c
  • Mezzanin til 96Tavler
  • Protoboard
  • Jumper wire
  • Trykknap
  • Modstand 10 ohm
  • Potenciometer 10k ohm
  • Kondensator 150 pF
  • Chip ADC0804

Trin 2: Kode

#omfatte

#omfatte

#omfatte

#include "libsoc_gpio.h"

#include "libsoc_debug.h"

#include "libsoc_board.h"

usigneret int GPIO_PIN1;

usigneret int GPIO_PIN2;

usigneret int GPIO_PIN3;

usigneret int GPIO_PIN4;

usigneret int GPIO_TRANSIS;

usigneret int GPIO_SELECT;

usigneret int GPIO_ENTER;

usigneret int GPIO_LEDTEST;

int flag;

int valorBoton;

int valorLEDTest;

int pin1_state = 0;

int pin2_state = 0;

int pin3_state = 0;

int pin4_state = 0;

int last_touch_pin1;

int sidste_touch_p1;

int last_touch_pin2;

int sidste_touch_p2;

int last_touch_pin3;

int last_touch_p3;

int last_touch_pin4;

int sidste_touch_p4;

int select_state = 0;

int enter_state = 0;

int transis_state = 0;

int sidste_touch_b;

int sidste_touch_l;

int led_stat = 0;

int buzzer_state = 0;

int kører = 1;

_attribute _ ((konstruktør)) statisk tomrum _init ()

{

board_config *config = libsoc_board_init ();

GPIO_PIN1 = libsoc_board_gpio_id (config, "GPIO-A");

GPIO_PIN2 = libsoc_board_gpio_id (config, "GPIO-B");

GPIO_PIN3 = libsoc_board_gpio_id (config, "GPIO-C");

GPIO_PIN4 = libsoc_board_gpio_id (config, "GPIO-D");

GPIO_TRANSIS = libsoc_board_gpio_id (config, "GPIO-E");

GPIO_SELECT = libsoc_board_gpio_id (config, "GPIO-G");

GPIO_ENTER = libsoc_board_gpio_id (config, "GPIO-H");

GPIO_LEDTEST = libsoc_board_gpio_id (config, "GPIO-I");

libsoc_board_free (config);

}

int main ()

{

gpio *gpio_pin1, *gpio_pin2, *gpio_pin3, *gpio_pin4, *gpio_transis, *gpio_select, *gpio_enter, *gpio_ledtest;

int touch_pin1;

int touch_pin2;

int touch_pin3;

int touch_pin4;

int touch_transis;

int touch_select;

int touch_enter;

int touch_ledtest;

libsoc_set_debug (0);

gpio_pin1 = libsoc_gpio_request (GPIO_PIN1, LS_SHARED);

gpio_pin2 = libsoc_gpio_request (GPIO_PIN2, LS_SHARED);

gpio_pin3 = libsoc_gpio_request (GPIO_PIN3, LS_SHARED);

gpio_pin4 = libsoc_gpio_request (GPIO_PIN4, LS_SHARED);

gpio_transis = libsoc_gpio_request (GPIO_TRANSIS, LS_SHARED);

gpio_select = libsoc_gpio_request (GPIO_SELECT, LS_SHARED);

gpio_enter = libsoc_gpio_request (GPIO_ENTER, LS_SHARED);

gpio_ledtest = libsoc_gpio_request (GPIO_LEDTEST, LS_SHARED);

hvis ((gpio_pin1 == NULL) || (gpio_pin2 == NULL) || (gpio_pin3 == NULL) || (gpio_pin4 == NULL) || (gpio_transis == NULL) || (gpio_select == NULL) || (gpio_enter == NULL) || (gpio_ledtest == NULL))

{

gå fejl;

}

libsoc_gpio_set_direction (gpio_pin1, INPUT);

libsoc_gpio_set_direction (gpio_pin2, INPUT);

libsoc_gpio_set_direction (gpio_pin3, INPUT);

libsoc_gpio_set_direction (gpio_pin4, INPUT);

libsoc_gpio_set_direction (gpio_transis, INPUT);

libsoc_gpio_set_direction (gpio_select, INPUT);

libsoc_gpio_set_direction (gpio_enter, INPUT);

libsoc_gpio_set_direction (gpio_ledtest, OUTPUT);

hvis ((libsoc_gpio_get_direction (gpio_pin1)! = INPUT)

|| (libsoc_gpio_get_direction (gpio_pin2)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin3)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin4)! = INPUT)

|| (libsoc_gpio_get_direction (gpio_transis)! = INPUT) || (libsoc_gpio_get_direction (gpio_select)! = INPUT) || (libsoc_gpio_get_direction (gpio_enter)! = INPUT) || (libsoc_gpio_get_direction (gpio_ledtest)! = OUTPUT))

{

gå fejl;

}

mens (kører)

{

touch_pin1 = libsoc_gpio_get_level (gpio_pin1);

touch_pin2 = libsoc_gpio_get_level (gpio_pin2);

touch_pin3 = libsoc_gpio_get_level (gpio_pin3);

touch_pin4 = libsoc_gpio_get_level (gpio_pin4);

touch_enter = libsoc_gpio_get_level (gpio_enter);

touch_select = libsoc_gpio_get_level (gpio_select);

touch_transis = libsoc_gpio_get_level (gpio_transis);

touch_ledtest = libsoc_gpio_get_level (gpio_ledtest);

hvis (touch_select == 1)

{

valorBoton ++;

hvis (valorBoton == 4)

{

valorBoton = 0;

}

}

hvis (valorBoton == 3)

{

valorLEDTest = 1;

libsoc_gpio_set_level (gpio_ledtest, valorLEDTest);

}

}

mislykkes: hvis (gpio_pin1 || gpio_pin2 || gpio_pin3 || gpio_pin4 || gpio_transis || gpio_select || gpio_enter || gpio_ledtest)

{

printf ("anvend gpio -ressource mislykkes! / n");

libsoc_gpio_free (gpio_pin1);

libsoc_gpio_free (gpio_pin2);

libsoc_gpio_free (gpio_pin3);

libsoc_gpio_free (gpio_pin4);

libsoc_gpio_free (gpio_transis);

libsoc_gpio_free (gpio_select);

libsoc_gpio_free (gpio_enter);

libsoc_gpio_free (gpio_ledtest);

}

returner EXIT_SUCCESS;

}

Trin 3: Elektrisk kredsløb

Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb
Elektrisk kredsløb

Dette kredsløb fungerer som en analog-til-digital-omformer. Det tager signalet fra et potenciometer, der kommer i en værdi mellem 0 og 5 volt, derefter gør konverteren det til et digitalt signal mellem 0 og 255 bit og sender det til DragonBoard INPUTS.

Trin 4:

Udviklet af:

Alfredo Fontes

Mauricio Gómez

Jorge Jiménez

Gerardo Lopéz

Felipe Rojas

Luis Rojas

Ivón Sandoval

Anbefalede: