Просто о внешних переменных

Views: 769


 Часто возникает задача когда необходимо предавать данные между модулями программы. Например, передать данные между файлами, или управлять работой модулей.

Для этого создаем заголовочный файл и описываем наши переменные как внешние. В тех файлах в которых предполагается использовать необходимо включить этот файл и описать эту переменную. Механизм выглядит так:

Задача может быть и такой необходимо управлять работой функций библиотеки из основной программы. Для этого в библиотеки описываем внешнюю переменную в заголовочном файле, в основном файле библиотеки описываем эту переменную “как обычно”.  И необходимо включить эту библиотеку в файл в котором предполагается его использовать.

Еще один вариант, создаем “два файла” описание внешних переменных, в тех “файлах” где надо использовать их надо их включить.


В общем, все так просто…


Это может быть интересно


  • CAN – Controller Area NetworkCAN – Controller Area Network
    Views: 1063 Controller Area Network (CAN) первоначально был создан немецким поставщиком автомобильных систем Робертом Бош в середины 1980-х для автомобильной промышленности как метод для обеспечения возможности надежной последовательной связи. Целью было сделать автомобили более надежными, …
  • Analog-to-Digital Converter with Computation Technical BriefAnalog-to-Digital Converter with Computation Technical Brief
    Views: 1245 Аналого-цифровой преобразователь с вычислительным модулем. ВВЕДЕНИЕ Аналого-цифровой преобразователь (ADC) с вычислительным модулем (ADC2) в 8-разрядном микроконтроллере Microchip имеет встроенные вычислительные функции, которые обеспечивают функции пост-обработки, такие как передискретизация, …
  • Обновление ESP8266 c ESPFlashDownloadTool_v3.6.3Обновление ESP8266 c ESPFlashDownloadTool_v3.6.3
    Views: 3451 Технология обновления следующая: Загружаем программу со страницы espressif.com. Разархивируем. Где находятся файлы, для прошивки? Заходим в каталоги Подключаем по схеме в статье WiFi ESP8266 (замыкаем BT2, перемычка). Запускаем программу, …
  • WiFi ESP8266 – AT команды связанные с функцией TCP/IP (v.1.6.1)WiFi ESP8266 – AT команды связанные с функцией TCP/IP (v.1.6.1)
    Views: 5009 AT команды связанные с функцией TCP/IP В этом разделе описаны команды которые позволяют устанавливать соединения между серверами и клиентами в сети. Приведено описание команд и примеры их выполнения. …
  • Индикатор температурыИндикатор температуры
    Views: 2654 Проект для начинающих, на демо плате BB-2T3D-01. Простой индикатор температуры. Проект никак не задумывался, просто на витрину магазин Ворон нужна была демонстрационная модель на макетной плате, чего нибудь работающего. Остановились на индикаторе …
  • Стробоскоп для автомобиляСтробоскоп для автомобиля
    Views: 2151 Одним из популярных решений светового тюнинга автомобиля, мотоцикла или скутера стал эффект –  “полицейский стробоскоп“. На база платы ch-c0050 реализовано несколько проектов. В этой статье приводятся две версии …
  • MPLAB® Harmony – или как это просто! Часть 4.MPLAB® Harmony – или как это просто! Часть 4.
    Views: 1980 Часть четвертая – это может показаться немного сложно. Структура проекта. Для облегчения конфигурирования проекты MPLAB Harmony обычно структурированы таким образом, чтобы изолировать код, необходимый для настройки «системы», от …
  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Views: 2776 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • Регулятор влажности ch-3800Регулятор влажности ch-3800
    Views: 1410   И еще один проект на плате ch-c3xxx –  универсальный регулятор влажности ch-3800. Регулятор позволяет работать как в режиме индикатора влажности, так и в режиме регулятора. Рабочий диапазон …
  • LATINO – открытый проект ch-светомузыкиLATINO – открытый проект ch-светомузыки
    Views: 1645   Проект построенный на некоторых принципах ch-светомузыка. Проект ознакомительный предназначен, для самостоятельного построения простого и эффективного светосинтезатора. Вывод осуществляется на ВОУ собранной на драйверах HL1606. Для этого была …



 

Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее