IPST-MicroBox++ And SE


20150710

โพสต์10 ก.ค. 2558 01:59โดยอนุสรณ์ จันทสุข


การเพิ่มและลดค่าตัวแปรโดยใช้ปุ่ม SW1 และ SW2

โพสต์3 ก.ค. 2558 07:46โดยอนุสรณ์ จันทสุข   [ อัปเดต 10 ก.ค. 2558 02:05 ]

ใช้ปุ่ม sw2 เพิ่มค่า
 1 #include <ipst.h> // include file for IPST-SE
 2  int i=0;
 3  void setup()
 4  {
 5    lcd("Press SW1");
 6    sw1_press();
 7    lcd("#c");
 8  }
 9  
10  void loop()
11  {
12    lcd("%d",i);
13    if(sw2()==1)
14    {
15      delay(250);
16      i=i+1;
17    }
18  }
ใช้ปุ่ม sw2 เพิ่มค่า และ SW3 ลดค่า
 1 #include <ipst.h> // include file for IPST-SE
 2  int i=0;
 3  void setup()
 4  {
 5    lcd("Press SW1");
 6    sw1_press();
 7    lcd("#c");
 8  }
 9  
10  void loop()
11  {
12    lcd("%d",i);
13    if(sw2()==1)
14    {
15      delay(250);
16      i=i+1;
17    }
18  
19    if(sw3()==1)
20    {
21      delay(250);
22      i=i-1;
23    }
24  }

การใช้ปุ่ม Switch เปิดไฟใน IPST-MicroBox ++

โพสต์26 มิ.ย. 2558 00:52โดยอนุสรณ์ จันทสุข   [ อัปเดต 26 มิ.ย. 2558 05:59 ]


อุปกรณ์ 
1. บอร์ด IPST-MicroBox++ 
2. ZX-SWITCH หรือ ZX-Switch01
3. ZX-LED

การเชื่อมต่ออุปกรณ์ 
1. ต่อ ZX-SWITCH หรือ ZX-Switch01 ที่พอร์ต PA3 และ PA5 
2. ต่อ ZX-LED ที่พอร์ต PD7

ตัวอย่างการใช้ปุ่ม Switch ตัวเดียวเปิดไฟ
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("BT1->On#nPress SW1->Next");
 5    sw1_press();
 6    lcd("#c");
 7    lcd("Lab Botton");
 8  }
 9  
10  void loop()
11  {
12    int bt=analogRead(PA3);
13    if(bt==1){
14      digitalWrite(PD7,1);
15    } else {
16      digitalWrite(PD7,0);
17    }
18  }
ตัวอย่างการใช้ปุ่ม Switch ตัวเดียวเปิดปิดไฟ
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("BT1->On-Off#nPress SW1->Next");
 5    sw1_press();
 6    lcd("#c");
 7    lcd("Lab Botton");
 8  }
 9  
10  void loop()
11  {
12    int bt=analogRead(PA3);
13    if(bt==1){
14      delay(250);
15      int x=0;
16      while(x==0)
17      {
18        bt=analogRead(PA3);
19        digitalWrite(PD7,1);
20        if(bt==1){
21          delay(250);
22          digitalWrite(PD7,0);
23          x=1;
24        }
25      }   
26    }
27  }
ตัวอย่างการใช้ปุ่ม Switch 2 เดียวเปิดปิดไฟ
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("BT1->On BT2->Off#nPress SW1->Next");
 5    sw1_press();
 6    lcd("#c");
 7    lcd("Lab Botton");
 8  }
 9  
