Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: C12832 mbed-rtos mbed
Fork of UTHM_TOT_MiniProject by
main.cpp@1:33b6bf21fbd4, 2016-08-17 (annotated)
- Committer:
- nsuraya
- Date:
- Wed Aug 17 08:42:11 2016 +0000
- Revision:
- 1:33b6bf21fbd4
- Parent:
- 0:004b3a49f410
tot_uthm
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mfauzi | 0:004b3a49f410 | 1 | #include "mbed.h" |
mfauzi | 0:004b3a49f410 | 2 | #include "rtos.h" |
mfauzi | 0:004b3a49f410 | 3 | #include "C12832.h" |
mfauzi | 0:004b3a49f410 | 4 | |
nsuraya | 1:33b6bf21fbd4 | 5 | AnalogIn port1(p19); |
nsuraya | 1:33b6bf21fbd4 | 6 | Serial pc(USBTX, USBRX); |
nsuraya | 1:33b6bf21fbd4 | 7 | C12832 lcd(p5, p7, p6, p8, p11); |
nsuraya | 1:33b6bf21fbd4 | 8 | AnalogIn port2(p20); |
nsuraya | 1:33b6bf21fbd4 | 9 | DigitalOut myled[] = {LED1,LED2,LED3,LED4}; |
nsuraya | 1:33b6bf21fbd4 | 10 | |
nsuraya | 1:33b6bf21fbd4 | 11 | |
nsuraya | 1:33b6bf21fbd4 | 12 | |
nsuraya | 1:33b6bf21fbd4 | 13 | int i, x = 1; |
mfauzi | 0:004b3a49f410 | 14 | |
nsuraya | 1:33b6bf21fbd4 | 15 | void knight_rider(void const *args) { |
nsuraya | 1:33b6bf21fbd4 | 16 | while (true) { |
nsuraya | 1:33b6bf21fbd4 | 17 | |
nsuraya | 1:33b6bf21fbd4 | 18 | for(i=0; i<4; i++) { |
nsuraya | 1:33b6bf21fbd4 | 19 | myled [i]=1; |
mfauzi | 0:004b3a49f410 | 20 | Thread::wait(100); |
nsuraya | 1:33b6bf21fbd4 | 21 | myled [i]=0; |
mfauzi | 0:004b3a49f410 | 22 | } |
mfauzi | 0:004b3a49f410 | 23 | |
nsuraya | 1:33b6bf21fbd4 | 24 | for(i=2; i>0; i--) { |
nsuraya | 1:33b6bf21fbd4 | 25 | myled [i] = 1; |
nsuraya | 1:33b6bf21fbd4 | 26 | Thread::wait(100); |
nsuraya | 1:33b6bf21fbd4 | 27 | myled [i]=0; |
nsuraya | 1:33b6bf21fbd4 | 28 | |
nsuraya | 1:33b6bf21fbd4 | 29 | } |
nsuraya | 1:33b6bf21fbd4 | 30 | |
mfauzi | 0:004b3a49f410 | 31 | } |
mfauzi | 0:004b3a49f410 | 32 | } |
mfauzi | 0:004b3a49f410 | 33 | |
mfauzi | 0:004b3a49f410 | 34 | |
nsuraya | 1:33b6bf21fbd4 | 35 | void ADC_pc(void const *args) { |
nsuraya | 1:33b6bf21fbd4 | 36 | |
nsuraya | 1:33b6bf21fbd4 | 37 | int j=0; |
nsuraya | 1:33b6bf21fbd4 | 38 | |
nsuraya | 1:33b6bf21fbd4 | 39 | printf("ADC with Interupt"); |
nsuraya | 1:33b6bf21fbd4 | 40 | |
nsuraya | 1:33b6bf21fbd4 | 41 | while(true) { // this is the third thread |
nsuraya | 1:33b6bf21fbd4 | 42 | |
nsuraya | 1:33b6bf21fbd4 | 43 | printf("Voltage : %3.3f V",port1.read()*3.3); |
nsuraya | 1:33b6bf21fbd4 | 44 | j++; |
nsuraya | 1:33b6bf21fbd4 | 45 | Thread::wait(100); |
nsuraya | 1:33b6bf21fbd4 | 46 | |
mfauzi | 0:004b3a49f410 | 47 | } |
mfauzi | 0:004b3a49f410 | 48 | } |
mfauzi | 0:004b3a49f410 | 49 | |
nsuraya | 1:33b6bf21fbd4 | 50 | void ADC_lcd(void const *args) { |
nsuraya | 1:33b6bf21fbd4 | 51 | |
mfauzi | 0:004b3a49f410 | 52 | |
nsuraya | 1:33b6bf21fbd4 | 53 | int j=0; //local variable |
nsuraya | 1:33b6bf21fbd4 | 54 | lcd.cls(); //clear screen |
nsuraya | 1:33b6bf21fbd4 | 55 | lcd.locate(0,3); //point cursor |
nsuraya | 1:33b6bf21fbd4 | 56 | lcd.printf("Voltage Measurement"); |
nsuraya | 1:33b6bf21fbd4 | 57 | |
nsuraya | 1:33b6bf21fbd4 | 58 | while(true) { // this is the third thread |
nsuraya | 1:33b6bf21fbd4 | 59 | lcd.locate(0,20); |
nsuraya | 1:33b6bf21fbd4 | 60 | lcd.printf("Voltage : %3.3f V",port2.read()*3.3); |
nsuraya | 1:33b6bf21fbd4 | 61 | j++; |
nsuraya | 1:33b6bf21fbd4 | 62 | Thread::wait(1000); |
nsuraya | 1:33b6bf21fbd4 | 63 | |
mfauzi | 0:004b3a49f410 | 64 | } |
mfauzi | 0:004b3a49f410 | 65 | } |
nsuraya | 1:33b6bf21fbd4 | 66 | |
mfauzi | 0:004b3a49f410 | 67 | int main() { |
nsuraya | 1:33b6bf21fbd4 | 68 | Thread tread1(knight_rider); |
nsuraya | 1:33b6bf21fbd4 | 69 | Thread tread2(ADC_pc); |
nsuraya | 1:33b6bf21fbd4 | 70 | Thread tread3(ADC_lcd); |
mfauzi | 0:004b3a49f410 | 71 | |
nsuraya | 1:33b6bf21fbd4 | 72 | while (true) ; |
mfauzi | 0:004b3a49f410 | 73 | } |