Skip to main content

Типы статусов и прерывания

Биты в регистрах статусов периферийных блоков подразделяются на флаги (FLAG) и события (EVENT). Разница между ними в том, что флаги сбрасываются, когда указанное условие перестает выполняться, а биты, соответствующие событиям, сбрасываются по чтению. При этом фиксация события имеет приоритет над сбросом.

Прерывание по биту-флагу формируется в момент перехода бита статуса из «0» в «1» (но не наоборот). Если бит статуса уже находился в «1», и в этот момент разрешается прерывание по этому биту, то прерывание тут же сработает.

Прерывание по биту-событию формируется в момент возникновения данного события. Следует иметь ввиду, что бит в регистре статуса установится в «1» от первого события, и, если его не сбросить чтением, то он останется в «1». Прерывания же формируются и от последующих событий и неважно в «0» или в «1» статусный бит.