You are on page 1of 5

ЛАБОРАТОРНА РОБОТА № 1

Початок роботи з Renesas. Проект Blinky

1. Програма роботи
- Підключіть Starter Kit до комп'ютера за допомогою роз'єму DEBUG_USB (J-
19) - Стартовий комплект активується і виконує самотестування
- Запустіть ISDE
- Виберіть раніше встановлену мережу інструментів GCC Arm Embedded (якщо
GCC встановлено у стандартному шляху)
- Створіть нову workspace та назвіть її "room_condition_monitor"
- Створіть проект Synergy Blinky, який стане відправною точкою розробки
додатків
- Назвіть проект SK_S7G2_pincfg, натисніть кнопку Далі і виберіть у
наступному вікні плату S7G2 SK та версію SSP 1.2.1.
- Натисніть кнопку Далі і виберіть Blinky з ThreadX, а потім натисніть
Завершити, щоб створити проект
‐ ISDE відкриває робочу область, яка знаходиться в конфігураційній перспективі

‐ Клацніть правою кнопкою миші на папці проекту SK_S7G2_pincfg у проекті explorer і запустіть
автогенерацію коду, натиснувши “Generate Project Content". Потім побудуйте проект, натиснувши на
маленький символ молота. Компіляція має закінчитися з 0 попередженнями та 0 помилками.
‐ Натисніть кнопку «помилка» (маленька зелена піктограма помилки) для налагодження проекту.

‐ Перейдіть до точки налагодження, натиснувши "Debug" у верхньому правому куті (e2studio


запропонує перехід на "Debug" автоматично для кожного нового робочого простору)
‐ Запустіть проект, двічі натиснувши на зелену піктограму зі стрілкою запуску (за замовчуванням
програма зупиниться на векторі скидання і в main (), тому двічі потрібно натиснути цю кнопку)

‐ Початковий комплект зараз спалахнув блискучим проектом. Світлодіоди повинні вмикати та


вимикати кожні пів секунди. Щоб зупинити процес налагодження натисніть значок червоного квадрата.
‐ Якщо під час процедури запуску виникли проблеми, переконайтеся, що все було встановлено та
підключено належним чином
‐ Якщо від'єднати стартовий комплект (перемикач живлення) і знову підключити його, світлодіоди
повинні блимати, як і раніше
‐ Основний код даної програми знаходиться в папці src:
/*************************************************************************************
* File Name : blinky_thread_entry.c
* Description : Це дуже простий приклад, який блимає всіма світлодіодами на платі.
*************************************************************************************/
#include "blinky_thread.h"
/*********************************************************************************//**
* @brief Blinky example application
*
*
*************************************************************************************/
void blinky_thread_entry(void)
{
/* Визначте одиниці, які будуть використовуватися з функцією sleep threadx */
const uint32_t threadx_tick_rate_Hz = 100;
/* Встановіть частоту блимання (повинна бути <= threadx_tick_rate_Hz */
const uint32_t freq_in_hz = 2;
/* Розрахуйте затримку в рамках потоку */
const uint32_t delay = threadx_tick_rate_Hz/freq_in_hz;
/* LED структура */
bsp_leds_t leds;
/* LED змінна стану */
ioport_level_t level = IOPORT_LEVEL_HIGH;

/* Отримайте світлодіодну інформацію для цієї плати */


R_BSP_LedsGet(&leds);

/* Якщо на цій платі немає світлодіодів, то тут зациклити програму */


if (0 == leds.led_count)
{
while(1); // На цій платі немає світлодіодів
}

while (1)
{
/* Визначте наступний стан світлодіодів */
if(IOPORT_LEVEL_LOW == level)
{
level = IOPORT_LEVEL_HIGH;
}
else
{
level = IOPORT_LEVEL_LOW;
}

/* Оновити всі світлодіоди плати */


for(uint32_t i = 0; i < leds.led_count; i++)
{
g_ioport.p_api‐>pinWrite(leds.p_leds[i], level);
}

/* Затримка */
tx_thread_sleep (delay);
}
}

‐ Змодифікуйте код програми щоб блимав тільки один світодіод, другий світився, а третій ні.
‐ Змодифікуйте програму щоб всі світлодіоди блимали по черзі.

You might also like