Rtos API example

Embed: (wiki syntax)

« Back to documentation index

InterruptIn Class Reference

InterruptIn Class Reference
[Drivers]

A digital interrupt input, used to call a function on a rising or falling edge. More...

#include <InterruptIn.h>

Inherits NonCopyable< InterruptIn >.

Public Member Functions

 InterruptIn (PinName pin)
 Create an InterruptIn connected to the specified pin.
int read ()
 Read the input, represented as 0 or 1 (int)
 operator int ()
 An operator shorthand for read()
void rise (Callback< void()> func)
 Attach a function to call when a rising edge occurs on the input.
template<typename T , typename M >
 MBED_DEPRECATED_SINCE ("mbed-os-5.1","The rise function does not support cv-qualifiers. Replaced by ""rise(callback(obj, method)).") void rise(T *obj
 Attach a member function to call when a rising edge occurs on the input.
template<typename T , typename M >
 MBED_DEPRECATED_SINCE ("mbed-os-5.1","The fall function does not support cv-qualifiers. Replaced by ""fall(callback(obj, method)).") void fall(T *obj
 Attach a member function to call when a falling edge occurs on the input.
void enable_irq ()
 Enable IRQ.
void disable_irq ()
 Disable IRQ.

Private Member Functions

 MBED_DEPRECATED ("Invalid copy construction of a NonCopyable resource.") NonCopyable(const NonCopyable &)
 NonCopyable copy constructor.
 MBED_DEPRECATED ("Invalid copy assignment of a NonCopyable resource.") NonCopyable &operator
 NonCopyable copy assignment operator.

Detailed Description

A digital interrupt input, used to call a function on a rising or falling edge.

Note:
Synchronization level: Interrupt safe

Example:

 // Flash an LED while waiting for events

 #include "mbed.h"

 InterruptIn event(p16);
 DigitalOut led(LED1);

 void trigger() {
     printf("triggered!\n");
 }

 int main() {
     event.rise(&trigger);
     while(1) {
         led = !led;
         wait(0.25);
     }
 }

Definition at line 60 of file InterruptIn.h.


Constructor & Destructor Documentation

InterruptIn ( PinName  pin )

Create an InterruptIn connected to the specified pin.

Parameters:
pinInterruptIn pin to connect to

Definition at line 22 of file InterruptIn.cpp.


Member Function Documentation

void disable_irq (  )

Disable IRQ.

This method depends on hw implementation, might disable one port interrupts. For further information, check gpio_irq_disable().

Definition at line 95 of file InterruptIn.cpp.

void enable_irq (  )

Enable IRQ.

This method depends on hw implementation, might enable one port interrupts. For further information, check gpio_irq_enable().

Definition at line 89 of file InterruptIn.cpp.

MBED_DEPRECATED_SINCE ( "mbed-os-5.1"  ,
"The fall function does not support cv-qualifiers. Replaced by ""fall(callback(obj, method))."   
)

Attach a member function to call when a falling edge occurs on the input.

Parameters:
objpointer to the object to call the member function on
methodpointer to the member function to be called
MBED_DEPRECATED_SINCE ( "mbed-os-5.1"  ,
"The rise function does not support cv-qualifiers. Replaced by ""rise(callback(obj, method))."   
)

Attach a member function to call when a rising edge occurs on the input.

Parameters:
objpointer to the object to call the member function on
methodpointer to the member function to be called
operator int (  )

An operator shorthand for read()

Definition at line 101 of file InterruptIn.cpp.

int read ( void   )

Read the input, represented as 0 or 1 (int)

Returns:
An integer representing the state of the input pin, 0 for logical 0, 1 for logical 1

Definition at line 37 of file InterruptIn.cpp.

void rise ( Callback< void()>  func )

Attach a function to call when a rising edge occurs on the input.

Parameters:
funcA pointer to a void function, or 0 to set as none

Definition at line 48 of file InterruptIn.cpp.