8. HAL

HAL (Hardware Abstraction Layer) - инструмент, который позволяет отделить аппаратные особенности реализации контроллера от логики TOIC. HAL унифицирует доступ к аппаратному обеспечению и позволяет легко создавать кроссплатформенное ПО.

Системный программист (тот, который реализует прошивку, драйвера устройств и интеграцию TOIC VM в контроллер), создает соответствия между адресным пространством регистров TOIC и реальным аппаратным обеспечением.

Регистры HAL могут иметь произвольные названия, что увличивает читаемость кода.

Например:

PB5.VALUE = 1;
LED_PIN.MODE = GPIO_MODE_OUTPUT;
var temp = DS18B20.VALUE;