Სარჩევი:

NOCAR (Notificación De Carga): 5 ნაბიჯი
NOCAR (Notificación De Carga): 5 ნაბიჯი

ვიდეო: NOCAR (Notificación De Carga): 5 ნაბიჯი

ვიდეო: NOCAR (Notificación De Carga): 5 ნაბიჯი
ვიდეო: Smart Watch Maimo Watch - სრული მიმოხილვა + ტესტები 2024, ივლისი
Anonim
NOCAR (Notificación De Carga)
NOCAR (Notificación De Carga)

Აბსტრაქტული

ჩვენ ყოველწლიურად ვქმნით ახალ ტექნოლოგიებსა და ტექნიკას. წარსულში ორთქლის მანქანა იყო პირველი ნაბიჯი იმისა, რაც ჩვენ დავარქვით ინდუსტრიულ რევოლუციას. მას შემდეგ ადამიანი არ ჩერდება. ჩვენ ვქმნით მანქანებს ჩვენი ცხოვრების გასაადვილებლად და ყოველ ჯერზე ვცდილობთ გავაუმჯობესოთ ის, რაც უკვე გავაკეთეთ.

თანამედროვე მანქანა პირველად დაინერგა 1886 წელს. მას შემდეგ მას დიდი განვითარება აქვს მრავალ ასპექტში. სიჩქარის ლიმიტიდან, წონის კონტროლამდე, ის იცვლება და ბევრ გზას ადგას. ახალმა ტექნოლოგიამ აიძულა მანქანა არ გამოეყენებინა წიაღისეული საწვავი: ჰიბრიდული მანქანა. თუმცა, ამ მეთოდს უფრო შეზღუდული შეზღუდვები აქვს. ერთი მინუსი არის დრო, რომელიც საჭიროა გადატენვისთვის. არც ისე ადვილია, როგორც ბენზინგასამართ სადგურზე წასვლა და ავზის შევსება რამდენიმე წუთში. ზოგიერთ მანქანას სჭირდება საათები დატენვის დასასრულებლად. ბევრი თუ ბენზინგასამართი სადგური არის რეკრეაციული ზონის ან სავაჭრო ზონის მახლობლად. და აზრი აქვს, თუ ბატარეის შევსებას მეტი დრო დასჭირდება, აზრი არ აქვს თქვენ იქ ყოფნას მთელი დროის განმავლობაში, ასე რომ თქვენ მოგცემთ შესაძლებლობას იმავდროულად იქ წახვიდეთ სადაც გინდათ. თუმცა, მას შემდეგ რაც მანქანა იტენება, თუ თქვენ არ გამოგიყვანიათ მანქანა სატვირთო სადგურიდან, ჯარიმა დაეკისრება თქვენს მანქანას. ამ პროდუქტის მიზანია მომავალი ჰიბრიდული მანქანების ნორმალური პრობლემის გადაჭრა (ჰიბრიდულ მანქანებს დიდი ფსონი აქვთ მაგიდაზე). ჩვენ ვახორციელებთ წრიულ სისტემას Dragonboard 410c– ის გამოყენებით. ის გიგზავნით ელ.წერილს, რომ შეგატყობინოთ, რომ თქვენი მანქანის ენერგიის დატენვა გარკვეულ პროცენტამდეა. ამ გზით, თქვენ შეგიძლიათ შეასრულოთ თქვენი საქმიანობა ისე, რომ არ იდარდოთ იმაზე, თქვენი მანქანა ისევ იტენება თუ ის მზად არის (და სავარაუდოა, რომ მიიღებს ჯარიმას). მიუხედავად იმისა, რომ აქ მექსიკაში ამგვარი პრობლემა არ გამოჩნდება, უფრო ადრე ვიდრე ჩვენ ველოდით ახალი სისტემები დაეუფლება წიაღისეულ საწვავს და ჰიბრიდული მანქანები მნიშვნელოვან როლს შეასრულებენ. შეიქმნა ახალი კანონები და ჯარიმები უკვე ფაქტია და არა შორეული იდეა.

გამოსახულების კრედიტი: კლიპერი კრიკი: ელექტრული ავტომობილის დამტენი სადგურები

ნაბიჯი 1: მასალები

  • DragonBoard 410c
  • ანტრესოლი 96 დაფისთვის
  • პროტობორდი
  • ჯუმბერის მავთული
  • დააჭირეთ ღილაკს
  • რეზისტორი 10 ohm
  • პოტენციომეტრი 10k ohm
  • კონდენსატორი 150 pF
  • ჩიპი ADC0804

ნაბიჯი 2: კოდი

#ჩართეთ

#ჩართეთ

#ჩართეთ

#მოიცავს "libsoc_gpio.h"

#მოიცავს "libsoc_debug.h"

#მოიცავს "libsoc_board.h"

ხელმოუწერელი GPIO_PIN1;

ხელმოუწერელი GPIO_PIN2;

ხელმოუწერელი GPIO_PIN3;

ხელმოუწერელი GPIO_PIN4;

ხელმოუწერელი GPIO_TRANSIS;

ხელმოუწერელი GPIO_SELECT;

ხელმოუწერელი GPIO_ENTER;

ხელმოუწერელი GPIO_LEDTEST;

int დროშა;

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 გაშვება = 1;

_ ატრიბუტი _ ((კონსტრუქტორი)) სტატიკური სიცარიელე _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 მთავარი ()

{

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

თუ ((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, 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);

თუ ((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))

{

უნდა ჩავარდე;

}

(გაშვებული)

{

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 რესურსი fail! / 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 INPUTS- ში.

ნაბიჯი 4:

შემქმნელი:

ალფრედო ფონტესი

მაურისიო გომესი

ხორხე ხიმენესი

ჯერარდო ლოპესი

ფელიპე როხასი

ლუის როხასი

ივონ სანდოვალი

გირჩევთ: