02 lab microbox1
DESCRIPTION
กิจกรรมการทดลองกลุ่ม แผงวงจรตรวจจับแบบดิจิตอลTRANSCRIPT
![Page 1: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/1.jpg)
IPST-MicroBOX
กล่องสมองกล
กิจกรรมการทดลองการทดลองอุปกรณ์กลุม่
![Page 2: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/2.jpg)
แผงวงจรขบั แผงวงจรขบั LED LED สองสี สองสี : : ZXZX--LEDLED22CC
220
HIGH
LOW
O LED
Bi-colorLED
R
G
+S
+S
ใช้ LED แบบ 2 สีในการแสดงผล โดยเลือกได้ 2 แบบช่อง HIGH ถ้าอินพตุเป็นลอจิก "1" LED ติดเป็นสีแดง ช่อง LOW ถ้าอินพตุเป็นลอจิก "0" LED ติดเป็นสีเขียว ถ้าไม่ใช่สญัญาณที�กาํหนด LED จะดบั
![Page 3: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/3.jpg)
การทดลองที� 1 ควบคมุการติดดบัของ LED
1.ทาํการเชื�อมต่อแผงวงจร ZX-LED2C เข้ากบับอรด์ IPST ที�ตาํแหน่ง PD7
LED Bl i nk i ng ZX-LED
2C
Bi-co
lor L
ED
-+ S -+ S
![Page 4: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/4.jpg)
การทดลองที� 1 ควบคมุการติดดบัของ LED2.เปิดโปรแกรม AVR Studio สรา้งโปรเจก็ตใ์หม่แลว้ เขียนโปรแกรมต่อไปนี�ลงไป
#include <ipst.h>main(){
while(1){
out_d(7,1);sleep(500);out_d(7,0);sleep(500);
}}
![Page 5: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/5.jpg)
การทดลองที� 1 ควบคมุการติดดบัของ LED
ไมเ่กิดข้อผิดพลาด
กดปุ่ มเพื�อคอมไพล์
3. คอมไพลโ์ปรแกรม ตรวจสอบหน้าต่าง Build ต้องแสดงข้อความ "Build Secceeded” แสดงว่าโปรแกรมที�เขียนขึ�นไม่มีข้อผิดพลาด
4. เปิดโปรแกรม AVR Prog โดยไปที�หน้าต่าง Tools เลือก AVR Prog
![Page 6: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/6.jpg)
การทดลองที� 1 ควบคมุการติดดบัของ LED
4. เปิดโปรแกรม AVR Prog โดยไปที�หน้าต่าง Tools เลือก AVR Prog* ข้อที� 4 ข้ามขั �นตอนสาํคญัไปคือ การเชื�อมต่อบอรด์ IPST เข้ากบัคอมพิวเตอรแ์ละจ่ายไฟให้กบับอรด์ IPST
4. ทาํการเชื�อมต่อบอรด์ IPST เข้ากบัเครื�องโปรแกรม PX-4005. เชื�อมต่อสายระหว่าง PX-400 กบัคอมพิวเตอร์6. จ่ายไฟให้กบับอรด์ IPST7. เปิดโปรแกรม AVR Prog โดยไปที�หน้าต่าง Tools เลือก AVR Prog
![Page 7: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/7.jpg)
8. กดปุ่ ม Browse เลือกตาํแหน่งที�เกบ็โปรแกรม (นามสกลุ *.hex ) จะเกบ็ไว้ไนโฟลเดอร ์Default9. เลือกเบอรข์องไมโครคอนโทรลเลอร ์ให้ตรง10. ถ้าไม่จาํเป็นไม่ให้เข้าไปเปลี�ยนแปลงค่าในโฟลเดอร ์Advanced 11. กดปุ่ ม Program เพื�อโปรแกรมข้อมลูลงไปยงัไมโครคอนโทรลเลอร์
การทดลองที� 1 ควบคมุการติดดบัของ LED1. เลือกไฟล์
2. เลือกเบอร์
3. Program
![Page 8: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/8.jpg)
sleep sleep -- คาํสั �งหน่วงเวลาคาํสั �งหน่วงเวลา
อยูใ่นไฟลเ์ฮดเดอร ์sleep.h
การใชง้าน
sleep(m) – หน่วงเวลา m มลิลวินิาท ี(โดยประมาณ)
out_d(x,y) out_d(x,y) –– คาํสั �งกาํหนดขาพอรต์มีลอจิก คาํสั �งกาํหนดขาพอรต์มีลอจิก ““00” ” หรือ หรือ ““11””
อยูใ่นไฟลเ์ฮดเดอร ์in_out.h
การใชง้าน
out_d(7,1) กาํหนดให ้PD7 มลีอจกิ “1”
out_d(6,0) กาํหนดให ้PD6 มลีอจกิ “0”
ตาํแหน่งพอรต์
![Page 9: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/9.jpg)
แผงวงจรสวิตช ์แผงวงจรสวิตช ์: : ZXZX--SWITCHSWITCH D SWITCH
LOW
HIGH510
Bi-color LED
10kSWITCH +S
+SR
G
+5
GND
10kR1
SW1
0V
+5
GND
10kR1
SW1
5V
0V ลอจิก “0”
5V ลอจิก “1”
![Page 10: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/10.jpg)
ZX
-LED
2C
Bi-co
lor L
ED
-+ S -+ S
ATMEGA16
การทดลองที� 2 การอ่านค่าจากแผงวงจรสวิตช์1.ทาํการเชื�อมต่อแผงวงจร ZX-LED2C เข้ากบับอรด์ IPST ที�ตาํแหน่ง PD72. เชื�อมต่อแผงวงจรสวิตชเ์ขา้กบัช่อง PB4
![Page 11: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/11.jpg)
3. เปิดโปรแกรม AVR Studio สรา้งโปรเจก็ตใ์หม่แลว้ เขียนโปรแกรมต่อไปนี�ลงไป
#include <ipst.h>main(){
while(1){
if(in_b(4)==0){
out_d(7,1);}else{
out_d(7,0);}
}}
การทดลองที� 2 การอ่านค่าจากแผงวงจรสวิตช์
![Page 12: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/12.jpg)
การทดลองที� 2 การอ่านค่าจากแผงวงจรสวิตช์
4. คอมไพลโ์ปรแกรม5. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์6. ทดสอบการทาํงานของโปรแกรม
เมื�อกดสวิตช ์LED ......
เมื�อปล่อยสวิตช ์LED …..
![Page 13: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/13.jpg)
บททดสอบ 1 สวิตชก์ดติด กดดบั
ZX-LED
2C
Bi-co
lor LE
D
-+ S -+ S
ATMEGA16
เขียนโปรแกรมใช้ฮารด์แวรเ์ดิม เมื�อกดสวิตช ์1 ครั �ง LED ติด กดสวิตชอี์ก 1 ครั �ง LED ดบั สลบักนัไปเรื�อย ๆ
![Page 14: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/14.jpg)
เฉลย รปูแบบที� 1
#include <ipst.h>void main(){
while(1){
if(in_b(4)==0){toggle_d(7);sleep(300);}
}}
![Page 15: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/15.jpg)
เฉลย รปูแบบที� 2
#include <ipst.h>char a=0;main(){
while(1){
if(in_b(4)==0){
if (a==0){
a=1;out_d(7,1);
}else{
a=0;out_d(7,0);
}sleep(300);
}}
}
![Page 16: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/16.jpg)
ฟังชั�นสาํหรับอ่านค่าจากพอร์ตอินพุตฟังก์ชั�น in_a สาํหรับอา่นคา่ระดบัสญัญาณดิจิตอลจากพอร์ต Aฟังก์ชั�น in_b สาํหรับอา่นคา่ระดบัสญัญาณดิจิตอลจากพอร์ต Bฟังก์ชั�น in_c สาํหรับอา่นคา่ระดบัสญัญาณดิจิตอลจากพอร์ต Cฟังก์ชั�น in_d สาํหรับอา่นคา่ระดบัสญัญาณดิจิตอลจากพอร์ต D
รปูแบบฟังกช์ั �นchar in_a(x)char in_b(x)char in_c(x)char in_d(x)
พารามิเตอร ์x ทาํหน้าที�กาํหนดขาสญัญาณที�ต้องการอ่านค่าซึ�งมีค่าตั �งแต่ 0 ถึง 7 การคืนค่า อาจมีค่าเป็น 0 หรือ 1
GND 11GND
31
+5V
RB5
RB6
RB7
SW1
R510k
R710k
R910k
R4150R
R6150R
R8150R
6
7
8
SW2
SW3
ตวัอย่าง
if (in_b5==0){out_d(6,1);
}
![Page 17: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/17.jpg)
แผงวงจรแสดงผลตวัเลข 4 หลกั : Display4
ใช้แสดงผลในรปูแบบของตวัเลข 4 หลกัหรอืไฟแสดงตาํแหน่ง 8 จดุหรอืผสมกนั
• ใช ้LED ตวัเลข 7 ส่วน 4 หลกัแบบแคโทดร่วม
และม ีLED จาํนวน 8 ดวง สามารถเลอืกใหแ้ยกกนัแสดงผลหรอืรวมกนักไ็ด ้• มจีุดต่อขาพอรต์ C แบบ 10 ขา จํานวน 2 จุด เพื�อต่อกบัแผงวงจรหลกั MicroBOX และต่อพ่วงเพื�อขยายจาํนวนหลกัที�ตอ้งการแสดงผล เมื�อขยายจะเป็นการขยายคราวละ 4 หลกั และมจีุดต่อ 3 ขา อนัเป็นขาควบคุมการแสดงผลของแต่ละหลกั หากใชป้กต ิ4 หลกัจะมจีุดต่อควบคุม 4 ชุด
![Page 18: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/18.jpg)
+5V
LED1-LED8
Rp21k*8
J1
ONcommon
controlled
Q1KRC102M
Q2KRC102M
Q3KRC102M
Q4KRC102M
Q5KRC102M
+5V
Rp1220k*8
+5V
R1-R8300R
A7A6A5A4A3A2A1A0
Y7Y6Y5Y4Y3Y2Y1Y0
GND
VCC
98765432
1112131415161718
10
20
OE2OE11 19
J1DIGIT1
J2DIGIT2
J3DIGIT3
J4DIGIT4
J5LED
C101uF/50V
K2PORT
K1PORT
IC174HC541 DISP1 DISP2 DISP3 DISP4
dp
gf
e
d
c
b
a
วงจรของแผงวงจรแสดงผลตวัเลข 4 หลกั : Display4
![Page 19: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/19.jpg)
รปูแบบฟังกช์ั �น void segment(unsigned int val)
พารามิเตอร ์val ทาํหน้าที�กาํหนดค่าข้อมูลที�ต้องการแสดงผลข้อมูลที� LED ตวัเลข 7 ส่วน(ทั �ง 4 หลกั) ช่วงข้อมูลที�เป็นไปได้คือตั �งแต่ 0 ถึง 9999 เท่านั�น ถ้าค่าข้อมูลมีค่ามากกว่านี�จะแสดงข้อความเป็น “----”
ตวัอย่างที� 1segment(2549); // แสดงค่าข้อมูล 2549 ที� LED ตวัเลข 7 ส่วน
ตัวอย่างที� 2int i=0;
while(1){
sleep(1000); // หน่วงเวลา 1 วินาทีsegment(i++); // แสดงค่าข้อมูลของ i ที� 7 เซกเมนต์ พร้อมเพิ�มค่า i
}
ฟังกช์ั �น segment หรอื SEGMENT สาํหรบัแสดงผลขอ้มูลที� LED ตวัเลข 7 ส่วน
![Page 20: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/20.jpg)
การทดลองที� 3 แสดงผลข้อมูลที� 7 เซกเมนต ์โดยเพิ�มค่าขึ�น 1 ค่าทุกๆ 1 วินาที เริ�มต้นที�ค่า 0
1. ทาํการเชื�อมต่อแผงวงจร 7
เซกเมนตเ์ข้ากบับอรด์ IPST• เชื�อมต่อสายขอ้มลู 8 บติจากพอรต์ C
เขา้กบัจุดต่อ PORT ของ DSP4
• ต่อสายจากจุด PB4 เขา้กบัจุดต่อ DIGIT4
• ต่อสายจากจุด PB3 เขา้กบัจุดต่อ DIGIT3
• ต่อสายจากจุด PB2 เขา้กบัจุดต่อ DIGIT2
• ต่อสายจากจุด PB1 เขา้กบัจุดต่อ DIGIT1
![Page 21: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/21.jpg)
2. เปิดโปรแกรม AVR Studio สรา้งโปรเจก็ตใ์หม่แลว้ เขียนโปรแกรมต่อไปนี�ลงไป
#include <ipst.h>main(){
int i=0;while(1){
segment(i++);sleep(1000);
}}
การทดลองที� 3
![Page 22: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/22.jpg)
การทดลองที� 3
4. คอมไพลโ์ปรแกรม5. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์6. ทดสอบการทาํงานของโปรแกรม
![Page 23: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/23.jpg)
การทดลองที� 4 แสดงผลข้อมูลที� 7 เซกเมนต์ โดยการเพิ�มค่าขึ�น 1 ค่าทุกๆ 1 วินาที เริ�มต้นจาก 0 เมื�อนับถึง 10 ให้ปิดการแสดงผล
1. ใช้วงจรในการทดลองที� 3
#include <ipst.h>main(){
int i=0;for(i=0;i<11;i++){
segment(i);sleep(1000);
}segment_off();while(1);
}
2. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่แล้ว เขียนโปรแกรมต่อไปนี�ลงไป
![Page 24: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/24.jpg)
การทดลองที� 5 แสดงผลข้อมูลที� 7 เซกเมนต ์โดยแสดงค่าจาํนวนครั �งในการกดสวิตช ์(ใช้วิธีกดค้างค่าการนับจะไม่เพิ�มขึ�น)
1. ใช้วงจรในการทดลองที� 3 แล้วต่อสวิตชเ์พิ�มเติมเข้าที�ตาํแหน่ง PD7 ในตาํแหน่งขา LOW
![Page 25: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/25.jpg)
การทดลองที� 5 แสดงผลข้อมูลที� 7 เซกเมนต ์โดยแสดงค่าจาํนวนครั �งในการกดสวิตช ์(ใช้วิธีกดค้างค่าการนับจะไม่เพิ�มขึ�น)
2. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่แล้วเขียนโปรแกรมต่อไปนี�ลงไป4. คอมไพลโ์ปรแกรม5. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์6. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
int i=0;while(1){
segment(i);if(in_d(7)==0){
while(in_d(7)==0);sleep(100);i++;
}}
}
![Page 26: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/26.jpg)
การทดลองที� 6 แสดงค่าจาํนวนครั �งในการกดสวิตชที์� 7 เซกเมนต ์ เพิ�มขึ�นทีละ 1 เมื�อกดค้างค่าการนับจะเพิ�มขึ�นอย่างต่อเนื�อง
1. ใช้วงจรในการทดลองที� 52. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่แล้วเขียนโปรแกรมต่อไปนี�ลงไป4. คอมไพลโ์ปรแกรม5. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์6. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
int i=0;while(1){
segment(i);if(in_d(7)==0){
i++;sleep(200);
}}
}
![Page 27: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/27.jpg)
บททดสอบ 2
เขียนโปรแกรมตั �งเวลานับ 60 วินาที ในแบบนับลง (Count down) เมื�อนับลงมาจนกระทั �งถึง 0 หน้าจอแสดงผลจะต้องดบัลงอตัโนมติั
![Page 28: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/28.jpg)
บททดสอบ 3 เขียนโปรแกรมแสดงผลข้อมูลที� 7 เซกเมนต ์โดยให้แสดงค่าเริ�มต้นที� 100 เมื�อกดสวิตชที์� PD7 ค่าการนับจะต้องเพิ�มขึ�น 1 ค่า เมื�อมีการกดสวิตชที์� PD6 ค่าการนับจะต้องลดลง 1 ค่า
![Page 29: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/29.jpg)
การทดลองที� 7 แสดงผล LED 8 หลกั โดยแสดงค่าความสมัพนัธ์ของตวัเลขที�กาํหนดให้ออกไปแสดงผลในรปูเลขฐานสอง 0b11000001
1. เชื�อมต่อสายข้อมูล 8 บิตจากพอรต์ Cของบอรด์ IPST เข้ากบับอรด์ DSP-4
2. ต่อสายจากจุด PB0 เข้ากบับอรด์ DSP-43. จ ั �มเปอรจ์ ั �มไปทาง COM CONTROL
![Page 30: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/30.jpg)
การทดลองที� 7 แสดงผล LED 8 หลกั โดยแสดงค่าความสมัพนัธ์ของตวัเลขที�กาํหนดให้ออกไปแสดงผลในรปูเลขฐานสอง 0b11000001
4. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ตใ์หม่ แล้วเขียนโปรแกรมต่อไปนี�ลงไป5. คอมไพลโ์ปรแกรม6. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์7. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
while(1){
led8(0b11000001);}
}
![Page 31: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/31.jpg)
การทดลองที� การทดลองที� 88 ไฟกระพริบ LED 8 หลกั โปรแกรมจะสั �งให้ LED บิต 2 (หลกัที� 3 เมื�อนับจากซ้ายมือ) กบับิต 7(หลกัที� 8 เมื�อนับจากซ้ายมือ)กระพริบต่อเนื�อง
1. ใช้วงจรในการทดลองที� 72. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่ แล้วเขียนโปรแกรมต่อไปนี�ลงไป3. คอมไพลโ์ปรแกรม4. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์5. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
while(1){
led8(0b10000100);sleep(200);led8(0b00000000);sleep(200);
}}
![Page 32: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/32.jpg)
การทดลองที� 9 ไฟกระพริบ LED 8 หลกั ไล่ลาํดบัจากซ้ายไปขวา
1. ใช้วงจรในการทดลองที� 72. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่ แล้วเขียนโปรแกรมต่อไปนี�ลงไป3. คอมไพลโ์ปรแกรม4. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์5. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
char i = 0b10000000;while (1){
led8(i);i = i >> 1;if (i == 0){i = 0b10000000;}sleep(100);
}}
![Page 33: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/33.jpg)
บททดสอบ 4
เขียนโปรแกรมแสดงไฟวิ�งที� LED 8 หลกั โดยวิ�งวนจากบิต 0 ไปยงับิต 7
![Page 34: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/34.jpg)
แผงวงจรลาํโพงเปียโซ แผงวงจรลาํโพงเปียโซ : : SPEAKERSPEAKER
C110/16V
SP1Piezospeaker
S+
K1SOUND
• ใช้ลาํโพงเปียโซ มีอิมพีแดนซ์ 32W
• มีค่าความถี�เรโซแนนซ์ในย่าน 1 ถึง 3kHz
![Page 35: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/35.jpg)
ชดุคาํสั �งสาํหรบักาํเนิดเสียง
beep_a(char ch)beep_b(char ch)beep_c(char ch)beep_d(char ch)
ฟังกช์นั beep กาํเนิดเสียงความที� 2kHz นาน 10 mSec
ตวัอยา่งbeep_d(3);
ส่งเสยีงออกลาํโพงที�ตําแหน่ง PD3
รปูแบบ
ฟังกช์นั sound กาํเนิดเสียงโดยกาํหนดความถี�และระยะเวลาได้
sound_a(char ch,int freq,int time)sound_b(char ch,int freq,int time)sound_c(char ch,int freq,int time)sound_d(char ch,int freq,int time)
รปูแบบ ตวัอยา่ง
sound_b(3,800,500)
ส่งเสยีงออกลาํโพงที�ตําแหน่ง PB3 ความถี� 800 Hz ระยะเวลา 0.5 วนิาที
![Page 36: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/36.jpg)
การทดลองที� 10 โปรแกรมกาํเนิดสญัญาณเสียงแบบง่ายที�ขา PD6
1. เชื�อมต่อลาํโพงเปียโซเข้ากบั PD6
SPEAKER
* ยงัไม่ต้องถอดบอรด์ 7 เซกเมนต์ออก เพื�อใช้ในการทดลองต่อไป
![Page 37: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/37.jpg)
2. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่ แล้วเขียนโปรแกรมต่อไปนี�ลงไป3. คอมไพลโ์ปรแกรม4. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์5. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
while (1){
beep_d(6);sleep(200);beep_d(6);sleep(1000);
}}
การทดลองที� 10 โปรแกรมกาํเนิดสญัญาณเสียงแบบง่ายที�ขา PD6
![Page 38: 02 lab microbox1](https://reader034.vdocuments.mx/reader034/viewer/2022052316/558a3e9ad8b42a1e788b470a/html5/thumbnails/38.jpg)
2. เปิดโปรแกรม AVR Studio สร้างโปรเจก็ต์ใหม่ แล้วเขียนโปรแกรมต่อไปนี�ลงไป3. คอมไพลโ์ปรแกรม4. ดาวน์โหลดโปรแกรมลงไปยงัไมโครคอนโทรลเลอร์5. ทดสอบการทาํงานของโปรแกรม
#include <ipst.h>main(){
while (1){
sound_d(6,800,500);sleep(200);sound_d(6,800,500);sleep(1000);
}}
การทดลองที� 11 โปรแกรมกาํเนิดสญัญาณเสียงแบบง่ายแบบที� 2 ที�ขา PD6