interrupt

Dependencies:   mbed

Committer:
marcRonquillo
Date:
Thu Oct 22 13:32:42 2015 +0000
Revision:
0:e24676e8e06c
interrupt

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marcRonquillo 0:e24676e8e06c 1 #include "mbed.h"
marcRonquillo 0:e24676e8e06c 2
marcRonquillo 0:e24676e8e06c 3 InterruptIn in1(p17);
marcRonquillo 0:e24676e8e06c 4 InterruptIn in2(p18);
marcRonquillo 0:e24676e8e06c 5
marcRonquillo 0:e24676e8e06c 6 DigitalOut out1(p21);
marcRonquillo 0:e24676e8e06c 7 DigitalOut out2(p22);
marcRonquillo 0:e24676e8e06c 8
marcRonquillo 0:e24676e8e06c 9 int count1;
marcRonquillo 0:e24676e8e06c 10 int count2;
marcRonquillo 0:e24676e8e06c 11
marcRonquillo 0:e24676e8e06c 12 void risingEdge1()
marcRonquillo 0:e24676e8e06c 13 {
marcRonquillo 0:e24676e8e06c 14 count1++;
marcRonquillo 0:e24676e8e06c 15
marcRonquillo 0:e24676e8e06c 16 if(count1==3){
marcRonquillo 0:e24676e8e06c 17 count1=0;
marcRonquillo 0:e24676e8e06c 18 out1=0;
marcRonquillo 0:e24676e8e06c 19 }
marcRonquillo 0:e24676e8e06c 20 else{
marcRonquillo 0:e24676e8e06c 21 out1=1;
marcRonquillo 0:e24676e8e06c 22 }
marcRonquillo 0:e24676e8e06c 23
marcRonquillo 0:e24676e8e06c 24 }
marcRonquillo 0:e24676e8e06c 25
marcRonquillo 0:e24676e8e06c 26 void fallingEdge1()
marcRonquillo 0:e24676e8e06c 27 {
marcRonquillo 0:e24676e8e06c 28 out1=0;
marcRonquillo 0:e24676e8e06c 29 }
marcRonquillo 0:e24676e8e06c 30
marcRonquillo 0:e24676e8e06c 31 void risingEdge2()
marcRonquillo 0:e24676e8e06c 32 {
marcRonquillo 0:e24676e8e06c 33 count2++;
marcRonquillo 0:e24676e8e06c 34
marcRonquillo 0:e24676e8e06c 35 if(count2==4){
marcRonquillo 0:e24676e8e06c 36 count2=0;
marcRonquillo 0:e24676e8e06c 37 out2=0;
marcRonquillo 0:e24676e8e06c 38 }
marcRonquillo 0:e24676e8e06c 39 else{
marcRonquillo 0:e24676e8e06c 40 out2=1;
marcRonquillo 0:e24676e8e06c 41 }
marcRonquillo 0:e24676e8e06c 42
marcRonquillo 0:e24676e8e06c 43 }
marcRonquillo 0:e24676e8e06c 44
marcRonquillo 0:e24676e8e06c 45 void fallingEdge2()
marcRonquillo 0:e24676e8e06c 46 {
marcRonquillo 0:e24676e8e06c 47 out2=0;
marcRonquillo 0:e24676e8e06c 48 }
marcRonquillo 0:e24676e8e06c 49
marcRonquillo 0:e24676e8e06c 50 int main() {
marcRonquillo 0:e24676e8e06c 51
marcRonquillo 0:e24676e8e06c 52 out1=0;
marcRonquillo 0:e24676e8e06c 53 out2=0;
marcRonquillo 0:e24676e8e06c 54
marcRonquillo 0:e24676e8e06c 55 count1=0;
marcRonquillo 0:e24676e8e06c 56 count2=0;
marcRonquillo 0:e24676e8e06c 57
marcRonquillo 0:e24676e8e06c 58 in1.rise(&risingEdge1);
marcRonquillo 0:e24676e8e06c 59 in1.fall(&fallingEdge1);
marcRonquillo 0:e24676e8e06c 60 in2.rise(&risingEdge2);
marcRonquillo 0:e24676e8e06c 61 in2.fall(&fallingEdge2);
marcRonquillo 0:e24676e8e06c 62
marcRonquillo 0:e24676e8e06c 63 while(1) {
marcRonquillo 0:e24676e8e06c 64
marcRonquillo 0:e24676e8e06c 65 }
marcRonquillo 0:e24676e8e06c 66 }