Это старая версия документа!
Управление микроконтроллером осуществляет через операции записи и чтения значений регистров.
Для записи значения примеряется процедура SYSTEM.PUT.
Первый аргумент — адрес регистра, второй — машинное слово.
Машинное слово может быть переменной или константой типа целое (INTEGER) или множество (SET).
Адреса регистров хранятся в модулях подсистемы Micro.
MODULE ExamplesPut;
IMPORT SYSTEM, MCU := MicroSTM32F10xxD;
PROCEDURE On;
BEGIN
SYSTEM.PUT(MCU.GPIOCBSRR, {13}); (* поднять напряжение на PС13 *)
END On;
PROCEDURE Off;
BEGIN
SYSTEM.PUT(MCU.GPIOCBSRR, {13+16}); (* убрать напряжение на PС13 *)
END Off;
END ExamplesPut.
В процедуре On мы записываем константу {13} типа SET, которая означает то, что бит с номером 13 равен 1, остальные значения равны 0.
В процедуре Off мы записываем константу {13+16} типа SET, которая означает то, что бит с номером 29 равен 1, остальные значения равны 0. Такая операция над регистром GPIOCBSRR приводит к выключению напряжения на выводе PC13.
Подробнее про применение типа SET для управления регистрами.