Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Розробка GSM-сигналізації

Реферат Розробка GSM-сигналізації





еобхідну уставку.ConvertedValue [ChanelADC [chet]] - масив містить заміряні значення напруги [16] [4] - масив зберігає уставки АЦП введені користувачем [16] [4] - масив містить дані по уставками, скільки разів заміряне значення досягало уставки.

vObrabUstADC (void * pvParameters)

{....... (;;)

{

//перевіряємо доступність довічного семафора - віддає функція переривання (xSemaphoreTake (xSemPrerADC, 10))

{

//скануємо по всім введеним користувачем каналах (i=0; i lt; lenkan; i ++)

{

/* в залежності від напрямку дії уставки і активності

каналу в даний момент */(ADCstr [chet] - gt; napravl [j] == 0 amp; amp; UslAktiv [i] [j] == 0)

{// виконуємо необхідне порівняння (ADC3ConvertedValue [ChanelADC [chet]] lt; (ResMasADC [chet] [j] - 0xA))

++ FlagMas [i] [j];// Ведемо рахунок даними порівнянь

.............

} ............

}

//якщо рахунок досяг уставки за часом (FlagMas [i] [j] gt;=UslovDelFlag [chet] [j])

/* використовуючи чергу передаємо у завдання відправки номер каналу і номер

уставки, довжина черги - 16 дорівнює довжині каналів * /. nomkan=chet ;. nomstrok=j; (xQueueSoob, (void *) amp; DataSoob, 154);

//виводимо задачу відправки з блокованого состояния (OtpSoobSim); }}}


) Завдання виконує відправку SMS повідомлень - vOtpravSMS. Як тільки з'являється умова для відправки повідомлення, завдання обробки уставок зберігає в черзі структурну змінну яка зберігає номер каналу і номер уставки і виводить дану задачу з призупиненого стану. Черга - механізм ОСРВ дозволяє передавати інформацію між завданнями, так і між завданнями та переривання.

vOtpravSMS (void * pvParameters)

{(;;)

{

{// перевіряємо що черга не порожня=xQueueReceive (xQueueSoob, amp; ReciveData, 0); (xStatus == pdPASS)

{// якщо існує умова відправки SMS (ADCstr [ReciveData. nomkan] - gt; vidOpovesh [ReciveData. nomstrok] == 0)

//якщо на один канал сконфигурировано кілька телефонів (t=0; (tel=ADCstr [ReciveData. nomkan] - gt; nomertel [t])!=0xFF; t ++)

{// то відправляємо на всі телефони даного канала_CRITICAL (); _ soob (tel, ReciveData. nomkan, ReciveData. nomstrok); _ CRITICAL (); (4340);// Затримка 4 сек для відправки SMS SIM900

}

//відправляємо поки в черзі є повідомлення

}} while (uxQueueMessagesWaiting (xQueueSoob));

//після чого дана задача сама себе призупиняє (NULL);

}


Особливості виконання даного завдання наявність критичної секції при виклику функції відправки повідомлення. У цій функції виконується кодування повідомлення і через певні інтервали часу SIM900 передаються команди управління з повідомленням. Одним з недоліків FreeRTOS є те що в критичній секції не можна викликати функцію vTaskDelay () - блокування завдання на певний час, і передачі на цей час, управління іншим завданням. Дана особливість заснована на тому, що vTaskDelay () - працює від переривання SysTick - тобто при її виклику дозволяються маскіруемие переривання і автоматично викликається функція taskEXIT_CRITICAL () виходу з критичної секції.


.6 Передача параметрів настроювання по USB


При передачі даних від ПО комп'ютера, воно відкриває необхідний COM порт і передає всі дані. Драйвер забезпечує зв'язок COM порту з пакетами USB переданих контролеру забезпечує максимальний розмір пакета даних 64 біта. Процес отримання даних виконується через контрольну точку 0. В кінці передачі пакета даних генерується переривання і викликається функція обробки даних - VCP_DataRx (uint8_t * Buf, uint32_t Len) у файлі usbd_cdc_vcp. c. Щоб не перевищити ліміт в 64 байта і уникнути втрати даних передача даних виконується по каналах налаштованим в користувальницькому додатку. Наприклад спочатку передаємо дані по рядках спочатку рядок №1 потім рядок №2 і. т.д.

Для рядка №1 першого передане повідомлення буде N79529091812 - це номер телефону, другим повідомленням слід Hіванов Є.П.- Це користувач, С030001 - для цього рядка використовується четвертий канал який працює з телефонами під індексами 00 і 01 в масиві телефонів і. т.д. Всі передані повідомлення обробляються по першому символу і записуються у відповідну структуру даних.

С...


Назад | сторінка 8 з 11 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Пристрій передачі даних, що містить п`ять каналів передачі
  • Реферат на тему: Створення бази даних, що зберігає інформацію про студентів навчального закл ...
  • Реферат на тему: Комп'ютерні дані: типи даних, обробка та управління
  • Реферат на тему: Спостереження за передачею даних в мережі організації за допомогою засобів ...
  • Реферат на тему: Імітаційне моделювання процесу передачі даних по двох каналах