KEY CC 2530 includeSoftware Serial h includeOLED h

  • Slides: 31
Download presentation

元件 KEY CC 2530

元件 KEY CC 2530

*軟體程式(遙控器) 宣告區 #include<Software. Serial. h> #include<OLED. h> Software. Serial my. Serial(A 1, A 2);

*軟體程式(遙控器) 宣告區 #include<Software. Serial. h> #include<OLED. h> Software. Serial my. Serial(A 1, A 2); OLED my. OLED; #define key 1 2 #define key 2 6 //-------#define led 3 int b=0;

* * void setup() *{ * my. OLED. begin(FONT_8 x 16); //FONT_6 x 8

* * void setup() *{ * my. OLED. begin(FONT_8 x 16); //FONT_6 x 8 , FONT_8 x 16 * my. OLED. set. Posi(0, 0); * my. OLED. print("bird gw"); * Serial. begin(9600); * my. Serial. begin(9600); * Zigbee_setup(26, 0 x 1001, 0 x 2002); * pin. Mode(key 1, INPUT); * pin. Mode(key 2, INPUT); * //-----* pin. Mode(led, OUTPUT); * digital. Write(led, LOW); * digital. Write(key 1, HIGH); * digital. Write(key 2, HIGH); *}

* * * * * * * void loop() { * int a= digital.

* * * * * * * void loop() { * int a= digital. Read(key 1); if (a==0) { delay(500); switch(b) { case 1: digital. Write(led, HIGH); my. Serial. write('1'); delay(200); break; case 2: digital. Write(led, LOW); my. Serial. write('2'); delay(200); break; case 3: digital. Write(led, HIGH); my. Serial. write(0 x 33); delay(200); break; } }

* a = digital. Read( key 2); * if(a==0) * { * delay(700); //

* a = digital. Read( key 2); * if(a==0) * { * delay(700); // delay in between reads for stability * * *} if(b>2) b=1; else b=b+1; my. OLED. set. Posi(4, 0); my. OLED. print("Func No=: "); my. OLED. println(b); }

*副涵式 * void Zigbee_setup(uint 8_t channel, uint 16_t panid, uint 16_t addr) *{ *

*副涵式 * void Zigbee_setup(uint 8_t channel, uint 16_t panid, uint 16_t addr) *{ * int i, len; * * // get Channel/PAN ID/Address * my. Serial. write(0 x. AA); * my. Serial. write(0 x. C 7); * my. Serial. write(0 x. BB); * delay(30); * // set Channel/PAN ID/Address * my. Serial. write(0 x. AA); * my. Serial. write(0 x. C 7); * my. Serial. write(0 x 5 A); * my. Serial. write(channel); * my. Serial. write(panid>>8); * my. Serial. write(panid&0 xff); * my. Serial. write(addr>>8); * my. Serial. write(addr&0 xff); * my. Serial. write(0 x. BB); *}

*感測主控板 宣告區 * * * * * #include<Software. Serial. h> * * * //------------

*感測主控板 宣告區 * * * * * #include<Software. Serial. h> * * * //------------ * * * //----- #include<OLED. h> OLED my. OLED; //----------#define led 3 //---------Software. Serial Zig. Bee(A 1, A 2); //--------#define MICROWAVE A 3 #define MP 3_1_PIN A 4 #define MP 3_2_PIN A 5 #define bz A 0 //-----#define key 1 2 int a;

* * * * * * * void setup() { // put your setup

* * * * * * * void setup() { // put your setup code here, to run once: my. OLED. begin(FONT_8 x 16); //FONT_6 x 8 , FONT_8 x 16 my. OLED. set. Posi(2, 0); my. OLED. print("B 217 BIRD: ON"); Serial. begin(9600); //--------------Zig. Bee. begin(9600); Zigbee_setup(26, 0 x 1001, 0 x 2002); //------------pin. Mode(led, OUTPUT); digital. Write(led, LOW); //--------------pin. Mode(bz, OUTPUT); digital. Write(bz, LOW); //---------pin. Mode( MICROWAVE, INPUT_PULLUP); //---------pin. Mode(key 1, INPUT_PULLUP); pin. Mode(A 4, OUTPUT); pin. Mode(A 5, OUTPUT); digital. Write(MP 3_1_PIN, HIGH); digital. Write(MP 3_2_PIN, HIGH); }

* * * * * * * void loop() { zigbee_read(); if(a==1) { my.

* * * * * * * void loop() { zigbee_read(); if(a==1) { my. OLED. set. Posi(4, 0); my. OLED. print("Zig. Bee: ") ; my. OLED. print(a); mp 3_1(); LED(5, 300); } if(a==2) { my. OLED. set. Posi(4, 0); my. OLED. print("Zig. Bee: ") ; my. OLED. print(a); mp 3_2(); LED(5, 300); BZ(); }

* if(a==3) * { * my. OLED. set. Posi(4, 0); * my. OLED. print("Zig.

* if(a==3) * { * my. OLED. set. Posi(4, 0); * my. OLED. print("Zig. Bee: ") ; * my. OLED. print(a); * // uint 8_t b =digital. Read(key 1); * int c = digital. Read( MICROWAVE); * digital. Write(led, LOW); * my. OLED. set. Posi(6, 0); * my. OLED. print("wp: "); * my. OLED. print(c); * digital. Write(MP 3_1_PIN, HIGH); * digital. Write(MP 3_2_PIN, HIGH); * delay(300);

* if(c==LOW) * { * digital. Write(led, LOW); * } * else if (

* if(c==LOW) * { * digital. Write(led, LOW); * } * else if ( c==HIGH) * { * digital. Write(MP 3_1_PIN, LOW); * delay(100); * digital. Write(MP 3_1_PIN, HIGH); * delay(1000); * digital. Write(MP 3_2_PIN, LOW); * delay(100); * digital. Write(MP 3_2_PIN, HIGH); * digital. Write(led, HIGH); * * } *}

* * * * * * void Zigbee_setup(uint 8_t channel, uint 16_t panid, uint

* * * * * * void Zigbee_setup(uint 8_t channel, uint 16_t panid, uint 16_t addr) { int i, len; // get Channel/PAN ID/Address Zig. Bee. write(0 x. AA); Zig. Bee. write(0 x. C 7); Zig. Bee. write(0 x. BB); delay(30); // set Channel/PAN ID/Address Zig. Bee. write(0 x. AA); Zig. Bee. write(0 x. C 7); Zig. Bee. write(0 x 5 A); Zig. Bee. write(channel); Zig. Bee. write(panid>>8); Zig. Bee. write(panid&0 xff); Zig. Bee. write(addr>>8); Zig. Bee. write(addr&0 xff); Zig. Bee. write(0 x. BB); }

* void BZ() *{ * * digital. Write(bz, HIGH); * delay(500); * digital. Write(bz,

* void BZ() *{ * * digital. Write(bz, HIGH); * delay(500); * digital. Write(bz, LOW); *} * void mp 3_1() *{ * digital. Write(MP 3_1_PIN, LOW); * delay(100); * digital. Write(MP 3_1_PIN, HIGH); * delay(1000); * digital. Write(MP 3_1_PIN, LOW); * delay(100); * digital. Write(MP 3_1_PIN, HIGH); *}

* void mp 3_2() *{ * digital. Write(MP 3_2_PIN, LOW); * delay(100) ; *

* void mp 3_2() *{ * digital. Write(MP 3_2_PIN, LOW); * delay(100) ; * digital. Write(MP 3_2_PIN, HIGH); * delay(1000); * digital. Write(MP 3_2_PIN, LOW); * delay(100); * digital. Write(MP 3_2_PIN, HIGH); * *}

* * * * * * * void zigbee_read() { uint 8_t ch; if(Zig.

* * * * * * * void zigbee_read() { uint 8_t ch; if(Zig. Bee. available()) { ch=Zig. Bee. read(); if(ch==0 x 31) { a=1; } else if (ch==0 x 32) { a=2; } else if(ch==0 x 33) { a=3; } } else if(a != 3) { a = 0; } }

* void LED(int Q, int finv) *{ * int i ; * digital. Write(led,

* void LED(int Q, int finv) *{ * int i ; * digital. Write(led, LOW); * for (i=0; i<Q; i++) * { * digital. Write(led, HIGH); * delay(finv); * digital. Write(led, LOW); * delay(finv); * } * * *}