ryou sato / Mbed 2 deprecated LPC11U35_CTswitch_relay

Dependencies:   mbed LPC11U35_MCP41HV51-503EST

Committer:
ryousato
Date:
Mon Aug 17 01:01:49 2020 +0000
Revision:
0:df1e1f84ded8
Child:
1:88f0bc1e1aff
1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ryousato 0:df1e1f84ded8 1 //////////////////////////////////////////////////
ryousato 0:df1e1f84ded8 2 // Include Files
ryousato 0:df1e1f84ded8 3 #include "mbed.h"
ryousato 0:df1e1f84ded8 4 #include "LPC11Uxx.h"
ryousato 0:df1e1f84ded8 5 #include "USBSerial.h"
ryousato 0:df1e1f84ded8 6 #include "stdio.h"
ryousato 0:df1e1f84ded8 7 #include "math.h"
ryousato 0:df1e1f84ded8 8 //////////////////////////////////////////////////
ryousato 0:df1e1f84ded8 9
ryousato 0:df1e1f84ded8 10 //Configure the PC Serial Port for CDC USB
ryousato 0:df1e1f84ded8 11 USBSerial serial;
ryousato 0:df1e1f84ded8 12 Serial device(P0_19,P0_18);
ryousato 0:df1e1f84ded8 13
ryousato 0:df1e1f84ded8 14 //Pin Defines
ryousato 0:df1e1f84ded8 15 DigitalOut myled(LED1);
ryousato 0:df1e1f84ded8 16
ryousato 0:df1e1f84ded8 17 /*
ryousato 0:df1e1f84ded8 18 DigitalOut coilEN1(P0_1);
ryousato 0:df1e1f84ded8 19 DigitalOut coilEN2(P0_2);
ryousato 0:df1e1f84ded8 20 DigitalOut coilEN3(P0_3);
ryousato 0:df1e1f84ded8 21 DigitalOut coilEN4(P0_4);
ryousato 0:df1e1f84ded8 22 DigitalOut coilEN5(P0_5);
ryousato 0:df1e1f84ded8 23 DigitalOut coilEN6(P0_20);
ryousato 0:df1e1f84ded8 24 DigitalOut coilEN7(P1_19);
ryousato 0:df1e1f84ded8 25
ryousato 0:df1e1f84ded8 26 DigitalOut ENn(P0_16);
ryousato 0:df1e1f84ded8 27 DigitalOut addr0(P0_17);
ryousato 0:df1e1f84ded8 28 DigitalOut addr1(P0_18);
ryousato 0:df1e1f84ded8 29 DigitalOut addr2(P0_19);
ryousato 0:df1e1f84ded8 30
ryousato 0:df1e1f84ded8 31 DigitalOut SCT_AMP(P0_10);
ryousato 0:df1e1f84ded8 32 DigitalOut WLATn(P0_23);
ryousato 0:df1e1f84ded8 33 DigitalOut SHDNn(P1_15);
ryousato 0:df1e1f84ded8 34
ryousato 0:df1e1f84ded8 35 AnalogIn AD_TRANS_IN(P0_11);
ryousato 0:df1e1f84ded8 36 AnalogIn AD_CT_IN(P0_12);
ryousato 0:df1e1f84ded8 37
ryousato 0:df1e1f84ded8 38 SPI POT_SPI(P0_9, P0_8, P0_6);
ryousato 0:df1e1f84ded8 39 */
ryousato 0:df1e1f84ded8 40
ryousato 0:df1e1f84ded8 41
ryousato 0:df1e1f84ded8 42 void setup() {
ryousato 0:df1e1f84ded8 43 device.baud(115200);
ryousato 0:df1e1f84ded8 44
ryousato 0:df1e1f84ded8 45 /* POT_SPI.format(8, 3);
ryousato 0:df1e1f84ded8 46 POT_SPI.frequency(1000000);
ryousato 0:df1e1f84ded8 47
ryousato 0:df1e1f84ded8 48 coilEN1 = 0;
ryousato 0:df1e1f84ded8 49 coilEN2 = 0;
ryousato 0:df1e1f84ded8 50 coilEN3 = 0;
ryousato 0:df1e1f84ded8 51 coilEN4 = 0;
ryousato 0:df1e1f84ded8 52 coilEN5 = 0;
ryousato 0:df1e1f84ded8 53 coilEN6 = 0;
ryousato 0:df1e1f84ded8 54 coilEN7 = 0;
ryousato 0:df1e1f84ded8 55
ryousato 0:df1e1f84ded8 56 ENn = 1;
ryousato 0:df1e1f84ded8 57 addr0 = 0;
ryousato 0:df1e1f84ded8 58 addr1 = 0;
ryousato 0:df1e1f84ded8 59 addr2 = 0;
ryousato 0:df1e1f84ded8 60
ryousato 0:df1e1f84ded8 61 SCT_AMP = 0;
ryousato 0:df1e1f84ded8 62 WLATn = 1;
ryousato 0:df1e1f84ded8 63 SHDNn = 0;
ryousato 0:df1e1f84ded8 64 */
ryousato 0:df1e1f84ded8 65
ryousato 0:df1e1f84ded8 66 wait(0.5);
ryousato 0:df1e1f84ded8 67 serial.printf("Hello World!\r\n");
ryousato 0:df1e1f84ded8 68 wait(0.5);
ryousato 0:df1e1f84ded8 69 }
ryousato 0:df1e1f84ded8 70
ryousato 0:df1e1f84ded8 71 void helpwrite(){
ryousato 0:df1e1f84ded8 72 serial.printf("\r\ncmd");
ryousato 0:df1e1f84ded8 73 serial.printf("\r\nhelp");
ryousato 0:df1e1f84ded8 74 serial.printf("\r\nOK");
ryousato 0:df1e1f84ded8 75 }
ryousato 0:df1e1f84ded8 76
ryousato 0:df1e1f84ded8 77 void serial_inout(){
ryousato 0:df1e1f84ded8 78 char moji[32]; //入力文字列
ryousato 0:df1e1f84ded8 79 int count = 0; //文字数カウンタ
ryousato 0:df1e1f84ded8 80
ryousato 0:df1e1f84ded8 81 if(serial.readable()) { // 受信確認
ryousato 0:df1e1f84ded8 82 moji[count] = serial.getc(); //キーボード入力文字を1文字ずつmojiに代入
ryousato 0:df1e1f84ded8 83 serial.printf("%c(%d)", moji[count],count); //シリアル出力表示
ryousato 0:df1e1f84ded8 84
ryousato 0:df1e1f84ded8 85 if(count == 31 ){ // ①文字数が既定の個数になった場合
ryousato 0:df1e1f84ded8 86 moji[31] = '\0'; // 末尾に終端文字を入れる
ryousato 0:df1e1f84ded8 87 count = 0; // 文字カウンタをリセット
ryousato 0:df1e1f84ded8 88 serial.printf("\r\nERR!\r\n");
ryousato 0:df1e1f84ded8 89 }
ryousato 0:df1e1f84ded8 90
ryousato 0:df1e1f84ded8 91 // else if(moji[0] == '\n'){count = 0;}
ryousato 0:df1e1f84ded8 92
ryousato 0:df1e1f84ded8 93 else if((moji[count] == '\r')) { // ②CRを受信した場合
ryousato 0:df1e1f84ded8 94 moji[count] = '\0'; // 末尾に終端文字を入れる
ryousato 0:df1e1f84ded8 95 count = 0; // 文字カウンタをリセット
ryousato 0:df1e1f84ded8 96 if(strcmp(moji, "cmd") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 97 else if(strcmp(moji, "help") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 98 else if(strcmp(moji, "?") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 99 else if(strcmp(moji, "initial") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 100 else if(strcmp(moji, "VON") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 101 else if(strcmp(moji, "VOFF") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 102 else if(strcmp(moji, "50Hz") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 103 else if(strcmp(moji, "60Hz") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 104 else if(strcmp(moji, "trans_adj") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 105 else if(strcmp(moji, "ct1_adj") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 106 else if(strcmp(moji, "ct2_adj") == 0){helpwrite();}
ryousato 0:df1e1f84ded8 107 else serial.printf("\r\nNG %c %d", moji, count);
ryousato 0:df1e1f84ded8 108 }
ryousato 0:df1e1f84ded8 109
ryousato 0:df1e1f84ded8 110 else count++; // 文字カウンタに1加算
ryousato 0:df1e1f84ded8 111 }
ryousato 0:df1e1f84ded8 112 }
ryousato 0:df1e1f84ded8 113
ryousato 0:df1e1f84ded8 114 //////////////////////////////////////////////////
ryousato 0:df1e1f84ded8 115 // main Program
ryousato 0:df1e1f84ded8 116 int main() {
ryousato 0:df1e1f84ded8 117 setup();
ryousato 0:df1e1f84ded8 118
ryousato 0:df1e1f84ded8 119 myled = 1;
ryousato 0:df1e1f84ded8 120
ryousato 0:df1e1f84ded8 121 while(1){
ryousato 0:df1e1f84ded8 122 serial_inout();
ryousato 0:df1e1f84ded8 123 }
ryousato 0:df1e1f84ded8 124 }
ryousato 0:df1e1f84ded8 125 //////////////////////////////////////////////////
ryousato 0:df1e1f84ded8 126
ryousato 0:df1e1f84ded8 127