10  void loop()
11  {
12    int bt1=analogRead(PA3);
13    int bt2=analogRead(PA5);
14    if(bt1==1){
15      digitalWrite(PD7,1);
16    }
17    if(bt2==1){
18      digitalWrite(PD7,0);
19    }

การใช้ฟังก์ชัน sw1_press() และ sw1()

โพสต์22 มิ.ย. 2558 19:29โดยอนุสรณ์ จันทสุข   [ อัปเดต 30 มิ.ย. 2558 19:09 ]


อุปกรณ์ 
1. บอร์ด IPST-MicroBox++ 
2. แผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO

การเชื่อมต่ออุปกรณ์ 
1. ต่อแผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO เข้ากับบอร์ด IPST-MicroBox++ 

ตัวอย่างโปรแกรม

 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("R U Ready?#nPress SW1->Start");
 5    sw1_press();
 6    lcd("#c");
 7    lcd("Press SW1-2-3#nTry to Press.");
 8    delay(2000);
 9  }
10  
11  void loop()
12  {
13    char x1,x2,x3;
14    
15    x1=sw1();
16    x2=sw2();
17    x3=sw3();
18    lcd("#c");
19    if(x1==1){
20      beep(PB1);
21      lcd("SW1");
22      delay(1000);
23    }
24    if(x2==1){
25      beep(PB1);
26      lcd("SW2"); 
27      delay(1000);   
28    }
29    if(x3==1){
30      beep(PB1);
31      lcd("SW3");
32      delay(1000);  
33    }

การใช้เซนเซอร์วัดระยะใน IPST-MicroBox SE

โพสต์20 มิ.ย. 2558 16:38โดยอนุสรณ์ จันทสุข   [ อัปเดต 26 มิ.ย. 2558 05:57 ]

ในกล่อง IPST-MicroBox SE ไม่มีอุปกรณ์การวัดระยะ แต่ที่โรงเรียนมี Sharp GP2D120X เลยเอามาลองทำ



อุปกรณ์
1. บอร์ด IPST-MicroBox SE
2. เซนเซอร์วัดระยะ GP2D120X
3. Piazo Speaker

การเชื่อมต่ออุปกรณ์
1. ต่อเซนเซอร์วัดระยะ GP2D120X ที่พอร์ต A0
2. ต่อ Piazo Speaker ที่พอร์ต 19

ตัวอย่างการนำไปใช้ *** อย่าลืม #include <ipst_gp2d120_lib.h>



ถ้าต้องการให้มีเสียงเตือนเมื่อเมื่อถึงระยะที่กำหนด



การจับเวลาใน IPST-MicroBox ++

โพสต์20 มิ.ย. 2558 16:36โดยอนุสรณ์ จันทสุข   [ อัปเดต 28 มิ.ย. 2558 04:55 ]

วันนี้ต้องการจะทำเครื่องมือจับเวลา มีเครื่องมืออะไรที่เกี่ยวกับเวลาใน Wiring (http://wiring.org.co/reference/)



วันนี้ใช้ฟังก์ขัน millis()
------
Name millis()
Description Returns the number of milliseconds (thousandths of a second) since starting an application. This information is often used for timing sequences.

Syntax millis()
------

ตัวอย่างการนำไปใช้กับแผงวงจรสวิตซ์ (ZX-SWITCH01)
 1 #include <ipst.h> // include file for IPST-SE
 2  long start_time=0, stop_time=0;
 3  void setup()
 4  {
 5    while(digitalRead(PD0)==1){
 6      lcd("Press Button");
 7    }
 8    delay(250);
 9    start_time=millis();
10    
11    while(digitalRead(PD0)==1){
12      lcd("Press Button");
13    }
14    stop_time=millis();
15    lcd("Times=%f     ",(float)(stop_time-start_time)/1000.00);
16  }
17  
18  void loop()
19  {}
หรือจะใช้กับ SW1, SW2, SW3
 1 #include <ipst.h> // include file for IPST-SE
 2  long start_time=0, stop_time=0;
 3  void setup()
 4  {
 5    lcd("SW1->Start");
 6    lcd("#nSW2->Stop");
 7    sw1_press();
 8    start_time=millis();
 9  
10    sw2_press();
11    stop_time=millis();
12    lcd("#c");
13    lcd("Times=%f     ",(float)(stop_time-start_time)/1000.00);
14  }
15  
16  void loop()
17  {}

การใช้เซนเซอร์วัดอุณหภูมิใน IPST-MicroBox ++

โพสต์20 มิ.ย. 2558 16:33โดยอนุสรณ์ จันทสุข   [ อัปเดต 28 มิ.ย. 2558 06:08 ]

เพราะอยากทันสมัยเลย Upgrade IPST-MicroBox รุ่นแรก ให้เป็น IPST-MicroBox++ ภารกิจเลยตกอยู่ที่ครู (นักเรียนสมัยใหม่ รอคอยหนอนจากครู) เนื่องจากของใหม่จึงลองผิดลองถูก ได้บ้างไม่ได้บ้าง (จริงๆ มีคู่มือ และ Help แต่มันตอบโจทย์ได้ไม่หมด ไม่เหมือนคู่มือรุ่นดั้งเดิม) 

มาดูตัวอย่างการแสดงค่าอุณหภูมิที่ LCD โดยใช้เซนเซอร์วัดอุณหภูมิ (ZX-Termister)

อุปกรณ์ 
1. บอร์ด IPST-MicroBox++ 
2. แผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO
3. แผงวงจรเซนเซอร์วัดอุณหภูมิ (ZX-Termister)
4. แผงลำโพงเปียโซ ที่พอร์ต PA1
5. แผงวงจร ZX-LED

การเชื่อมต่ออุปกรณ์ 
1. ต่อแผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO เข้ากับบอร์ด IPST-MicroBox++ 
2. ต่อแผงวงจรเซนเซอร์วัดอุณหภูมิ (ZX-Termister) ที่พอร์ต PA2
3. ต่อแผงลำโพงเปียโซ (ZX-Termister) ที่พอร์ต PA1
4. ต่อแผงวงจร ZX-LED ที่พอร์ต PA7

 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab Termister");  
 5  }
 6  
 7  void loop()
 8  {
 9    int tempValue=analogRead(PA2);
10    lcd("#nTemp. : %d  ",tempValue);
11    delay(500);
12  }
เมื่อต้องการเพิ่มเสียงเตือนในกรณีที่อุณหูมิสูงกว่า 30 องศา (การแปลงค่าอุณหภูมิให้ได้ค่าเป็นองศาควรศึกษาเพิ่มเติม)
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab Termister");  
 5  }
 6  
 7  void loop()
 8  {
 9    int tempValue=analogRead(PA2);
10    lcd("#nTemp. : %d  ",tempValue);
11    delay(500);
12    
13    if(tempValue<455){
14      beep(PA1);
15      delay(500);
16    }
17  }
หรือต้องการให้หลอดไฟติดเมื่ออุณหภูมิสูงกว่า 30 องศา
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab Termister");  
 5  }
 6  
 7  void loop()
 8  {
 9    int tempValue=analogRead(PA2);
10    lcd("#nTemp. : %d  ",tempValue);
11    delay(500);
12    
13    if(tempValue<455){
14      digitalWrite(PA7,1);
15      delay(100);
16    } else {
17      digitalWrite(PA7,0);
18      delay(100);    
19    }
20  }

การเปิดปิดหลอด LED ใน IPST-MicroBox ++

โพสต์20 มิ.ย. 2558 16:31โดยอนุสรณ์ จันทสุข   [ อัปเดต 3 ก.ค. 2558 08:00 ]


อุปกรณ์ 
1. บอร์ด IPST-MicroBox++ 
2. แผงวงจร ZX-LED

การเชื่อมต่ออุปกรณ์ 
1. ต่อแผงวงจร ZX-LED ที่พอร์ต PD7

ตัวอย่างโปรแกรมที่ใช้เปิดหลอด LED

 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab LED");
 5  }
 6  
 7  void loop()
 8  {
 9    digitalWhite(PD7,1);
10  }

ตัวอย่างโปรแกรมที่ใช้ปิดหลอด LED
 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab LED");
 5  }
 6  
 7  void loop()
 8  {
 9    digitalWhite(PD7,0);
10  }

ตัวอย่างโปรแกรมที่ใช้เปิดปิดหลอด LED

 1 #include <ipst.h> // include file for IPST-SE
 2  void setup()
 3  {
 4    lcd("Lab LED");
 5  }
 6  
 7  void loop()
 8  {
 9    digitalWhite(PD7,1);
10    delay(500);
11    digitalWhite(PD7,0);
12    delay(500);
13  }

การสร้างเสียงออกลำโพงเปียโซใน IPST-MicroBox ++

โพสต์20 มิ.ย. 2558 16:26โดยอนุสรณ์ จันทสุข   [ อัปเดต 22 มิ.ย. 2558 18:51 ]

เตรียมอุปกรณ์
1. IPST-MicroBox 
2. Piezo-Speaker
3. ZX-Switch 2 ตัว


การเชื่อมต่ออุปกรณ์
1. ZX-Switch ตัวที่ 1 ต่อที่พอร์ต PD0
2. ZX-Switch ตัวที่ 2 ต่อที่พอร์ต PD1
3. Piezo-Speaker ต่อที่พอร์ต PA1

ตัวอย่างโปรแกรมที่ใช้สร้างเสียง


นอกจากฟังก์ชัน beep() แล้ว ยังสามารถใช้ฟังก์ชัน sound() ได้อีกด้วย


ตัวอย่างโปรแกรมที่ใช้ร่วมกับปุ่ม ZX-Switch


การอ่านค่าแสงใน IPST-MicroBox ++

โพสต์20 มิ.ย. 2558 16:23โดยอนุสรณ์ จันทสุข   [ อัปเดต 3 ก.ค. 2558 07:58 ]




เตรียมอุปกรณ์
1. แผงวงจรควบคุม IPST-MicroBox++
2. แผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO
3. แผงวงจรตรวจจับแสง ZX-LRD
4. ลำโพง Peizo
5. แผงวงจร ZX-LED

การเชื่อมต่ออุปกรณ์
1. ต่อ
แผงวงจรแสดงผลและพอร์ตเอนกประสงค์ Display-IO เข้ากับแผงวงจรควบคุม IPST-MicroBox++
2. แผงวงจรตรวจจับแสง ZX-LRD ต่อที่พอร์ต PA5
3. ลำโพง Peizo ต่อที่พอร์ต PD0
4. แผงวงจร ZX-LED ต่อที่พอร์ต PD7

ตัวอย่างโปรแกรมที่ใช้อ่านค่าแสง
 1 #include <ipst.h> // include file for IPST-SE
 2  int Lval=0;
 3  void setup()
 4  {}
 5  
 6  void loop()
 7  {
 8    Lval=analogRead(PA5);
 9    lcd("Light : %d  ",Lval);
10    delay(500);
11  }
นอกจากนั้นแล้ว ยังสามารถใช้ร่วมกับ ZX-LED และลำโพง Piezo ได้อีกด้วย โดยให้ ZX-LED เปิดไฟและมีเสียง beep เมื่อมีแสงน้อย 
 1 #include <ipst.h> // include file for IPST-SE
 2  #define REF 150
 3  int Lval=0;
 4  void setup()
 5  {}
 6  
 7  void loop()
 8  {
 9    Lval=analogRead(PA5);
10    lcd("Light : %d  ",Lval);
11    delay(500);
12    
13    if(Lval<REF){
14      digitalWrite(PD7,1);
15      beep();
16      delay(250);
17    } else {
18      digitalWrite(PD7,0);  
19      delay(250);  
20    }
21  }
ตัวอย่าง

1-10 of 12