ubinos
Macros | Typedefs | Functions
intr.h File Reference

BSP interrupt API. More...

#include <ubinos_config.h>
#include <ubinos/type.h>

Go to the source code of this file.

Macros

#define INTR_OPT__EDGE   0x00
 
#define INTR_OPT__LEVEL   0x80
 
#define INTR_OPT__LOW   0x00
 
#define INTR_OPT__HIGH   0x40
 

Typedefs

typedef void(* isr_ft) (void)
 

Functions

int intr_connectisr (int no, isr_ft isr, int priority, unsigned int option)
 
int intr_enable (int no)
 
int intr_disable (int no)
 
int intr_clearpending (int no)
 
int intr_gethighestpriority (void)
 
int intr_getlowestpriority (void)
 

Detailed Description

BSP interrupt API.

BSP 인터럽트 API를 정의합니다.

Macro Definition Documentation

◆ INTR_OPT__EDGE

#define INTR_OPT__EDGE   0x00

인터럽트 유형 선택 사항: 엣지 감지edge triggered

◆ INTR_OPT__HIGH

#define INTR_OPT__HIGH   0x40

인터럽트 유형 선택 사항: 엣지 감지edge triggered 선택 사항과 함께 쓰일 경우 포지티브 엣지 감지positive edge triggered, 레벨 감지level sensitive 선택 사항과 함께 쓰일 경우 하이 레벨 감지high level sensitive

Examples
intrtest00.c.

◆ INTR_OPT__LEVEL

#define INTR_OPT__LEVEL   0x80

인터럽트 유형 선택 사항: 레벨 감지level sensitive

Examples
intrtest00.c.

◆ INTR_OPT__LOW

#define INTR_OPT__LOW   0x00

인터럽트 유형 선택 사항: 엣지 감지edge triggered 선택 사항과 함께 쓰일 경우 네거티브 엣지 감지negative edge triggered, 레벨 감지level sensitive 선택 사항과 함께 쓰일 경우 로우 레벨 감지low level sensitive

Typedef Documentation

◆ isr_ft

typedef void(* isr_ft) (void)

인터럽트 서비스 루틴 함수 포인터 형 정의

Function Documentation

◆ intr_clearpending()

int intr_clearpending ( int  no)

대상 인터럽트의 pending bit를 초기화하는 함수

Parameters
no대상 인터럽트 번호

Returns
0: 성공

-1: 오류
-n: n-1 번째 매개변수가 잘못되었음

◆ intr_connectisr()

int intr_connectisr ( int  no,
isr_ft  isr,
int  priority,
unsigned int  option 
)

대상 인터럽트에 인터럽트 서비스 루틴을 연결시키는 함수

Parameters
no대상 인터럽트 번호

isr인터럽트 서비스 루틴 함수 포인터

priority우선 순위

option선택 사항 (BSP_INTR_OPT__...)
0: 네거티브 엣지 감지negative edge triggered

Returns
0: 성공

-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
Examples
intrtest00.c.

◆ intr_disable()

int intr_disable ( int  no)

대상 인터럽트를 비활성화하는 함수

Parameters
no대상 인터럽트 번호

Returns
0: 성공

-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
Examples
intrtest00.c.

◆ intr_enable()

int intr_enable ( int  no)

대상 인터럽트를 활성화하는 함수

Parameters
no대상 인터럽트 번호

Returns
0: 성공

-1: 오류
-n: n-1 번째 매개변수가 잘못되었음
Examples
intrtest00.c.

◆ intr_gethighestpriority()

int intr_gethighestpriority ( void  )

인터럽트가 가질 수 있는 최고 우선순위를 돌려주는 함수

Returns
인터럽트가 가질 수 있는 최고 우선순위

◆ intr_getlowestpriority()

int intr_getlowestpriority ( void  )

인터럽트가 가질 수 있는 최저 우선순위를 돌려주는 함수

Returns
인터럽트가 가질 수 있는 최저 우선순위
Examples
intrtest00.c.