Оглавление:

NOCAR (Notificación De Carga): 5 шагов
NOCAR (Notificación De Carga): 5 шагов

Видео: NOCAR (Notificación De Carga): 5 шагов

Видео: NOCAR (Notificación De Carga): 5 шагов
Видео: Чтобы похудеть используй 5 простых шагов по плану 2024, Ноябрь
Anonim
NOCAR (Уведомление де Карга)
NOCAR (Уведомление де Карга)

Абстрактный

Каждый год мы создаем новые технологии и техники. В прошлом паровая машина была первым шагом того, что мы назвали промышленной революцией. С тех пор человек не задерживался. Мы создавали машины, чтобы облегчить нашу жизнь, и теперь каждый раз пытаемся улучшить вещи и процессы, которые мы уже сделали.

Современный автомобиль был впервые представлен в 1886 году. С тех пор он претерпел значительные изменения во многих аспектах. От ограничения скорости до контроля веса он менялся и менялся по многим направлениям. Новая технология заставила автомобиль не потреблять ископаемое топливо: гибридный автомобиль. Однако этот метод имеет более ограниченные пределы. Один из недостатков - время, необходимое для перезарядки. Это не так просто, как пойти на заправку и за пару минут заправить бак. Некоторым автомобилям для полной зарядки требуется несколько часов. Однако многие заправочные станции находятся рядом с зоной отдыха или торговыми центрами. И в этом есть смысл, если для зарядки аккумулятора требуется больше времени, для вас нет смысла находиться там все время, поэтому вы можете одновременно пойти куда угодно. Однако после зарядки автомобиля, если вы еще не забрали его со станции зарядки, на ваш автомобиль будет наложен штраф. Цель этого продукта - решить обычную проблему в будущих гибридных автомобилях (гибридные автомобили имеют большую ставку). Мы реализуем схемную систему с использованием Dragonboard 410c. Он отправляет вам электронное письмо, чтобы предупредить вас, что заряд энергии вашего автомобиля достигает определенного процента. Таким образом, вы можете заниматься своими делами, не беспокоясь о том, заряжается ли ваш автомобиль или он готов (и, скорее всего, получите штраф). Хотя здесь, в Мексике, подобного рода проблемы не возникают, но раньше, чем мы ожидаем, новые системы возьмут верх над ископаемым топливом, и гибридные автомобили будут играть важную роль. Были приняты новые законы, и теперь штрафы - это факт, а не отдаленная идея.

Кредит изображения: Clipper Creek: зарядные станции для электромобилей

Шаг 1: материалы

  • Доска дракона 410c
  • Антресоль на 96 досок
  • Протоборд
  • Перемычка
  • Нажать кнопку
  • Резистор 10 Ом
  • Потенциометр 10 кОм
  • Конденсатор 150 пФ
  • Чип ADC0804

Шаг 2: Код

#включают

#включают

#включают

#include "libsoc_gpio.h"

#include "libsoc_debug.h"

#include "libsoc_board.h"

беззнаковый int GPIO_PIN1;

беззнаковый int GPIO_PIN2;

беззнаковый int GPIO_PIN3;

беззнаковый int GPIO_PIN4;

беззнаковый int GPIO_TRANSIS;

беззнаковый int GPIO_SELECT;

беззнаковый int GPIO_ENTER;

беззнаковый 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 last_touch_p1;

int last_touch_pin2;

int last_touch_p2;

int last_touch_pin3;

int last_touch_p3;

int last_touch_pin4;

int last_touch_p4;

int select_state = 0;

int enter_state = 0;

int transis_state = 0;

int last_touch_b;

int last_touch_l;

int led_state = 0;

int buzzer_state = 0;

int running = 1;

_attribute _ ((конструктор)) static void _init ()

{

board_config * config = libsoc_board_init ();

GPIO_PIN1 = libsoc_board_gpio_id (конфигурация, «GPIO-A»);

GPIO_PIN2 = libsoc_board_gpio_id (конфигурация, «GPIO-B»);

GPIO_PIN3 = libsoc_board_gpio_id (конфигурация, «GPIO-C»);

GPIO_PIN4 = libsoc_board_gpio_id (конфигурация, «GPIO-D»);

GPIO_TRANSIS = libsoc_board_gpio_id (конфигурация, «GPIO-E»);

GPIO_SELECT = libsoc_board_gpio_id (конфигурация, «GPIO-G»);

GPIO_ENTER = libsoc_board_gpio_id (конфигурация, «GPIO-H»);

GPIO_LEDTEST = libsoc_board_gpio_id (конфигурация, «GPIO-I»);

libsoc_board_free (конфигурация);

}

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);

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

{

перейти к неудаче;

}

libsoc_gpio_set_direction (gpio_pin1, ВХОД);

libsoc_gpio_set_direction (gpio_pin2, ВХОД);

libsoc_gpio_set_direction (gpio_pin3, ВХОД);

libsoc_gpio_set_direction (gpio_pin4, ВХОД);

libsoc_gpio_set_direction (gpio_transis, ВХОД);

libsoc_gpio_set_direction (gpio_select, INPUT);

libsoc_gpio_set_direction (gpio_enter, INPUT);

libsoc_gpio_set_direction (gpio_ledtest, ВЫХОД);

если ((libsoc_gpio_get_direction (gpio_pin1)! = ВХОД)

|| (libsoc_gpio_get_direction (gpio_pin2)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin3)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin4)! = ВХОД)

|| (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)! = ВЫХОД))

{

перейти к неудаче;

}

во время пробежки)

{

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);

если (touch_select == 1)

{

valorBoton ++;

если (valorBoton == 4)

{

valorBoton = 0;

}

}

если (valorBoton == 3)

{

valorLEDTest = 1;

libsoc_gpio_set_level (gpio_ledtest, valorLEDTest);

}

}

сбой: if (gpio_pin1 || gpio_pin2 || gpio_pin3 || gpio_pin4 || gpio_transis || gpio_select || gpio_enter || gpio_ledtest)

{

printf ("сбой применения ресурса gpio! / 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);

}

вернуть EXIT_SUCCESS;

}

Шаг 3: электрическая цепь

Электрическая цепь
Электрическая цепь
Электрическая цепь
Электрическая цепь
Электрическая цепь
Электрическая цепь
Электрическая цепь
Электрическая цепь

Эта схема работает как аналого-цифровой преобразователь. Он принимает сигнал потенциометра, который имеет значение от 0 до 5 вольт, затем преобразователь преобразует его в цифровой сигнал от 0 до 255 бит и отправляет его на ВХОДЫ DragonBoard.

Шаг 4:

Разработано:

Альфредо Фонтес

Маурисио Гомес

Хорхе Хименес

Херардо Лопес

Фелипе Рохас

Луис Рохас

Ивон Сандовал

Рекомендуемые: