Lecture 6
1
ในการใช Microcontroller ควมคมอปกรณตางๆ มทงแบบทท าใหอปกรณท างานในแบบ digital เพอ ON/OFF อปกรณซงสามารถใชสญญาณจากตวไมโครคอนโทรลเลอรไดโดยตรง หรอ สงขอมลออกไปเพอควบคมอปกรณทเปน Analogue เชน ล าโพง อปกรณท าความรอน หรออปกรณท าความเยน อยางไรกตามการสงขอมลออกไปเพอควบคมอปกรณทเปน Analogue ตองมการแปลงสญญาณ Digital ใหเปน Analogue กอนโดยใชวงจร Digital to Analogue Converter (D/A) ซงจะอธบายตอไป
Analogue Output
Digital to Analogue Converter (D/A)
วงจร D/A ท าหนาทในการเปลยนขอมลของเลขฐานสอง ใหเปนแรงดนทหรอกระแส ทสมพนธกบคาขอมลนนๆ หลกการท างานของวงจร แสดงไดดงรปซงเปนตวอยางของ D/A ชนด Weighted Resistor ขนาด 5 บต ดงรป
รปท 1 Weighted Resistor D/A
ขาอนพท ลบของ Op-amp จะมแรงดนเปน 0 Volt และเมอมสวทช อนใดทปดวงจร กจะเกดกระแสทไหลผาน Resistor เทากบ VREF / Ri แตละตว และกระแสทงหมดจะไหลผาน Rf ท าใหไดเปนแรงดน Output ทแปลตามผลรวมของกระแสน คาความตานทานของ R1 R2 R3 R4 และ R5 จะถกเลอกมาเพอใหไดคาของกระแสทแตกตางกน ตามคาความส าคญของขอมลเลขฐานสอง
1
1N
2N
2
1N
1
N
0
ref
f
out 2
D
2
D
2
D
2
DV
R
RV
ขอเสยของการใชวงจรลกษณะน คอในทางปฏบต คาความตานทานทตางกนเปน 2 เทา คอ 2R, 4R, 8R, … จะ ไมสามารถหาไดงายนก และในกรณทผลตเปนอตสาหกรรม การออกแบบวงจรรวมใหความตานทานหลายๆคาท าใหเพมความล าบากในการผลต
Lecture 6
2
รปท 2 R-2R network D/A
จากรป วงจร D/A แบบ R-2R network
1
1N
2N
2
1N
1
N
0
ref
f
out 2
D
2
D
2
D
2
DV
R
RV
หรอ
Nreff Val
VR
RV
out 2
โดยท N คอ จ านวนหลก และ Val คอคาของเลขฐานสองนนๆในฐานสบ
ตวอยางเชน จากรป N=4 Vref = 3.3 V ถาเลขฐานสอง input คอ 00112 =310
42
33.3
10
10
k
kV
out
= 0.61875 V
Minimum (single step) VAL = 1 จะมคา
Vout = 3.3 × 1 / 24 = 0.20625 volts
Maximum output (1111) VAL = 15 จะมคา
Lecture 6
3
Vout = 3.3 × 15 / 24 = 3.09375 V วงจร R-2R ladder เปนวงจรทมราคาถกและงายตอการผลตเชงอตสาหกรรมเพราะใชคาความตานทานเพยง 2 คา IC D/A มทงแบบทรบสงขอมลแบบขนานและอนกรม
ตวอยาง IC D/A R-2R ladder
1
1N
2N
2
1N
1
N
0
ref
f
out 2
D
2
D
2
D
2
DV
R
RV
N=8 Vref = 2 V, Rf=5k, R=1k, ถาเลขฐานสอง input คอ 11111111112 =25510
012345678 2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
12
1
5
k
kV
out
Vk
kV
out961.9
256
2552
1
5
รปท 3 IC D/A 8 bits
สงทก าหนดคณภาพของ D/A คอ 1. Resolution ดไดจากจ านวนของบตทเปน Input ของ D/A นนๆ เชนถา D/A ม Input จ านวน 8 บต
จะสามารถสรางระดบแรงดนของสญญาณ Output ไดทงหมด 28 หรอ 256 ระดบ ดงนน คา Resolution ของมนกคอ 1 ใน 256
Lecture 6
4
2. Full-scale Output Voltage บอกถงคาแรงดน Output มากทสดทจะไดจาก D/A นนๆ จากตวอยางวงจรขางตน แรงดนอางองปอนผาน R14 จะได Output Voltage ทเปนไปตามสมการ ซงเมอปอนขอมลทเปน ‚1‛ ทกบตใหกบ D/A กจะท าใหไดแรงดนท Output เปน 10V x (255/256) = 9.961 V สงเกตไดวาแรงดน Output สงสดทไดจาก D/A จะนอยกวาคาทระบมา อย 1 LSB เสมอ แตอยางไรกตามเรากยงเรยกมนวาเปน 10 V Output
3. Input Code สามารถมไดหลายชนดเชน Binary, BCD, Offset Binary ซงในการใชงาน ตองสงขอมลไปใหกบ D/A ใหถกตอง
4. Accuracy คอคาความถกตองของแรงดน Output ทไดออกมาจรง เปรยบเทยบกบคาแรงดน Output ทควรจะไดตามทฤษฎ โดยบอกเปนเปอรเซนต ของ Full-scale Output เชน D/A Full-scale Output 10V +/- 0.2% accuracy กจะหมายถงวามนผดพลาดอยในชวง 10.00 x 0.002 = 20 mV โดยทวไปแลว คาความผดพลาดของ D/A กจะมคาไมเกน +/- ½ LSB
5. Linearity หมายถงคาความผดพลาดของ Output Voltage ทวดไดเทยบกบแนวเสนตรงทได เมอแปรคาของขอมลจากนอยไปมาก ซงมคาประมาณ +/- ½ LSB
6. Settling Time คอระยะเวลาท D/A ใชในการท าให Output Voltage มคาเทากบขอมลทปอนเขาไป โดยใหมความผดพลาดได +/- ½ LSB
ตวอยางของการใชงาน D/A เชน ใชในการแปลงขอมล Digital ทไดจากแผน CD ใหออกเปนสญญาณเสยงเพลงตามตองการ และส าหรบการใชงานกบ Microcomputers กเชนการสรางเปนเครองส าหรบท าการทดสอบอปกรณ โดยใชความสมพนธ ระหวาง Voltage ทปอนเขาไป กบแรงดน Output ทไดจากอปกรณ นนๆ นอกจากน กสามารถน าไปใชในการ ควบคมความเรวของ DC Motor, ควบคมความรอนของ Heater หรอความสวางของหลอดไฟ
Digital Output
Digital output โดยปกตแลวคอการสงขอมลออกจาก Port โดยใน MCS-51 คอ Port 0-3 โดยมสงทตองค านงถงเชน เมอดขอมลจาก Datasheet ของ Microcontroller P89V51RD2 พบวา VOL (Low-level output voltage หรอ Logic 0) ท port 0 มคาสงสด 0.45 V และ port อนๆ มคาสงสดประมาณ 1V ขนอยกบปรมาณกระแสทตวอปกรณ output ใช ถาอปกรณใชปรมาณกระแสนอยลง คา Voltage สงสดของ Logic 0 กจะลดลงดวย
Lecture 6
5
VOH (High-level output voltage หรอ Logic 1) ท port 0 มคาต าสด VDD- 0.7 V และ port อนๆ มคาต าสดประมาณ VDD- 1.5 V ขนอยกบปรมาณกระแสทไมโครคอนโทรลเลอรตวจายใหอปกรณ output ถาปรมาณกระแสทไมโครคอนโทรลเลอรตวจายใหอปกรณ output นอยลง คา Voltage ต าสดของ Logic 1 กจะเพมขน แสดงวาในการใช Microcontroller ควมคมอปกรณตางๆ ในแบบทท าใหอปกรณ output ท างานในแบบ digital เพอ ON/OFF อปกรณ ตองเลอกใช อปกรณ output ทตองการระดบของ Voltage ใหเปน Logic 0 หรอ Logic 1 ตามทระบใน Datasheet ดวย นอกจากนน IOL (Low-level output current หรอ Logic 0) ทขา 1.5 1.6 และ 1.7 มคาสงสด 20mA และ port อนๆ มคาสงสดประมาณ 15 mA โดยไมเกน 26 mA ตอPort และไมเกน 71 mA เมอใชทก Port พรอมกน ในไมโครคอนโทรลเลอรบางตว เชน AVR ตองมการก าหนดวา port จะท าหนาทเปน input หรอ output โดยการก าหนดคาใน DDR ล าดบการเขยนโปรแกรมเพอใชงาน port เปน output ควรจะเปนการสงคาออกไปท port กอนเพอใหแนใจวาจะมคาทถกตองสงออกไป แลวจงก าหนดคาใน DDR เพอให port เปน output
Lecture 6
6
Lecture 6
7
รปท xx1 Datasheet ของ Microcontroller P89V51RD2
การควบคมอปกรณใหท างานในแบบ ON/OFF นน สามารถใชรวมกบ Integrated Circuit Bufferในกรณทตองการกระแสทมากขน โดยการใส IC ทท าหนาทเปน Buffer เชน 74LS07 ซงม Output แบบ Open Collector และสามารถรบกระแสไดถง 40 mA หรอ 74LS541ซงสามารถรบกระแสไดถง 24 mA หรอในกรณทตองการกระแสทมากๆ อาจจะใช Transistor Buffer ชวยจายกระแสกได ตวอยาง 74LS541 Octal Buffer
Lecture 6
8
รปทxx2 74LS541 Octal Buffer [Motorolla]
Lecture 6
9
ในกรณทตองการใช Buffer ชวยขบ Output สงทตองดคอ VOH, VOL, IOH, IOL และควรค านงถง IOS ถาจะตองมการใชงานในลกษณะทจะมการ Short circuit ท Output นอกจากนน จะตองดวา Buffer น ตองการ Supply current เทาไรโดยดจาก ICC ในกรณทตองการน าไปใชกบสญญาณคลนหรออปกรณทตองการความเรวสงจะตองด AC Characteristics เพอดวาBuffer นสามารถใชกบสญญาณในชวงความถนนหรอท างานดวยความเรวทตองการไดหรอไม
Digital Output Devices
LEDs LED (Light Emitting Diode) เปนอปกรณแสดงผลทนยมใชมาก มรปรางและสหลายแบบเพอใหเหมาะสมกบการใชงาน สทมในทองตลาดสวนใหญคอ เขยว แดง แตจรงๆ LED มอกหลายสเชน เหลอง น าเงน ขาว รวมทง LED ทเปลงแสงในยาน infrared หรอ ultraviolet
LED
Anode
CathodeLED
+VF
-
R
IF
Va
Vb
รปท xx3 แสดงสญญลกษณของ LED และ วงจรพนฐานในการใชงาน LED มลกษณะเหมอน Diode ทวไปคอม Forward voltage VF และ Forward current IF ถา Voltage ตกครอมระหวาง anode กบ cathode มากกวา VF LED จะเปลงแสงออกมา ตวอยาง การตอ LED สแดงขนาด 5 mm. ท port ของ Microcontroller P89V51RD2
รปท 4
Lecture 6
10
รปท xx4 Datasheet ของ LED สแดง ขนาด 5 mm.
Lecture 6
11
ตวอยาง การตอ LED ทละ 1 ดวง - การตอโดยให LED ท Logic ‘1’
LED
Port x.x
+1.8
-
R
IOH
VOH
รปท 5 VOH = R·IOH+VLED จากตารางใน datasheet ของตวไมโครคอนโทรลเลอร
เมอ IOH=-10A, VOH= VDD-0.3
เมอ IOH=-60A, VOH= VDD-1.5 จากขอมลของ LED ILED=15mA ไมสามารถตอ LED ใหตดทลอจก 1 ในลกษณะนได แตสามารถท าไดเมอใช Buffer ดงรป
LED
Port x.x
+1.8
-
R
IOH
VOH
74LS541IIH
รปท 6 VOH = R·IOH+VLED R =( VOH - VLED)/IOH
Lecture 6
12
จากตารางใน datasheet ของตว Buffer 74LS541
IIH= 20A, IOH=-15 mA, VOH= 3.4 V จากขอมลของ LED ILED=15mA ปรมาณนเทากบ IOH ของ Buffer เพราะฉะนนจงสามารถใช Buffer นขบ LED ตวนได โดย
R =( VOH - VLED)/IOH= (3.4-1.8)/15m =106.66 110
- การตอโดยให LED ท Logic ‘0’
LED
Port x.x
V+
R
+VF=1.8
-
VOL
IOL
รปท 7 Port 1.5, 1.6 และ 1.7 จาก Datasheet ท Test conditions VDD = 4.5V, IOL= 16 mA มคา VOL= 1V และ Maximum IOL= 20 mA แสดงวาสามารถน า LED มาตอใชงานในลกษณะนได V(+)-VOL = VR+VF(LED) 4.5 - 1 = ILED*R + 1.8 จากขอมลของ LED ตองการ ILED=15mA
R= [4.5-1-1.8]/ 15mA
=113.33 113 Port อนๆ จาก Datasheet ท Test conditions VDD = 4.5V, IOL= 3.5 mA มคา VOL= 1 V และ Maximum IOL= 15 mA แสดงวาสามารถน า LED มาตอใชงานในลกษณะนไดแต VOL จะมคามากกวา 1V มาก IOL= 15 mA, VOL>> 1 V(+)-VOL = VR+ VF(LED)
Lecture 6
13
VR = V(+) - VOL -1.8 เมอ (VOL>> 1)
R << VR/ ILED = [V(+) - VOL -1.8]/ ILED LED ตองการ ILED=15mA
R << [4.5-1-1.8]/ 15mA
<<113.33 สวนการตอ LED ใหตดพรอมกน 8 ดวง บน port เดยวกนนน เมอด จากตารางพบวา Maximum IOL per 8-bit port = 26 mA. ดงนน แสดงวาไมสามารถท าไดเพราะแตละตวตองการ 15 mA ถาตดพรอมกน 8 ดวง จะตองใชถง 120 mA และการตอ LED นทก port กไมสามารถท าไดเชนเดยวกนเพราะ Maximum IOL total for outputs = 71 mA. เทานน บางกรณจงตองใชตอวงจรเสรมเพอชวยจายกระแสใหอปกรณ เชน Buffer ทเหมาะสม (74LS541 ทกลาวถงกอนหนานกไมสามารถใชไดเชนกน) หรอวงจรขยายทรานซสเตอร เปนตน
รปท 8 Multiple LEDs in parallel.
รปท 9 Multiple LEDs in series.
Lecture 6
14
รปท 8 แสดงการตอ LEDs หลายตวขนานกนโดยมตวตานทานจ ากดกระแสเพยงตวเดยว การตอแบบน เปนลกษณะนไมดเพราะ LEDs ม forward voltage ตกครอมประมาณ 1–2 V อยางไรกตาม คานขนอยกบอณหภม จงเปนไปไดวา LED ทงหมดอาจจะมอณหภมไมเปลยนไปไมเทากน เนองการความแตกตางทเกดขนระหวางขบวนการผลต ท าใหอาจจะม LED ตวหนงม voltage ตกครอมนอยกวาอกตวหนง และLED ตวนนจะดงกระแสมากกวาอกตวหนง เพราะฉะนนวงจรในรปท 9 ซงเปนการตอแบบอนกรมจะเปนลกษณะทดกวา * อธบายรปท 9 ไวกอนละกน
Opto-isolator
Opto-isolators สามารถน ามาใชเพอแยกสวนวงจรไมโครโปรเซสเซอรออกจากวงจรภายนอก การขบสวน LED ของ opto-isolator สามารถขบดวยวธเดยวกนกบ LED ทวไป
A B รปท xx การใชงาน Opto-Isolator ตวอยาง การใช Opto Isolator เบอร PC817 กบไมโครคอนโทรเลอร
Lecture 6
15
รปท xx6 Datasheet ของ Opto-isolator PC817
จากรป B ทางดาน Input จาก Datasheet ของ PC817 คา VF(D) = 1.2 V, IF(D) = 20mA, VCE(sat) = 0.2 V, IC(MAX) = 50 mA VOH - 0 = VR1+VF(D) VOH = IF(D)R1+VF(D) VR1 = IF(D)R1 หรอ IOHR1แตในกรณของไมโครคอนโทรลเลอร P89V51RD2 ในตวอยางทผานมา IOH มคานอยกวา IF(D) = 20mA ท VF(D) = 1.2 – 1.4V มาก ท าใหไมสามารถตอวงจรใชงานในลกษณะนได ตองมการตอใชงาน Buffer รวมดวย ทางดาน Output สมมตวาตองการใหมกระแสไหลสงสด 12V - 0= IC(MAX)R2+ VCE(sat) 12V - 0= 50mA(R2)+ 0.1V
R2 = 238 Ω
จากรป A จากตารางใน Datasheet IF(D) = 20mA และจะท าให VF(D) = 1.2 – 1.4V แตขณะใชงานตามตวอยางน IF(D)
จะมคาเทากบ IOL จากไมโครคอนโทรลเลอร IOL = 16mA ซงต ากวา IF(D) ในตาราง ท าใหไมสามารถใชคา VF(D) จากตารางได แตเมอดจาก กราฟ Forward Current vs. Forward Voltage จะเหนไดวา เมอ IF(D) = IOL =16mA , VF(D) = 1.25 V 5V - VOL(Micro) = IF(D)R1+VF(D) 5V – 1V=16mA* R1 + 1.25V
Lecture 6
16
R1 = 171.8 Ω สวนทางดาน output สมมตวาตองการใหมกระแสไหลสงสด 12V - 0= IC(MAX)R2+ VCE(sat) 12V - 0= 50mA(R2)+ 0.1V
R2 = 238 Ω
รปท 10 รปท xx LED constant-current drive with microprocessor control. ตวอยาง จากรป ใช Opto Isolator เบอร PC817 ใช D2 เปน zener Diode 3.3 V, D1 เปน LED ในรปท 4และ Q1 เปน transistor 2SC1815Y ซงมคณสมบตดงตารางขางลางน
+5 V +12 V
To Output
Lecture 6
17
จาก Datasheet ของ PC817 คา VCE(sat)(Photo) = 0.2 V, VF(D1) = 1.2 V ท IF(D1) = 20mA 5V- 0 = VR1+ VF(D1) + VCE(Q1) + VRs 5V = IC(Q1)R1+ VF(D1) +VCE(Q1) + VRs
D1 จะท ำงำนเมอ VRs < VD2 เพราะฉะนน VRs ≤ 3.3 V และเมอท างาน VCE(Q1) = VCE(sat)(Q1) = 0.1V , IC(Q1) = IF(D1) = 20mA 5 = 20mA*R1+ 1.2+0.1+3.3
จะไดคา R1 > 20 Ω
และ จาก VRs ≤ 3.3 V
VRs = IC(Q1)*Rs เมอท างาน IC(Q1) = IF(D1) = 20mA
จะไดวำ Rs ≤ 3.3/20mA
Rs ≤165 Ω
สวนทางดาน output 12V-0 = ICE(Photo) R2+VCE(sat) (Photo) 12V = 50mA(R2)+ 0.2V
R2 = 236 Ω
Lecture 6
18
จากรป ตองการให Opto Isolator ท างานเมอไมโครคอนโทรลเลอรม output เปน Logic ‚1‛
ดงนน VOH - 0 = VR3+VD2 VOH - 0 = IOH R3+VD2
เมอ IOH=-30A, VOHของไมโครคอนโทรลเลอร = VDD – 0.7 (VDD คอไฟเลยงของตวไมโครคอนโทรลเลอร) ถา VDD = 5V คา VOH = 3.8V จะสามารถค านวณคา R3 ไดเปน
(5-0.7) – 3.3 = 30A* R3
R3 = 33.33 kΩ โดยทวไป Vo ของ Op-Amp ในกรณทไมมการตอวงจร feedback จะมคาใกลเคยงกบไฟเลยงเมอ Output เปนสถานะ On อยางเตมท จากรป ถา Op-Amp ตออยกบไฟเลยง 5V เชนเดยวกน เมอ IE ของ Q1 ไมมากเกนไปจะท าให Voltage ตกครอม Rs นอยกวา VD2 และท าให Vo ของ Op-Amp มคาใกลเคยง 5V แตเมอ IE ของ Q1 มากเกนไปจะท าให Voltage ตกครอม Rs มากกวา VD2 และ Vout ของ Op-Amp มคาใกลเคยง 0V ท าให Q1 cut-off เพราะฉะนนสามารถค านวณคา R4 ไดดงน
Vo(Op-Amp) - 0=VR4+VBE(sat)(Q1)+VRs
Vo(Op-Amp) = IB(Q1)R4+ VBE(sat)(Q1)+VRs
Q1 จะมคา VBE(sat)(Q1) = 1 V และ hFE หรอ β0 = 120 เนองจาก IC(Q1) ตองถกจ ากดไวใหมคาเทากบ IF(D1) = 20mA
เพราะฉะนน IB(Q1) = IC(Q1) / β0 = 20mA/120 = 0.166 mA จากสมการ Vo(Op-Amp) = IB(Q1)R4+ VBE(sat)(Q1)+VRs
สามารถค านวณหาคา R4 ไดเปน
Vo(Op-Amp) = IB(Q1)R4+ VBE(sat)(Q1)+VRs
5 = 0.166 mA* R4 + 1+ 3.3
R4 > 4.22 kΩ
Lecture 6
19
Driving BJT (Bipolar Junction Transistor)
รปท 11 การขบ BJT
สงทควรระวงในการสรางวงจรขบทรานซสเตอรเพอใชงานในลกษณะของ switch กคอการออกแบบวงจร bias ให transistor อยางเหมาะสมเพอให transistor ท างานในชวง active ถาทรานซสเตอร saturated รอยตอระหวาง base-emitter จะมประจมาสะสมอยท าใหเปนเสมอนตวเกบประจ ดวยเหตน transistor จะ turn off หรอเปลยนสถานะเปน logic ไดชา นอกจากนแลว output ของ transistor ซงอยทขา collector กไมสามารถดงแรงดน output ขนสระดบ high ได จงตองมการใช resistor ดงระดบแรงดน output ใหเปน high เมอ transistor turns off และยงท าให rise time ของ output ซงขนอยกบ transistor switching speed ขนอยกบความเกบประจทขา collector ดวย ความเรวในการ turn-on และ turn-off ของ transistor สามารถท าใหดขนไดโดยการเพม capacitor ครอม resistor ทขาเบส ดงแสดงใน รปท 10 C. ตวอยาง ถา transistor ในรปเปน transistor 2SC1815Y ตออยกบ Microcontroller P89V51RD2 VOH- 0 = VR1+VBE(sat) R1= (VOH-VBE(sat))/IOH
R1 = (3.8-1)/ 30A R1 = 93 kΩ
Lecture 6
20
Driving MOSFET
รปท 12 การขบ MOSFET
สงส าคญในการใชงาน MOSFET ซงสวนใหญใชเพอขบอปกรณทตองการก าลงสง ในลกษณะนคอ output voltage ของ microcontroller จะตองมคามากกวา gate-to-source threshold voltage ของ MOSFET ไมเชนนน MOSFET จะไม on กรณนเปนปญหาส าหรบ Microcontroller ทเปน IC ชนดทใช 3V แตไมคอยเปนปญหาส าหรบ IC ชนดทใช 5V logic ในบางครง สามารถใชความตานทาน pull-up มาตอเพอใหแรงดน output ใกลเคยงกบระดบ supply voltage โดยทวไป MOSFET มคาความจไฟฟาระหวาง gate กบ source (Cgs) และ gate กบ drain (Cgd) สง ยง MOSFET ตวใหญ คาความจไฟฟานกยงมคามาก ถาใช MOSFET น ไปขบ Load ทกอใหเกด voltage spike เชน อปกรณอะไรกตามทประกอบดวยขดลวดเหนยวน า voltage spike นอาจถกสงผานกลบมายงตว Microcontroller ผานตวเกบประจดงกลาวและท าให Microcontroller เสยหายได นอกจากนนเวลาทใชในการ turn-on ของ MOSFET จะขนอยกบความเรวในการ charge ประจของตวเกบประจ Cgs จนถงระดบ gate-to-source threshold voltage ซงหมายความวายงตวเกบประจมคามาก กจะยงท างานชา
Lecture 6
21
นอกจากนน Microcontroller สวนใหญสามารถจาย (source) และรบ (sink) กระแสไดนอยมาก ถาเวลา turn-on ของ MOSFET นานและความถในการ on-off สง จะท าใหมก าลงสญเสยใน MOSFET เนองจากมนตองเปลยนสถานะจาก cutoff ไป saturation อยางตอเนอง นอกจากนนถามการใชตวตานทาน pull-up ดวย ระยะเวลาทใชในการ turn-on time MOSFET กจะถกจ ากดโดย rise-time ของตวตานทาน pull-up กบ Cgs และเนองจาก ขนาดของตวตานทาน pull-up ถกจ ากดโดย ปรมาณกระแสท Microcontroller รบ (sink) ได ความเรวในการ on-off จงถกจ ากดโดยความสามารถในการ sink กระแสของ Microcontroller เชนกน ปญหาเหลานจะหมดไปเมอมการใช IC ส าหรบขบ MOSFET ดงแสดงในรปท 2B ซงเปนตวอยางการใช MAX5048 ในการขบ MOSFET โดยท R1 ไมจ าเปนตองตอกได แต R1 จะเปนตวจ ากด เวลาในการ on-off ของ MOSFET
AC Power Device
เมอตองการใช Microcomputer ในการควบคม AC Power Device กจะท าไดโดยการใช Relay หรอใช Solid-state Relay ไดเชนกน
Solenoid
อปกรณอะไรกแลวแตทมลกษณะเปนขดลวด (solenoid) และใชหลกการ electromagnetic ในการควบคมการท างานทางกล (mechanical function) แบงเปน
Continuous-duty solenoids ออกแบบเพอใหถกกระตนอยตลอดเวลาขณะท างาน
Pulse-duty solenoids ออกแบบเพอใหไมจ าเปนตองมการกระตนตลอดเวลาขณะท างาน Pulse-duty solenoid ออกแบบใหสามารถสรางแรงแมเหลกไดมากโดยไมตองใชกระแสไฟฟาสง
อปกรณประเภทนไดแก 1. Solenoid Valves เปน Valve ควบคมการเปดปดทใชขดลวดเหนยวน า ใหเกดแรงแมเหลก เมอขดลวดไดรบการกระตนแกน จะถกดงเขาไปในขดลวด Solenoid ท าให Valves เปด ใชควบคมการไหล
รปท 13
Lecture 6
22
2. Directional Valves เปน Valve ควบคมการเปดปดทใชขดลวดเหนยวน าใหเกดแรงแมเหลก เมอขดลวดไดรบการกระตนแกนจะถกดงเขาไปในขดลวด Solenoid ใชเพอหยดและควบคมทศทางการไหล
รปท 14
Relay
Relay เปน solenoid ทใชควบคมการท างานของหนาสมผสหรอสวทชทางไฟฟา
เนองจากอปกรณประเภท solenoid ทยกตวอยางดงกลาวน ประกอบดวยขดลวด จงท าใหเกด สงทเรยกวา flyback voltage ขนเมอกระแสทไหลผานขดลวดหายไป (turn off) ซงเปนการท าใหเกดการเปลยนแปลงของสนามแมเหลกในขดลวดในทางตรงกนขามและท าใหเกดเหนยวน า และเกดกระแสไฟฟาไหลยอนกลบ กระแสไฟฟานอาจมขนาดสงมากเพราะเกดขนในชวงเวลาสนๆ ในบางครงอาจท าให transistor หรออปกรณทใชขบ solenoid หรอrelay เสยหายได
วธการปองกนคอตอ Diode ครอมขดลวดดงรปท 15 B เมอ transistor turns off ทนทท voltage เพมขนถงระดบของแหลงจายบวกกบแรงดนตกครอม diode (ประมาณ 0.6 V ส าหรบ silicon diode) diode จะเรมน ากระแสทนท ท าใหกระแสไมไหลผานตววงจรขบ relay แตจะไหลผาน diode แทน
อยาไรกตามกระแสนไมไดหายไปเฉยๆแตจะไหลเขาสแหลงจาย ท าใหแหลงจายจะตองมการออกแบบทดเพอ bypass กระแสนลง ground และ ในบางกรณ relay ในวงจรอาจอยหางจาก power supply ท าใหเกด noise spike บน ground ขน ปญหานอาจแกไดโดยการท าใหเวลาในการ turn off ชาลงเลกนอย รปท 16 แสดงการใช zener diode เพอท าใหการ turn off ของ relay เรวขน เมอ transistor turns off และเกด flyback pulse ตว diode ธรรมดาจะ forward biased และ zener จะ reverse biased ท าใหขา voltage ท collector ของ transistor มขนาดเทากบ voltage ครอม zener บวกกบ voltage ครอม diode
Lecture 6
23
drop และระดบของ positive supply voltage ซงรวมแลวควรจะมคาต ากวาระดบ voltage ท transistor ทนไดไมเชนนน transistor จะเสยหายได ในบางกรณ อาจมการใชอปกรณ surge suppressor ชนดอน เพอตอครอม relay หรอ solenoid เชน Sidactor (ส าหรบ 24 V ขนไปถงระดบฟาผา), transient voltage suppression (TVS) diode หรอ Tranzorbs (สามารถทน voltage ในระดบทต ากวา Sidactor) และ positive-temperature-coefficient resistor (PTC) ซงจ ากดกระแสโดยการเพมความตานทานของตวเองเมอมกระแสไหลผานมากขน. Tranzorb เปนอปกรณคลาย zener แตกระแสสามารถไหลผานไดสองทางโดยทม voltage ตกครอมคงทจงไมจ าเปนตองตอรวมกบ diode
รปท 15 Relay control and clamping
Lecture 6
24
รปท 16 การใช zener diode เขาชวยเพอใหการ turn off ของ relay เรวขน
Pick/Hold ในการขบ relay กระแสทใชตองมขนาดสงพอทจะท าใหเกดสนามแมเหลกทแรงพอทจะดงหนาสมผสของ relay ไวได อยางไรกตาม กระแสในขณะทใชยดหนาสมผส (hold) ไวจะมคานอยกวากระแสทใชดงหนาสมผส (pick) ในตอนแรกประมาณ 50% เพราะฉะนน จงสามรถใชพลงงานจากแหลงจายต าลงในขณะ hold ได และการทใชกระแสนอยลงในการ hold ยงท าใหการปลอยหนาสมผสเกดไดเรวขนอกดวยเพราะมพลงงานสะสมอยในขดลวดนอยกวา รปท 17A แสดงการใช electrolytic capacitor ตอขนานกบตวตานทอนกรมกบขา collector ของ transistor ทใชขบ relay เมอ transistor ท างาน capacitor จะเสมอนกบเปนความตานทานคาต าๆ และกระแสจะไหลผานขดลวดของ relay อยางเตมท ขณะท capacitor ถกชารจ กระแสทไหลผานขดลวดของ relay จะมคาลดลงจนกระทงถงคาๆหนงทถกจ ากดไวโดยตวตานทาน วงจรนมขอเสยคอ ตองใช capacitor ขนาดใหญเนองจากมนตองท าหนาทชวยจายกระแสในขณะ hold และจะมการสญเสยพลงงานทตวตานทาน จงตองใชตวตานทานทสามารถทนพลงงานไดสง รปท 17B แสดงวงจร pick/hold อกแบบหนง วงจรนตองใช 2 outputs จาก microprocessor ในการควบคม Input 2 เปนตวทจะถกขบเปน high เพอการ pick และหลงจาก delay (เปน software) Input 1 จะถกขบเปน high และ Input 2 เปน low วงจรนไมตองใช capacitor แตยงใช resistor และสอง outputs จาก microprocessor รวมกบโปรแกรม รปท 17C แสดงการควบคม relay โดยการปรบกระแสดวยวงจร PWM หลงจากท ON input เปน high เพอทจะดงหนาสมผส relay เขาแลว HOLD จะเปน high หลงจากนนเลกนอยดวยการควบคมโดย
Lecture 6
25
software กระแสทผาน relay .จะมคาเทากบคาเฉลยของรปคลนทเกดขน ถารปคลนม duty cycle 50% กระแสเฉลยผาน relay ขณะ hold จะเปนครงหนงของกระแส pick รปท 17D แสดงวงจรอกแบบหนงซงใชวงจร PWM เชนกน การดง relay เขามาจะตองโปรแกรมใหรปคลนม duty cycle 90% หรอ 100 % เพอการ pick และหลงจากนนจงใช duty cycle เปน 50% หรออนๆเพอลดระดบกระแสลงมา รปท 17E แสดงวงจรซงใช 2 PNP transistors ตอจาก 2 power supplies โดยขณะ Input 1จะเปน high และ transistor Q2 จะ on ท าให V2 ตอเขากบ coil หลงจากนน Input 2 จะเปน high และ Input 1 จะเปน low V2 มคาสงกวา V1 .
รปท 17 Pick and hold สงทตองพจารณามหลายอยางโดยหนงในนนคอ พกดกระแสทหนาสมผส (Contact Max. Switching current) ก าลงไฟฟาสงสดทใชงานได (Contact Max. Switching Power) ซงมทง AC และ DC แตคาพกดแรงดนจะไมเทากน แรงดนไฟฟาสงสดทใชงานไดทคอลย (Coil Max. Allowable Voltage) และอกสวนทส าคญคอ เวลาทใชในการตอบสนองค าสง (Operation time / Release time)
Lecture 6
26
Operate time กคอเวลาทใชตงแตรบค าสงไปจะถงขณะทหนาสมผสของ Relay จะท างาน สวน Release time กคอเวลาทใชตงแตเลกสงสญญาณให Relay ท างานกระทงหนาสมผสเลกท างาน และ Max. Operating Frequency ซงหมายถงความถสงสดในการท างาน เปด ปด ของหนาสมผส
รปxxx7 Datasheet ของ PCB Relay 12V G2RL Omron Ex จากรป 17D PCB Relay 12V G2RL Omron ท +V = 12V วธเลอกใช Transistor จาก Datasheet ของ Relay แสดงใหเหนวา ถาใช Rated Voltage 12VDC แลว Rated Current จะเทากบ 33.3 mA ท าใหสามารถทราบไดวา ทรานซสเตอร Q1 ในรปตองมคา IC(SAT) ≤ 33.3 mA ดวย
เนองจาก Coil resistance จะมคา 360 Ω ท าใหจะสามารถ
Relay G2RL Omron
Q1
R1
D1
MCS-51 port
Lecture 6
27
ทราบไดวา VCE(SAT) ของทรานซสเตอร Q1 นตองมคา VCE(SAT) = IC(SAT)x Coil resistance = 12-(33.3mA x 360)= 0.0012 V ดงนนตองเลอกใชทรานซสเตอร Q1 ทม VCE(SAT) ≤ 0.0012V จากนนจะสามารถค านวณคาความตานทานไดโดย
IB = IC/ β0 หรอ hFE โดยแทนคา IC = IC(SAT)
และ Voh = IBER1 - VBE R1 = (Voh - VBE)/IBE วธเลอกใช Diode (D1) เมอทราบวากระแสทไหลผาน coil จะมคาเทากบ Rated Current ซงมคา 33.3 mA แลว ท าใหทราบวา กระแสทเกดจาก Back EMF เมอ coil switched off กมคา 33.3 mA เชนเดยวกน และขณะ Relay ท างานจะมแรงดนตกครอม coil กบ Diode เทากนคอ 11.988 V ดงนนจงตองเลอก Diode ททนกระแสไหลผานได 33.3 mA และ Diode ตองมคา Breakdown voltage เกน 11.988 V โดยอาจจะเผอไวเปน 2 เทาคอ 23.976 V Analogue switches (Solid-state Relay) Analogue switches หรอทรจกกนชอ Solid-state Relay มความเรวสงกวา ขนาดเลกกวา Relay ไมมการ bounce ของหนาสมผส และใชกระแสต ากวา โครงสรางภายใน Analogue switches ประกอบดวย N-channel MOSFET ตอขนานกบ P-channel MOSFET วงจรควบคมจะท าการ on หรอ off MOSFETs ทงสองพรอมๆกน และกระแสจะไหลผานไดทงสองทาง Analogue switches ม 3 ชนดคอ
BJT output
Power MOSFET output
Thyristor or Triac output ถงแม Analogue switches จะเปนทรจกกนในชอ solid-state relay แตจรงๆแลวมความแตกตางกบ relay คอหนาสมผสของ relay จะถกแยกจาก coil อยางสมบรณ จงสามารถน าไปใชกบความตางศกยสงๆตอกบดานหนาสมผสไดโดยทวงจรไมโครโปรเซสเซอรซงตอกบดาน coil กบไมเปนอนตรายใดๆ จากความ
Lecture 6
28
ตางศกยสง สวน analog switch นนทงสองดานของสวทชไมไดแยกออกจากกนอยางแทจรงแตอยบนสารกงตวน าชนเดยวกน analog switch ตองการ power supplies ส าหรบการ switch transistors ดงนน voltage บนขา input และ output จะไมสามารถเกน V+ และ V- Analog switches บางชนดมการออกแบบไวเพอปองกนความผดพลาดทจะเกดขนโดยยอมให voltage ทขา input และ output สามารถเกน supply voltage ได แตจะไมท างานเมอ voltage บนขา input และ output เกน V+ และ V- อยด
รปท 18 วงจรใชงาน Analogue Switch เพอแยกวงจร input กบ output
DC Motor
Brushed DC motor
Brushless DC motor
Brushed DC motor แบงตามลกษณะการวางต าแหนงของขดลวดกบ แกนของแมเหลก
1. แบบ Shunt Motor เปนแบบการวางต าแหนงของขดลวดขนานกบแกนแมเหลก เปนแบบทสามารถปรบเสนแรงไดอยางอสระ นยมใชกบระบบควบคมการเคลอนทตองการแรงบตสง
2. แบบ Series Motor เปนแบบการวางต าแหนงของขดลวดอนกรมกบแกนแมเหลกเปนแบบเสนแรงแมเหลกเปนสดสวนกบกระแส เหมาะน าไปใชในสภาวะเฉพาะคอ เมอตองการแรงบตสงทความเรวต า
Lecture 6
29
3. Compound
DC motor speed and direction control PWM (Pulse Width Modulation) ทความถ 20 kHz หรอต ากวา เปนความถ ทมนษยสามารถไดยนเสยงมอเตอรท างานได ถาความถสงเกนไป คา Impedance ของขดลวดในมอเตอรจะมคาสงท าใหเกดความรอนและการสญเสยพลงงาน
Lecture 6
30
IC ขบ DC motor เชน L293D
Supply-Voltage Range: 4.5 V to 36 V
Output Current 600 mA Per Channel
Peak Output Current 1.2 A Per Channel
Output Clamp Diodes for Inductive
Transient Suppression (L293D)
Brushless DC motor
Stepper Motor เปนอปกรณทเปน Output Device อยางหนง ซงเปลยนสญญาณทางไฟฟา เปนการเคลอนททางกลได และสามารถควบคมการหมนของมนได อยางละเอยด มหลายประเภท เชน
1. Permanent-magnet: a rotor with
alternating north and south poles
2. Variable-reluctance: a soft iron rotor with teeth and a wounded stator. 3. Hybrid: adds teeth to a permanent Magnet motor
Lecture 6
31
, resulting in better coupling of the magnetic field into the rotor and more precise movement.
โครงสรางเบองตน และวงจรทจะใชขบ Stepper Motor แสดงดงรป มม step มอเตอรจะหมนไปทละหนง step ถามอเตอร 4 เฟส มขดลวดชดเดยว มอเตอร จะมมม step เทากบ 90 องศา ถามขดลวดหลายชดกจะยงมมม step นอยลง โดยจ านวน stepตอรอบคอ 4 คณจ านวนชดขดลวด
Lecture 6
32
ในการขบ Stepper Motor ดวยวงจรขางตนนน ตองเขยนโปรแกรมของ Microcomputer ใหท าการสงสญญาณ ออกไปขบใหขดลวดของ Motor ท างานตามล าดบ การขบ จะสามารถท าแบบทละขด (One Phase) หรอพรอมๆ กนสองขด (Two phases) กได ซงจะท าไดไดแรงบดทมากขน นอกจากนจะมการขบในแบบของ Half step ซงจะไดมมของการหมนทละเอยดขน ล าดบของการขบใหขดลวดตางๆ ท างานแสดงในตาราง
การขบ Stepping motor 1. การขบแบบ 1 เฟส
Step Phase 1 Phase 2 Phase 3 Phase 4
1 ON OFF OFF OFF
2 OFF ON OFF OFF
3 OFF OFF ON OFF
4 OFF OFF OFF ON
วงจรขบ Stepping motor อยางงาย
Lecture 6
33
2. การขบแบบ 2 เฟส
Step Phase 1 Phase 2 Phase 3 Phase 4
1 ON ON OFF OFF
2 OFF ON ON OFF
3 OFF OFF ON ON
4 ON OFF OFF ON
3. การขบแบบ ครงสเตป
Step Phase 1 Phase 2 Phase 3 Phase 4
1 ON OFF OFF OFF
2 ON ON OFF OFF
3 OFF ON OFF OFF
4 OFF ON ON OFF
4. การขบแบบ Microstepping ขอจ ากดของ Stepper Motor คอมนไมสามารถหมนไดเรวมากนก ดงนน ในการทจะสงสญญาณไปขบใหหมนแตละ Step นน จะตองมการหนวงเวลาเอาไวดวย
AC Control
โดยทวไป การควบคมเปดปดไฟ AC ควรจะมการตรวจสอบ zero crossing ซงเปนจดทสญญาณไฟ AC ผานระดบศนย (รปท 19) ถาการเปดปดไฟ AC เกดขนในขณะท voltage มคาไมเทากบศนย voltage ทโหลดจะมระดบสงขนทนทแทนทจะคอยๆขนจนเปนรป sine wave ปรากฏการณนจะท าใหโหลดเสยหายและท าใหเกด EMI ตว solid-state relays ทม zero crossing ดวยมขายทวไปโดยทวงจรสวนนมกจะประกอบดวย SCR หรอ triac ในบางกรณ zero crossing สามารถท าโดยใช software รปท 19 C แสดงวธการใช opto-isolator และตวตานทานจ ากดกระแส แตละครงท AC voltage ผานระดบศนย opto-isolator จะ turns off และท าใหเกด
Lecture 6
34
สญญาณ interrupt สงไปยง microprocessor แลวการเปดสวทชเพอสงไฟ AC ไปยง loads จะถกควบคมดวย ISR
รปท 19 AC control
Heaters Heaters สวนใหญมคา inductance ทนอยมาก ดงนนจงไมจ าเปนตองม clamping diodes และ heaters จะถกควบคมดวย feedback loop โดยใช temperature sensor วดอณหภมดงรป
Lecture 6
35
รปท 20
Coolers
รปท 21 Peltier cooler และ waterblockทถกออกแบบมาใหใชกบ Peltierโดยเฉพาะ
Solid-state (Peltier) cooler ประกอบดวยรอยตอ PN หลายๆอน สวนใหญสรางจาก bismuth telluride ซงจะดงความรอนจากดานหนงและปลอยออกไปอกดานหนง การควบคม Peltier cooler คลายๆกบการควบคม heater การปรบอณหภมสามารถท าไดโดยควบคมการจายไฟดวยวงจร pulse width modulation แตการท าเชนนนควรใชความถของ PWM สงกวาความถต าสดทแนะน าเพอลดผลของ thermal stress ซงโดยทวไปมคาประมาณ 2 kHz. Fans การใช Cooling fans ควรจะมการควบคมความเรวพดลมเพอจ ากด noise ทจะเกดขนในระบบ การวดความเรวพดลมอาจใช optical sensor กบ disc encoder
Lecture 6
36
Displays 7-Segment LED
7-Segment LED คอการน าเอา LED 7 ดวงมาเรยกกน ดงรป ซงมนจะใชในการแสดงตวเลข ‘0’ – ‘9’ หรอใชแสดง ตวเลข ‘0’ – ‘F’ กได การแสดงผลจะออกมาจากการตดสวางของ LED คอ
รปท 22
7-Segment LED แตละสวนม ชอของมนดงทแสดงในรป ในการตอใชงานในเพอเปนการแสดงผลของ Microcomputer นยมตอ Segment ‘a’ เขากบ บต ‘0’ ของขอมลทสงเปน Output ออกมา และ Segment ‘b’ กจะตอกบบตท ‘1’ ตามล าดบ ดงนน ถาสงขอมล ‘0 0 1 1 1 1 1 1’ (3FH) ออกไปท Output Port ทตออยกบ 7-Segment จะม Segment ท ‘a’, ‘b’, ‘c’, ‘d’, ‘e’ และ ‘f’ ทตดสวาง และมองเหนไดเปนเลข ‘0’
รปท 23 ตาราง 1 แสดงผล Common
cathode
Common anode
แสดงผล Common cathode
Common anode
แสดงผล Common cathode
Common anode
Lecture 6
37
0 3F C0 C 39 C6 b 7C 83
1 06 F9 E 79 86 c 58 A7
2 5B A4 F 71 8E d 5E A1
3 4F B0 G 70 82 h 74 8B
4 66 99 H 76 89 n 54 AB
5 6D 92 I 06 F9 o 5C A3
6 7D 82 J 1E E1 r 50 AF
7 07 F8 L 38 C7 u 1C E3
8 7F 80 O 3F C0 - 40 BF
9 67 98 P 73 8C ? 53 AC
A 77 88 U 3E C1 Blank 00 FF
B 7F 80 Y 66 99
BCD Output to 7-Segments
เราสามารถทจะตอ LED Segment ตางๆ เขาโดยตรงท Output Port Bit กได ในกรณน Output Port 8 Bit กจะตอ 7-Segment ได 1 ตว หรอจะตอโดยใช IC ถอดรหส BCD ในกรณน ขอมลทสงออกมาจะเปน BCD ซงใชเพยง 4 Bit เทานน
การแสดงผลท 7-Segments จะท าไดโดยการสงขอมลไปออกท Output port ทมนตออย หลกการน จะเรยกไดวาเปน Static Display
เราจะสามารถตอ 7-Segment เพมไดตามตองการ โดยการใช Output Port ทมากขน แตอยางไรกด ในการแสดงผลของ 7-Segment จ านวนมากแลว จงใชหลกการของ Dynamic
Display แทน รปท 24
Lecture 6
38
Dynamic Display
หลกการของ Dynamic Display นนอาศยคณสมบตของ ตามนษย ทไมสามารถมองเหนการกระพรบ หรอการเปลยนแปลงทเกดขนเรวๆ ได ดงนน 7-Segment ทงหมดจงไมจ าเปนตองตดพรอมกน ซงท าไดโดยใชสญญาณ (ขอมล) อกสวนหนงเปนตว
ควบคมวาจะให 7-Segment ตวใดทแสดงผล (หลกการน คลายกบการ Scan key) จากรปเปนตวอยางของวงจรทใชแสดงผล 7-Segments จ านวน 7 หลก โดย Microcomputer จะสงขอมลของตวเลขทตองการแสดง ออกทาง Output port B และสงสญญาณเพอเลอก หลกทจะแสดงผลออกท Output port A
โปรแกรมส าหรบการแสดงผล นจะเขยนเปน Pseudo-code ไดคอ Port B Port A
รปท 25 1. ไมเลอกให 7-Segments ตวใดตด 2. สงคาตวเลข ทตองการแสดงผล ออกไปท Output port B 3. เลอก หลก ของ 7-Segments ทตองการใหตด 4. หนวงเวลา 5. อานขอมลทจะแสดงผลของหลกตอไป แลวกลบไปทขอ 1 ท าจนครบทง 7 หลก 6. กลบไปเรมตนใหม ทขอ 1
Lecture 6
39
ขบวนการท างานแสดงผล ตวเลขทงหมดน จะตองเกดขน ภายในเวลา ท นอยกวา 20 mS ไมเชนนน แลวเราจะมองเหนวาตวเลขนนกระพรบ นอกจากน หลกการของ Dynamic Display ยงจะใชไดกบการแสดงผลใดๆ กไดทคนหรอระบบ มการตอบสนองไดชา เชนการตอใชกบ LED เพอแสดงผลในแบบของ Matrix กจะท าไดโดยหลกการของ Dynamic Display เชนกน
รปท 26 LCDs LCD มขอดคอสามารถใชแสดงผลไดหลายรปแบบ ทงแบบตวอกษร ตวเลข และ กราฟฟก ราคาไมแพง และการใชงานไมยงยากเนองจากถกผลตขนโดยมอปกรณควบคมการแสดงผลอยภายในท าใหไมตองเขยนโปรแกรมทซบซอน และเสยเวลาในการแสดงผลทละหลก อปกรณแสดงผลแบบ LCD บางครงจะเรยกวา LCD Module เนองจากภายในประกอบดวยหลายสวน ไดแก Register เกบค าสง (Instruction Register: IR) ท าหนาทรบค าสงควบคมการแสดงผล, Register เกบขอมล (Data Register: DR) RS (Register Select) ใน LCD Module ม Register เกบค าสง และ Register เกบขอมล RS เปน ‚0‛ แสดงวาเปนค าสง, ‚1‛ เปนขอมล R/W เปน ‚0‛ write, ‚1‛ read E (Enable) ท าให LCD ท างาน D0-D7 ใชรบสงขอมล รปท 27 ตารางท 1 ค าสงควบคมการแสดงผล LCD
Instruction RS R/W Command Code (binary)
Description
Lecture 6
40
7 6 5 4 3 2 1 0
1 Clear Display 0 0 0 0 0 0 0 0 0 1 Clear entire display and move cursor home (address 0)
2 Home Display 0 0 0 0 0 0 0 0 1 0 Move cursor home and return display to home position.
3 Entry Mode Set 0 0 0 0 0 0 0 1 M S Sets cursor direction (M: 0=left, 1=right) and display scrolling (S: 0=no scroll, 1=scroll)
4 Display/Cursor 0 0 0 0 0 0 1 D C B Sets display on/off (D), cursor on/off (C) and blinking cursor (B). (0=off, 1=on)
5 Cursor or Display Shift
0 0 0 0 0 1 C M 0 0 Cursor or Display Shift (C: 0=cursor, 1=display) left or right (M: 0=left, 1=right).
6 Function Set 0 0 0 0 1 D N F 0 0 Data bus size (D: 0=4-bits, 1=8-bits), lines No.(N: 0=1-line, 1=2-lines) and font size (F: 0=5x7, 1=5x10)
7 Set CG-RAM Address
0 0 0 1 CGRAM
ADDRESS
Move pointer to Character Generator RAM location specified by address (ADDRESS)
8 Set DD-RAM Address
0 0 1 DDRAM
ADDRESS
Move cursor to Display Data RAM location specified by address (ADDRESS)
9 Busy, ADD.Read 0 1 BF ADDRESS Read Busy flag, And Address Read
10 CGRAM,DDRAM WR
1 0 WRITE DATA Write Data to DDRAM or CGRAM
11 CGRAM,DDRAM RD
1 1 READ DATA Read Data to DDRAM or CGRAM
รายละเอยดค าสง 1). เคลยรการแสดงผล (Clear Display)
7 6 5 4 3 2 1 0 bit0=1 เคลยรการแสดงผล
Lecture 6
41
0 0 0 0 0 0 0 1
เคอรเซอรกลบไปอยทมมซายมอสด
RS=0, R/W=0
2).Home Display
7 6 5 4 3 2 1 0
0 0 0 0 0 0 1 -
bit1=1 เคอรเซอรกลบไปอยทมมซายมอสด
ขอมลไมมการเปลยนแปลง
RS=0, R/W=0
3).โหมดการปอนขอมล (Entry Mode Set)
7 6 5 4 3 2 1 0
0 0 0 0 0 1 M S
bit2=1
M (Address Increase/Decrease) , M=0 ลดต าแหนงแอดเดรส, M=1 เพมต าแหนงแอดเดรส
RS=0, R/W=0 S (Shift bit) การเลอนขอมล,S=0 เคอรเซอรจะเลอนไปทางขวา ,S=1เคอรเซอรจะอยกบท
4).การควบคมการแสดงผล (Display/Cursor)
7 6 5 4 3 2 1 0
0 0 0 0 1 D C B
bit3=1
D (Display ON/OFF) D=0 OFF, D=1 ON,
RS=0, R/W=0 C (Cursor ON/OFF) C=0 OFF, C=1 ON,
B (Blinking Cursor ON/OFF ) B=0 OFF, B=1 ON,
5).การควบคมการเลอนเคอรเซอร (Cursor or Display Shift)
7 6 5 4 3 2 1 0
0 0 0 1 C M - -
bit4=1
C (Cursor or Display Shift) C=0 shift cursor ,C=1 shift display
RS=0, R/W=0 M (Move left/right) M=0 left, M=1 right,
6).ฟงกชนเซท (Function Set)
7 6 5 4 3 2 1 0
0 0 1 D N F - -
bit5=1
D (Data bus size ) D= 0 is 4-bits,D= 1 is 8-bits,
RS=0, R/W=0 N (lines No.)N= 0 is 1-line,N= 1 is 2-lines
F ( font size) F= 0 is 5x7,F= 1 is 5x10
7).เซทต าแหนงใน CG-RAM (Set CG-RAM Address)
Lecture 6
42
7 6 5 4 3 2 1 0
0 1 A5 A4 A3 A2 A1 A0
bit6=1
หนวยความจ าชวคราว เกบขอมลตวอกษร CG-RAM (Character Generator RAM)
RS=0, R/W=0 A0-A5 เปนต าแหนงแอดเดรสใน CG-RAM
8).เซทต าแหนงใน DD-RAM (Set DD-RAM Address)
7 6 5 4 3 2 1 0
1 A6 A5 A4 A3 A2 A1 A0
bit7=1
หนวยความจ าชวคราว เกบขอมลการแสดง DD-RAM (Display Data RAM)
RS=0, R/W=0 A0-A6 เปนต าแหนงแอดเดรสใน DD-RAM ซงจะถกคดลอกไปยง Address Counter (AC)
DD-RAM คอหนวยความจ าทเกบขอมลการแสดงผล หากเขยนรหส ASCII ลงในหนวยความจ านกจะปรากฏทจอ LCD ทนท ต าแหนง Address ของ LCD แตละแบบ 1 x 16 Display
Line 1 0 1 2 3 4 5 6 7 40 41 42 43 44 45 46 47
2 x 16 Display
Line 1 0 1 2 3 4 5 6 7 8 9 A B C D E F
Line 2 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
4 x 20 Display
Line 1 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13
Line 2 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53
Line 3 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27
Line 4 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D
เชนกรณใชงาน LCD โมดลแบบ 2x16 บรรทดท 2 ใน columnแรกจะมคา address = 64(dec) หรอ 40H ค าสงทใชในการเขยนขอมลออกไปยงโมดล LCD บรรทดตางๆคอ การน า 10000000 หรอ 80H มา OR กบ address ของ DDRAM เชน 80H OR 40H =0C0H จะเปนชดค าสงทใชเขยนไปยงโมดล LCD บรรทดท 2 9). การอาน BUSY Flag and Address Counter (BF and AC)
7 6 5 4 3 2 1 0 BF=bit7เปนตวบอกสถานะของ
Lecture 6
43
BF A6 A5 A4 A3 A2 A1 A0
LCD
R/W=1ก าหนดใหเปน Read mode
RS=0, R/W=1 BF=0 วาง, BF=1 ไมวาง
A0-A6 = Address Counter (AC)
10). การเขยนขอมลใน CG or DD-RAM
7 6 5 4 3 2 1 0
D7 D6 D5 D4 D3 D2 D1 D0
RS=1 ก าหนดใหเปนขอมล
R/W=0 ก าหนดใหเปน Write mode
D0-D7 = ขอมลทตองการเขยน
RS=1, R/W=0
หากตองการเขยนขอมลใน CG-RAM ใหเซทต าแหนง CG-RAM ในขอท 7 กอน
หากตองการเขยนขอมลใน DD-RAM ใหเซทต าแหนง DD-RAM ในขอท 8 กอน
11). การอานขอมลจาก CG or DD-RAM
7 6 5 4 3 2 1 0
D7 D6 D5 D4 D3 D2 D1 D0
RS=1 ก าหนดใหเปนขอมล
R/W=1 ก าหนดใหเปน Read mode
D0-D7 =ขอมลทอานได
RS=1, R/W=0
หากตองการอานขอมลใน CG-RAM ใหเซทต าแหนง CG-RAM ในขอ 7 กอน
หากตองการอานขอมลใน DD-RAM ใหเซทต าแหนง DD-RAM ในขอ 8 กอน
การเขยนโปรแกรมเพอควบคม LCD
รปท 28
ขนตอนการเขยนโปรแกรมเพอใชงาน LCD สามารถอธบายไดดงน 1) หากเปนการเรมจายไฟทระดบแรงดนถง 4.5 V ให LCD ใหรออยางนอย 15ms เพอให LCD
Lecture 6
44
Reset ตวเอง (Internal Reset) 2) Set คาเรมตนตางๆเพอให LCD เรมท างานตามทเราตองการ โดย
ก าหนดขาควบคม ใหขา E = 1 ใหขา RS= 0 ก าหนดเปนค าสง ใหขา R/W = 0 เขยนค าสง
สงขอมลค าสง 4 ครง
2.1) Function Set Instruction = 00111000B
DL=1 8bit N=1 2บรรทด F=0 5x7 dot
2.2) Display ON/OFF Instruction = 00001110B
D=1 Display ON C=1 Cursor ON B=0 Blink OFF
2.3) Entry Mode Set Instruction = 00000110B
M=1 เพมคา DDRAM address ขน S=0 No scroll
2.4) Display clear Instruction = 00000001B
3) Set DDRAM Address เพอเลอกต าแหนงในการ Display โดย ก าหนดขาควบคม
ใหขา E = 1 ใหขา RS= 0 ก าหนดเปนค าสง ใหขา R/W = 0 เขยนค าสง เชน 10000000B = ต าแหนงแรก แถวท1 (10000000 OR 00000000)
11000000B = ต าแหนงแรก แถวท 2 (10000000 OR 01000000) 40H = 01000000B
4) เขยนตวอกษรทตองการแสดงไปยง DDRAM ก าหนดขาควบคม
Lecture 6
45
ใหขา E = 1 ใหขา RS= 1 ก าหนดเปนขอมล ใหขา R/W = 0 เขยนขอมล
หมายเหต หลงจากการปฏบตการในแตละขนตอนตองมการตรวจสอบวา LCD Module พรอมทจะรบค าสงตอไปหรอไมโดยการตรวจสอบ Busy Flag (Bit 7) ใน Instruction Register โดย
ก าหนดขาควบคม ใหขา E = 1 ใหขา RS= 0 ก าหนดเปนค าสง ใหขา R/W = 1 อานค าสง
รปท 29 ตวอยางการตอ LCD ต าแหนง address 0400H (xxxxx100xxxxxxxx) เขยนค าสง 0500H (xxxxx101xxxxxxxx) อานค าสง 0600H (xxxxx110xxxxxxxx) เขยนขอมล 0700H (xxxxx111xxxxxxxx) อานขอมล
OLED (Organic Light Emitting Devices)
เปนอปกรณทมหลกการงายๆ กลาวคอ เมอน าวสดทมสมบตเปนสารเปลงแสง (Emissive Materials) ซงเปนโมเลกลอนทรย (Organic Materials) มาวางไวระหวางขวไฟฟาบวกและลบ วสดเปลงแสงน มสมบตเปนสารกงตวน าทมชนของพลงงาน 2 ชนด ไดแก ชนพลงงานทมอเลกตรอนบรรจอย กบ ชนพลงงานทวางเปลาทไมมอเลกตรอนบรรจ ประจบวกหรอโฮล (Hole) สามารถวงอยบนชนพลงงานทมอเลกตรอนบรรจอยนได ในขณะทประจลบหรออเลกตรอน (electron) สามารถวงไดบนชนพลงงานทวางเปลาน ชนพลงงาน 2 ชนดนมลกษณะทไมเชอมตอกน โดยชนพลงงานทวางเปลาจะอยสงกวาชนพลงงานทมอเลกตรอนบรรจ อย ชนพลงงานบนสดทมอเลกตรอนบรรจอย จะถกแยกออกจากชนพลงงานวางเปลาดวยชองวางของพลงงาน (Energy Gap) ซงมขนาดทพอเหมาะ เมอผานสนามไฟฟาเขาไปทขวไฟฟาทงสอง อเลกตรอน
Lecture 6
46
จากขวลบจะวงไปทชนพลงงานทวางเปลา ในขณะทโฮลจะวงจากขวบวกเขาไปยงชนพลงงานทมอเลกตรอนบรรจอย จากนนประจลบจะวงลงมาในขณะทประจบวกจะวงขนไปพบกน แลวรวมตวกนเกดเปนอนภาคโฟตอนหรอแสงนนเอง โดยพลงงานของอนภาคโฟตอนนนจะมคาเทากบ Energy Gap ซงจะเปนตวก าหนดสของแสงทเปลงออกมา เชน สแดง ซงมพลงงานต ากวา สฟา เปนตน สของแสงทเปลงออกมาขนอยกบ Energy Gap ซงกจะขนอยกบสมบตของวสดเปลงแสงอกท
168x128 pixels OLED
รปท 30
Digital Potentiometers (a variable resistance)
รปท 31 เปนตวอยาง Digital Potentiometers เบอร AD5220 ซงท างานคลายกบ potentiometer สามขา สญญาณ clock จะท าให ขากลางของ potentiometer เปลยนต าแหนงและ คาความตานทานทางดาน output เพมขนหรอลดลง โดยการเพมหรอลดก าหนดโดยขา U/D ถา U/D เปน high จะท าใหขากลางเขาใกล A ท าใหคาความตานทานดาน Aลดลงและดาน B เพมขน หรอถา U/D เปน low จะเปนตรงกนขาม
Lecture 6
47
แต AD5220 resistor terminals (A, B, and W) จะไมสามารถม voltage ระดบสงกวา supply voltage หรอต ากวา ground
รปท 31
แบบฝกหด
1. จากรป แสดงการค านวณหาคา R ดงเมอมการใช 74LS244 line driver ตอเขากบขา port ของ Microcontroller เพอชวยจายกระแส (ท าเหมอนตวอยางในบทเรยน)
LED
74LS244 pin
+1.8
-
R
IOH
VOH
LED
74LS244 pin
V+
R
+1.8
-
VOL
IOL
Lecture 6
48
2. จากรปท 8 ถา transistor ทใชงานเปน 2sc1815 กระแสไหลผาน Load (IC) = 20 mA และ V+ = 5 V จงค านวณหาคา R1 ทเหมาะสม