You are on page 1of 43

Bo co n 1

Trang 1

LI NI U
Cng vi s tin b ca khoa hc cng ngh, cc thit b iu khin t ng ngy
cng pht trin mnh m v gp phn khng nh trong vic p ng nhu cu, li ch ca con
ngi.
T tm quan trng trong ng dng thc t ca cc thit b iu khin t ng v da
vo kin thc hc cng nh t tm hiu thm, nhm em chn ti: GIM ST V
IU KHIN THIT B T NG QUA USB, qua tm hiu k hn v nguyn
l hot ng ca cc thit b iu khin.
Trong qu trnh thc hin ti, nhm em c Thy L Minh hng dn tn tnh.
chnh l iu kin thun li nhm em hon thnh ti thnh cng tt p.
Mc d chng em c nhiu c gng nhng khng th trnh khi nhng thiu st,
rt mong c s gp ng h ca thy c b mn in t v cc bn trong ngnh ti
ln sau nhm em s hon thin tt hn.
Chng em xin chn thnh cm n !

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 2

MC LC
LI NI U ...................................................................................................................................... 1
MC LC ............................................................................................................................................ 2
Danh Mc Hnh .................................................................................................................................... 3
Gii thiu ....................................................................................................................................... 4

I.
1.

L do chn ti ................................................................................................................................... 4

2.

i tng nghin cu ............................................................................................................................. 4

3.

Mc ch ti ....................................................................................................................................... 4

4.

Gii hn ti ........................................................................................................................................ 4

5.

B cc lun vn ...................................................................................................................................... 4

II. C s l thuyt ............................................................................................................................... 5


1.

Gii thiu PIC 18F4550 ......................................................................................................................... 5

2.

Cm bin nhit DS18B20 ................................................................................................................10

3.

Transistor C1815 ..................................................................................................................................12

4.

Gii Thiu LCD 16x2 ..........................................................................................................................13

III.

Thit k phn cng .................................................................................................................. 16

a.

S khi ............................................................................................................................................16

b.

Chc nng tng khi ............................................................................................................................16

c.

Thit k tnh ton mch nguyn l .......................................................................................................17


Thit k phn mm .................................................................................................................. 19

IV.
a.

Trn PC ................................................................................................................................................19

b.

Trn vi iu khin.................................................................................................................................21
Kt lun ....................................................................................................................................... 23

V.
a.

Kt qu t c ..................................................................................................................................23

b.

Hn ch .................................................................................................................................................23

c.

Hng pht trin...................................................................................................................................23

PH LC ........................................................................................................................................... 24
Code .....................................................................................................................................................24

1.

1.1 Code phn cng .................................................................................................................................24


1.2 Code giao din ...................................................................................................................................26
2.

Mch Layout.........................................................................................................................................28

3.

Hng dn s dng Mikro C vit Code vi iu khin .....................................................................28

4.

Cu hnh cc thanh ghi trong PIC.........................................................................................................32


a)

Thanh ghi ADCON1: .......................................................................................................................33

b)

Thanh ghi CMCON ..........................................................................................................................34

c)

Cc thanh ghi quy nh ngt .............................................................................................................35

5.

Hng dn s dng ..............................................................................................................................43

6.

Ti liu tham kho ................................................................................................................................43

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 3

Danh Mc Hnh
Hnh 1: S chn PIC 18F4550 ...................................................................................................................... 5
Hnh 2: Chc nng chn PIC 18F4550 ............................................................................................................. 6
Hnh 3: c im ca PIC 18F4550.................................................................................................................. 7
Hnh 4: S khi bn trong PIC 18F4550 ...................................................................................................... 8
Hnh 5: Cm bin DS18B20 .............................................................................................................................10
Hnh 6: Transistor C1815 ................................................................................................................................12
Hnh 7: Thng tin transistor C1815 .................................................................................................................12
Hnh 8: S chn LCD 16x2 .........................................................................................................................13
Hnh 9: Chc nng chn LCD 16x2 .................................................................................................................14
Hnh 10: V tr con tr trn LCD 16x2 .............................................................................................................14
Hnh 11: Mi lin h gia DDRAM v v tr hin th .......................................................................................15
Hnh 12: S khi chng trnh ....................................................................................................................16
Hnh 13: Khi cm bin nh sng ....................................................................................................................17
Hnh 14: Khi cm bin nhit .....................................................................................................................17
Hnh 15: Mch Nguyn L ...............................................................................................................................18
Hnh 16: Lu gii thut chng trnh PC ..................................................................................................20
Hnh 17: Giao din ...........................................................................................................................................20
Hnh 18: Lu gii thut cho PIC.................................................................................................................22
Hnh 19: Mch layout.......................................................................................................................................28

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

I.

Trang 4

Gii thiu

1. L do chn ti
Thit b cm bin nh sng, o nhit mi trng l mt phn khng th thiu
trong vic pht trin nhng thit b iu khin t ng nhm phc v nhu cu, li ch
ca con ngi. y l l do nhm em la chn ti ny.
2. i tng nghin cu
i tng nghin cu chnh ca ti l b giao tip USB ca PIC t pht trin
thm cc chc nng khc nh cm bin nh sng, nhit v iu khin thit b ngoi
vi.
3. Mc ch ti
ti ny nhm mc ch thit k mt thit b c kh nng t ng iu khin n,
qut bt, tt da vo s thay i ca cng nh sng v nhit mi trng xung
quanh, c kh nng giao tip vi my tnh gip ngi dng c th qun l gim st v
iu khin t xa.
4. Gii hn ti
ti ny ch cho php bt, tt n qut khi c s thay i cng nh sng v
nhit t n mt ngng nh sn m khng th iu khin c cc mc cng
sng ca n v tc quay ca qut.
5. B cc lun vn
I. Gii thiu
II. C s l thuyt
III. Thit k phn cng
IV. Thit k phn mm
V. Kt lun
Ph lc v ti liu tham kho

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 5

II. C s l thuyt
1. Gii thiu PIC 18F4550
Vi iu khin Microchip PIC18F4550 l mt thit b ph bin kt ni
vi USB. N c giao din USB 2.0 ton tc tch hp sn.
S chn pic 18F4550:

Hnh 1: S chn PIC 18F4550


Chc nng chn:
Chn

Tn gi

MCLR/Vpp/RE3

RA0/AN0

RA1/AN1

RA2/AN2/Vref-/CVref

RA3/AN3/Vref+

RA4/TOCKI/C1OUT/RCV

Chc nng
-MCLR: ng vo reset tch cc mc thp.
-Vpp: ng vo nhn in p khi ghi d liu vo
b nh ni Flash.
-RE3: xut/nhp s.
-RA0: xut/nhp s
-AN0: ng vo tng t knh 0
-RA1: xut/nhp s
-AN1: ng vo tng t knh 1
-Vref: ng vo in p chun ca b ADC
-Cvref: in p tham chiu Vref ng ra b so
snh
-Vref+: ng vo in p chun ca b A/D
-TOCKI: ng vo xung clock t bn ngoi cho
Timer0.
-C1OUT: ng ra b so snh 1.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1
7
8
10
11
12
13
14

15

16
17
18
19
20
25
26
33

34

38
39

Trang 6

RA5/AN4/SS/HLVDIN/C2O -SS: ng vo lc chon SPI ph.


UT
RE0/AN5/CK1SPP
RE2/AN7/OESPP
VDD
VSS
-ng vo kt ni vi dao ng thch anh hoc
OSC1/CLKI
ng vo nhn xung clock bn ngoi.
-CLK0: ch RC, ng ra ca OSC2, bng
OSC2/CLK0/RA6
tn s ca OSC1 v chnh l tc ca chu k
lnh.
-T1OSO: ng ra b dao ng Timer1
RC0/T1OSO/T13CKI
-T13CKI: ng vo xung clock bn ngoi
Timer1 v Timer3.
-T1OSI: ng vo b dao ng Timer1.
RC1/T1OSI/CCP2/UOE
-CCP2: ng vo Capture2,ng ra compare2,ng
ra PWM2.
RC2/CCP1/P1A
Vusb
-ngun USB
RD0/SPP0
-SPP0: d liu port song song
RD1/SPP1
-TX: truyn bt ng b USART.
RC6/TX/CK
-CK: xung ng b USART.
-RX: nhn bt ng b USART.
RC7/RX/DT/SDO
-DT: d liu ng b USART.
SDO: d liu ra SPI
RB0/AN12/INT0/FLT0/SDI/ -INT0: ng vo nhn tn hiu ngt ngoi.
SDA
-SDA: xut/nhp d liu I2C
-SCK: ng vo xung clock ni tip ng b/ng
ra ca ch SPI.
RB1/AN10/INT1/SCK/SCL
-SCL: ng vo xung clock ni tip ng b/ng
ra ca ch I2C.
-KBI1: interrupt-on-change.
RB5/KBI1/PGM
-PGM: chn cho php lp trnh in ap thp
ICSP.
-PGC: mch g ri v xung clock lp trnh
RB6/KBI2/PGC
ICSP.
Hnh 2: Chc nng chn PIC 18F4550

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 7

Nhng c im ca pic 18F4550:


Tnh nng
Operating Frequency
Program Memory (Bytes)
Program Memory (Instructions)
Data Memory (Bytes)
Data EEPROM Memory (Bytes)
Interrupt Sources
I/O Ports
Timers
Capture/Compare/PWM Modules
Enhanced Capture/Compare/PWM
Modules
Serial Communication
Universal Serial Bus (USB)
Module
Streaming Parallel Port (SPP)
13-Bit Analog-to-Digital Module
Comparator
Resets (and Delays)

M t
DC 48 MHz
32768
16384
2048
256
20
Ports A, B, C, D, E
4
1
1
MSSP, Enhanced USART
1

Yes
Yes
2
POR, BOR, RESET Instruction,
Stack Full, Stack Underflow
(PWRT, OST), MCLR (optional),
WDT
Programmable Low-Voltage Detect
Yes
Programmable Brown-out Reset
Yes
Instruction Set
75 Instructions;
83 with Extended
Instruction Set
enabled
Hnh 3: c im ca PIC 18F4550

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 8

Hnh 4: S khi bn trong PIC 18F4550

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 9

S khi bn trong PIC 18F4550:


-

Khi ALU-Arithmetic Logic Unit.


Khi b nh cha chng trnh.
Khi b nh cha d liu EPROM-Data EPROM.
Khi b nh file thanh ghi.
Khi gii m lnh v iu khin.
Khi thanh ghi c bit.
Khi b nh ngn xp.
Khi reset mch khi c in.
Khi ngoi vi timer T0,T1,T2,T3.
Khi giao tip ni tip.
Khi chuyn i tn hiu tng t sang s.
Khi so snh in p tng t.
Khi to in p tham chiu.
Khi cc port xut nhp.

u im:
-

S dng cng ngh nanoWatt tit kim in nng.


H tr giao tip theo chun USB 1.1 v 2.0
H tr multiple oscillator.

Dao ng xung nhp:


Mch dao ng vi nhiu ty chn. H vi iu khin PIC18F4550 c 12 ty chn
mch dao ng, bao gm:
- 4 ch dao ng tinh th hoc cng hng gm. 4 ch xung nhp ngoi.
- Mt b dao ng ni cung cp xung nhp 8MHz v mch dao ng RC ni cung
cp xung nhp 31KHz, cng nh la chn tn s xung nhp t 125kHz n
4MHz, tt c c 8 la chn tn s xung nhp.
- Nhn tn dng PLL (Phase Loop Lock) p dng cho c dao ng tinh th tn s
cao v dao ng ngoi cho di tn sxung nhp t 4MHz n 48MHz.
- Hot ng xung nhp kp khng ng b(Asynchronous dual clock operation):
khi USB hot ng xung nhp tn scao trong khi cc khi cn li trong vi
iu khin hot ng vi xung nhp tn s thp hn.
- Theo di an ton xung nhp (Fail-Safe clock monitor): ty chn ny cho php
ngun xung nhp chnh lun lun c theo di, nu xy ra trng hp xung
nhp chnh tt vi iu khin s tip tc hot ng vi tn s xung nhp thp hn.
- Khi ng hai tc (Two-Speed Start-up): Ty chn ny cho php ngun xung
nhp ni hot ng khi reset lc khi ng hay vi iu khin hot ng tr li t
ch ng(wake-up from sleep mode) cho n khi ngun xung nhp chnh
sn sng.
GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 10

2. Cm bin nhit DS18B20

Hnh 5: Cm bin DS18B20

Cm bin o nhit DS18b20 s dng chun giao tip 1 WIRE (ng dn tn hiu v
ng dn in p ngun nui c th dng chung trn mt dy dn). Ngoi ra, nhiu cm
bin c th dng chung trn mt ng dn (Rt thch hp vi cc ng dng o lng a
im).
Cc c im k thut ca cm bin DS1820 :
- phn gii khi o nhit l 9 n 12 bit .
- Di o nhit -55oC n 125oC, mi nc thang nhit c xc nh bng
cch ly (125- (-55))/(2 phn gii -1)
- in p ngun nui c th thay i trong khong rng (t 3,0 V n 5,5 V).
- Dng tiu th ti ch ngh cc nh.
- Thi gian ly mu v bin i thnh s tng i nhanh, khng qu 200 ms.
- Mi cm bin c mt m nh danh duy nht 64 bit cha trong b nh ROM
trn chip (on chip).
Cc lnh ROM lin quan:
-

Read ROM (33h) :Cho php c ra 8 byte m khc bng laser trn ROM.
Match ROM (55h) :Lnh ny c gi i cng vi 64 bit ROM tip theo, cho
php b iu khin bus chn ra ch mt cm bin DS1820 c th khi trn bus c
nhiu cm bin DS1820 cng ni vo.
- Skip ROM (CCh) :Lnh ny cho php thit b iu khin truy nhp thng n
cc lnh b nh ca DS1820 m khng cn gi chui m 64 bit ROM. Nh vy
s tit kim c thi gian ch i nhng ch mang hiu qu khi ch c mt
cm bin.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1
-

Trang 11

Search ROM (F0h) :Lnh ny cho php b iu khin bus c th d tm c


s lng thnh vin t ang c u vo bus v cc gi tr c th trong 64 bit
ROM ca chng bng mt chu trnh d tm.
- Alarm SEARCH (ECh) :Tin trnh ca lnh ny ging ht nh lnh Search
ROM, nhng cm bin DS1820 ch p ng lnh ny khi xut hin iu kin
cnh bo trong php o nhit cui cng.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 12

3. Transistor C1815
-

Transistor C1815 l transistor thuc loi transistor NPN.

C1815 c UC cc i = 50V dng IC cc i = 150mA

H s khuch i hFE ca C1815 trong khong 25 n 100.

Th t cc chn t tri qua phi: E C B

Hnh 6: Transistor C1815

Hnh 7: Thng tin transistor C1815

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 13

4. Gii Thiu LCD 16x2


Ngy nay, thit b hin th LCD (Liquid Crystal Display) c s dng trong rt
nhiu cc ng dng ca VK. LCD c rt nhiu u im so vi cc dng hin th
khc: N c kh nng hin th k t a dng, trc quan (ch, s v k t ha), d
dng a vo mch ng dng theo nhiu giao thc giao tip khc nhau, tn rt t ti
nguyn h thng v gi thnh r.
C rt nhiu loi LCD vi nhiu hnh dng v kch thc khc nhau, trn hnh
sau l loi LCD thng dng.Khi sn xut LCD, nh sn xut tch hp chp iu
khin (HD44780) bn trong lp v v ch a cc chn giao tip cn thit. Cc chn
ny c nh s th t v t tn nh hnh sau :

Hnh 8: S chn LCD 16x2

Chc nng cc chn :


Chn

K
hiu

Vss

VDD

VEE

RS

R/W

M t
Chn ni t cho LCD, khi thit k mch ta ni chn ny vi GND ca
mch iu khin
Chn cp ngun cho LCD, khi thit k mch ta ni chn ny vi
VCC=5V ca mch iu khin
iu chnh tng phn ca LCD.
Chn chn thanh ghi (Register select). Ni chn RS vi logic 0
(GND) hoc logic 1 (VCC) chn thanh ghi.
+ Logic 0: Bus DB0-DB7 s ni vi thanh ghi lnh IR ca LCD (
ch ghi - write) hoc ni vi b m a ch ca LCD ( ch
c - read)
+ Logic 1: Bus DB0-DB7 s ni vi thanh ghi d liu DR bn trong
LCD.
Chn chn ch c/ghi (Read/Write). Ni chn R/W vi logic 0
LCD hot ng ch ghi, hoc ni vi logic 1 LCD ch
c.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

7 - 14

15
16

Trang 14

Chn cho php (Enable). Sau khi cc tn hiu c t ln bus DB0DB7, cc lnh ch c chp nhn khi c 1 xung cho php ca chn E.
+ ch ghi: D liu bus s c LCD chuyn vo(chp nhn)
thanh ghi bn trong n khi pht hin mt xung (high-to-low transition)
E
ca tn hiu chn E.
+ ch c: D liu s c LCD xut ra DB0-DB7 khi pht hin
cnh ln (low-to-high transition) chn E v c LCD gi bus n
khi no chn E xung mc thp.
Tm ng ca bus d liu dng trao i thng tin vi MPU. C 2
ch s dng 8 ng bus ny :
DB0 - + Ch 8 bit : D liu c truyn trn c 8 ng, vi bit MSB l bit
DB7 DB7.
+ Ch 4 bit : D liu c truyn trn 4 ng t DB4 ti DB7, bit
MSB l DB7
Ngun dng cho n nn
-

GND cho n nn

Hnh 9: Chc nng chn LCD 16x2

V Tr Con Tr trong LCD

Hnh 10: V tr con tr trn LCD 16x2

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 15

M Nh Phn cc k t LCD

Hnh 11: Mi lin h gia DDRAM v v tr hin th


c th ghi vo v tr th x trn mn hnh mt k t y no , ngi dng phi ghi vo
vng DDRAM ti a ch x (xem bng mi lin h gia DDRAM v v tr hin th) mt chui
m k t 8 bit trn CGROM.
V d : Ghi vo DDRAM ti a ch 03 mt chui 8 bit 01000001 th trn LCD ti
th 4 t tri sang (dng trn) s hin th k t A.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 16

III. Thit k phn cng


a. S khi

Hnh 12: S khi chng trnh


b. Chc nng tng khi
-

Khi cm bin: o nhit v nh sng mi trng xung quanh.


Khi hin th: Hin th kt qu o c
Khi x l trung tm: tip nhn cc kt qu o c ri hin th kt qu ra LCD v
iu khin n, qut.
Khi giao tip my tnh: tng tc gia khi x l trung tm v my tnh

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 17

c. Thit k tnh ton mch nguyn l


Khi cm bin:
Cm bin nh sng:

Hnh 13: Khi cm bin nh sng


-

Khi ny dng quang tr, mt bin tr, mt in tr ko ln ngun v mt


transito npn (chn loi thng dng C1815).
Khi ngoi sng, in tr ca quang tr xung thp, khin dng in IB vo
transito ln cao, transito dn ko chn d liu xung mass.
Khi trong ti, in tr ca quang tr ln cao, lm cho dng IB xung rt
thp, transito ngt, in tr ko ln ngun (s c m t Mch nguyn l)
lm cho chn tn hiu ln mc 1.
Bin tr dng iu chnh ngng sng lm d liu thay i trng thi
bng cch hn ch dng IB nhiu hay t.

Cm bin nhit :

Hnh 14: Khi cm bin nhit


-

Dng cm bin nhit DS18B20


Truyn 10bit d liu, c in tr ko ln ngun ti chn d liu l 4.7k (xem
datasheet ca DS18B20, trang s 4)

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 18

Mch nguyn l

Hnh 15: Mch Nguyn L


Led dng trong mch l led mu , c dng nh mc khong 20mA, do ta chn
in tr hn dng khong 5/0.02 = 250, an ton cho led v chn in tr c mt trn th
trng, ta chn loi 330.
ko d liu ln mc cao m khng lm hng chc nng logic ca PIC v Transitor
Q1, chng ta dng mt in tr ln va phi ni vo cc ng vo VPP, chn d liu t
quang tr ca PIC v chn B ca Q1. V c PIC v Transitor npn ( y chn con thng dng
l C1815) u giao tip theo chun TTL, c dng ng vo l 40A n 1,6mA nn ta chn
in tr t khong (5/0.0016) n (5/0.00004) ngha l t 3.125k n 125k. y, ngi
thit k chn 10k.
m bo dng cp vo cho Motor khng qu cao lm motor chy, ta tip tc dng
mt in tr nh (330) hn ch dng in qua transitor Q1 xung motor.
n nh in p ly t cng USB my tnh, ta dng mt t in ln (100F) mc
song song vo ngun in ny.
Chn VUSB l chn trc tip cp in p ko ln cho chn D+ v D- bng in tr ko
ln bn trong PIC (datasheet PIC18F4550, trang 169) chn ny hot ng khng b nhiu,
chng ta dng t in khong 2nF ni vo n v ko xung GND, do th trng khng c t
2nF, nn ta mc song song 2 t c k hiu 104pF.
Chng ta chn thch anh dao ng l 20MHz, s cu hnh PLL theo xung thch anh
ny, thch anh nh tn ny cn mc phi hp vi 2 t in n tn nh l 22pF.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 19

IV. Thit k phn mm


Trong giao tip vi thit b, chng ta dng chun USB_HID kt ni. Chun
ny c tc chm nhng d s dng, ph hp vi cc ng dng iu khin khng
cn tc cao. Khi mun iu khin bt c mt hot ng no, my tnh s nhn
truyn mt (mt vi) k t, m ha thnh mng byte ri truyn xung PIC, thit b ny
nhn c mng byte s t ng hiu l mt chui k t. Cng vic cn lm l so
snh chui nhn c vi mt (mt vi) k t c quy nh sn, nu ng l mt
k t c quy nh th s hnh ng theo quy nh . Nu PIC mun truyn d liu
ln my tnh th chui phi c ghi ln lt tng byte v b m, ri gi d liu
trong b m ln my tnh. My tnh nhn c l mt mng byte, n s phi gii m
thnh chui k t v x l.
a. Trn PC
Giao din chng trnh gm cc thnh phn sau:
- Nt Connect kt ni thit b vi chng trnh iu khin (thit lp cc
thng s nh danh PID v VID, s byte truyn nhn Input_size v
Output_size)
- Nt chn ch hot ng l Ty Chnh hoc T ng l radio_button
v nt OK xc nhn ch (gi ch M nu ch chn l Ty
Chnh, gi ch A nu ch chn l T ng sau khi ngi dng nhn
nt OK)
- 2 nt lm cng tc cho n v qut (nhn cng tc n truyn ch D,
nhn cng tc qut truyn ch Q)
- 2 picture_box hin th trng thi hot ng ca n v qut (nu nhn c
gi tr trng thi l n sng th hin hnh n sng, ngc li hin hnh n
tt, tng t cho hnh qut)
- 2 label hin th trng thi kt ni v nhit nhn c t thit b (Nu kt
ni thnh cng th hin ch kt ni, ngc li hin Cha kt ni.
Label cn li hin chui k t biu din nhit c c t thit b)
- 1 text_box ngi dng nhp mc ngng nhit thay i trng thi
qut ch t ng. Nt Cp Nht gi nhit ngng xung thit b.
(nt cp nht khi c bm s gi xung ch U, lin sau s gi chui k
t text_box xung thit b)
- Timer cp nht trng thi, nhit cch t ng (gi ch K xung, ch
nhn nhit hin th ln Label. Gi ch 1 xung ri ch nhn d liu
trng thi n v qut, sau thay i hnh nh trn Picture_box)
- Nt Thot ng chng trnh

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 20

Lu gii thut:

Hnh 16: Lu gii thut chng trnh PC


Giao din Chng Trnh:

Hnh 17: Giao din


GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 21

b. Trn vi iu khin
Pic s nhn cc k t iu khin t my tnh, s x l theo cc k t :

Chng trnh s lin tc cp nht nhit c c v trng thi hot ng


ca n v qut ra LCD. Nu nhn c ch M, chy chng trnh Ty
Chnh, nu nhn c ch A chy chng trnh T ng
Trong chng trnh Ty Chnh:
Nu nhn c k t A, chuyn sang chng trnh T ng.
Nu nhn c k t D, thay i trng thi n (ang sng th tt,
ang tt th sng)
Nu nhn c k t Q, thay i trng thi qut (ang quay th tt,
ang tt th quay)
Nu nhn c k t K, gi chui k t biu din nhit ln my
tnh
Nu nhn c k t 1, gi trng thi n v qut ln my tnh (m
ha 2 byte u bo co, byte[0] = 0xFF tc l n ang sng,
byte[0] = 0x00 l n ang tt, tng t vi byte[1] v qut)
Trong chng trnh t ng:
Nu nhn c k t M, chuyn sang chng trnh Ty Chnh.
Nu nhn c k t K, gi chui k t biu din nhit ln my
tnh
Nu nhn c k t 1, gi trng thi n v qut ln my tnh (m
ha 2 byte u bo co, byte[0] = 0xFF tc l n ang sng,
byte[0] = 0x00 l n ang tt, tng t vi byte[1] v qut)
Nu nhn c k t U, ch nhn tip chui tip theo, lu chui
vo bin nhietdo_update. So snh nhit nhn c t cm bin vi
nhietdo_update, nu cao hn th bt qut
Nu chn d liu truyn t khi cm bin nh sng mc 0 th n
tt, mc 1 th n sng.

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

Trang 22

Lu gii thut:

Hnh 18: Lu gii thut cho PIC

GIM ST V IU KHIN THIT B T NG QUA USB

Bo co n 1

V.

Trang 23

Kt lun
a. Kt qu t c
- Mch hot ng theo ng mc ch ra.
b. Hn ch
- Mch cha th iu khin c cc mc cng sng ca n v tc
quay ca qut.
- Chng trnh gim st i khi b ngt kt ni vi thit b.
c. Hng pht trin
- Mch c th t ng gi nhit v my tnh theo chu k v xut thnh mt
bng d liu v t ng v biu dng kho st.
- Mch c th iu khin c cc mc cng sng ca n v tc quay
ca qut.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 24

PH LC
1. Code
1.1 Code phn cng
unsigned char Read_Buffer[8] absolute 0x500;
unsigned char Write_Buffer[8] absolute 0x510;
unsigned char num, flag;
sbit LCD_RS at RC1_bit ;
sbit LCD_RW at RC0_bit ;
sbit LCD_EN at RC2_bit ;
sbit LCD_D7 at RD7_bit ;
sbit LCD_D6 at RD6_bit ;
sbit LCD_D5 at RD5_bit ;
sbit LCD_D4 at RD4_bit ;
sbit LCD_D3 at RD3_bit ;
sbit LCD_D2 at RD2_bit ;
sbit LCD_D1 at RD1_bit ;
sbit LCD_D0 at RD0_bit ;
sbit LCD_RS_Direction at TRISC1_bit ;
sbit LCD_RW_Direction at TRISC0_bit ;
sbit LCD_EN_Direction at TRISC2_bit ;
sbit LCD_D7_Direction at TRISD7_bit ;
sbit LCD_D6_Direction at TRISD6_bit ;
sbit LCD_D5_Direction at TRISD5_bit ;
sbit LCD_D4_Direction at TRISD4_bit ;
sbit LCD_D3_Direction at TRISD3_bit ;
sbit LCD_D2_Direction at TRISD2_bit ;
sbit LCD_D1_Direction at TRISD1_bit ;
sbit LCD_D0_Direction at TRISD0_bit ;
sbit den at RB1_bit;
sbit quat at RB0_bit;
char i ;
char IStudong=1;
const unsigned short TEMP_RESOLUTION = 12;
unsigned char nhietdo_hientai[2];
unsigned char temp_update[8] = "1600";
unsigned temp;
char *text = "000.0000";

// Extract temp_fraction and convert it to unsigned int


temp_fraction = temp2write << (4-RES_SHIFT);
temp_fraction &= 0x000F;
temp_fraction *= 625;
// Convert temp_fraction to characters
text[4] = temp_fraction/1000 + 48;
text[5] = (temp_fraction/100)%10 + 48;

// Extract hundreds

text[6] = (temp_fraction/10)%10 + 48;


text[7] = temp_fraction%10 + 48;

// Extract tens digit


// Extract ones digit

digit

Lcd_Out(2, 5, text);
}

void clear_buffer(unsigned char buffer[])


{
unsigned int i = 0;
while(buffer[i] != '\0')
{
buffer[i] = '\0';
i ++;
}
}
void htnhietdo()
{
Lcd_Init();
Lcd_Cmd(_LCD_CLEAR);
Lcd_Cmd(_LCD_CURSOR_OFF);

void interrupt()
{
USB_Interrupt_Proc();
TMR0L = 100;
INTCON.TMR0IF = 0;
}

if(den == 1)
Lcd_Out(1,1,"LED:ON ");
else Lcd_Out(1,1,"LED:OFF");
if (quat == 1)
Lcd_Out(1,9,"FAN:ON ");
else Lcd_Out(1,9,"FAN:OFF");
Lcd_Out(2,1,"T=");
Lcd_Chr(2,13,223);
Lcd_Chr(2,14,'C');

void Display_Temperature(unsigned int temp2write)


{
const unsigned short RES_SHIFT = TEMP_RESOLUTION - 8;
char temp_whole;
unsigned int temp_fraction;

Ow_Reset(&PORTE, 2);
Ow_Write(&PORTE, 2, 0xCC);
Ow_Write(&PORTE, 2, 0x44);
Delay_us(120);
Ow_Reset(&PORTE, 2);
Ow_Write(&PORTE, 2, 0xCC);
Ow_Write(&PORTE, 2, 0xBE);
temp = Ow_Read(&PORTE, 2);
temp = (Ow_Read(&PORTE, 2) << 8) + temp;
Display_Temperature(temp);
Delay_ms(500);

if (temp2write & 0x8000) {


text[0] = '-';
temp2write = ~temp2write + 1;
}
temp_whole = temp2write >> RES_SHIFT ;
if (temp_whole/100)
text[0] = temp_whole/100 + 48;
else
text[0] = ' ';
text[1] = (temp_whole/10)%10 + 48;
text[2] = temp_whole%10 + 48;
nhietdo_hientai[0]=text[1];
nhietdo_hientai[1]=text[2];

// Extract thousands

digit

}
void tudong()
{
// Extract tens digit
// Extract ones digit

while (Hid_Read() == 0)
{
htnhietdo();

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 25
Lcd_Out (1,1," DEN LED TAT " );
if (quat ==0)
Lcd_Out (2,1," QUAT TAT " );
else Lcd_Out (2,1," QUAT BAT " );
den = 0;

}
if (RA1_bit == 0)
den =1;
else den =0;
}
if ((temp_update[0]-0x30)*10+temp_update[1]-0x30 <
(nhietdo_hientai[0]-48)*10+nhietdo_hientai[1]-48)
quat =1;
else quat =0;

}
else if (strncmp(Read_Buffer,"A" ,1) == 0)
{
IStudong =1;
den = 0;
quat = 0;
}
else if (strncmp(Read_Buffer,"K" ,1) == 0)
{

if (strncmp(Read_Buffer,"U" ,1) == 0)
{
clear_buffer(Read_Buffer);
while (Hid_Read() == 0);
for (i=0;i<8;i++)
temp_update[i] = Read_Buffer[i];
//tudong();
}
if (strncmp(Read_Buffer,"M" ,1) == 0)
{
IStudong =0;
den = 0;
quat = 0;
}
else if (strncmp(Read_Buffer,"K" ,1) == 0)
{

for (i =0; i<8;i++)


Write_Buffer[i] = Text[i];
while(!HID_Write(&Write_Buffer,8));
}
else if (strncmp(Read_Buffer,"1" ,1) == 0)
{
if (den ==1) Write_Buffer[0] = 0xff;
else
Write_Buffer[0] = 0x00;
if (quat ==1) Write_Buffer[1] = 0xff;
else
Write_Buffer[1] = 0x00;
for (i =2; i<8;i++)
Write_Buffer[i] = 0x00;
while(!HID_Write(&Write_Buffer,8));
}
else if (strncmp(Read_Buffer,"Q" ,1) == 0)
{
if (quat ==0)
{
Lcd_Out (1,9,"FAN:ON " );
if (den ==0)
Lcd_Out (1,1,"LED:OFF" );
else Lcd_Out (1,1,"LED:ON " );
quat = 1;
}
else
{
Lcd_Out (1,9,"FAN:OFF" );
if (den ==0)
Lcd_Out (1,1,"LED:OFF" );
else Lcd_Out (1,1,"LED:ON " );
quat = 0;
}

for (i =0; i<8;i++)


Write_Buffer[i] = Text[i];
while(!HID_Write(&Write_Buffer,8));
}
else if (strncmp(Read_Buffer,"1" ,1) == 0)
{
if (den ==1) Write_Buffer[0] = 0xff;
else
Write_Buffer[0] = 0x00;
if (quat ==1) Write_Buffer[1] = 0xff;
else
Write_Buffer[1] = 0x00;
for (i =2; i<8;i++)
Write_Buffer[i] = 0x00;
while(!HID_Write(&Write_Buffer,8));
}
else
{
if (den ==0)
Lcd_Out (1,1,"LED:OFF" );
else Lcd_Out (1,1,"LED:ON " );
if (quat ==0)
Lcd_Out (1,9,"FAN:OFF" );
else Lcd_Out (1,9,"FAN:ON " );

}
else
{
if (den ==0)
Lcd_Out (1,1,"LED:OFF" );
else Lcd_Out (1,1,"LED:ON " );
if (quat ==0)
Lcd_Out (1,9,"FAN:OFF" );
else Lcd_Out (1,9,"FAN:ON " );

};

}
void tuychinh()
{
while (Hid_Read() == 0)
{
htnhietdo();
}
if (strncmp(Read_Buffer,"D" ,1) == 0)
{
if (den == 0)
{
Lcd_Out (1,1," DEN LED BAT " );
if (quat ==0)
Lcd_Out (2,1," QUAT TAT " );
else Lcd_Out (2,1," QUAT BAT " );
den = 1;
}
else
{

};
}
void khoitao()
{
Hid_Enable(&Read_Buffer,&Write_Buffer);
ADCON1|= 0x0F;
CMCON |= 7;
TRISB = 0x00;
TRISC = 0x80;
Lcd_Init();
Delay_ms(100);
Lcd_Cmd(_LCD_CLEAR);
Delay_ms(100);
Lcd_Cmd(_LCD_CURSOR_OFF);
Delay_ms(100);

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1
Lcd_Out (1,1," PIC18F4550 " );
Delay_ms(100);
Lcd_Out (2,1,"D.KHIEN DEN QUAT" );
Delay_ms(2000);
INTCON = 0;
INTCON2 = 0xF5;
INTCON3 = 0xC0;
RCON.IPEN = 0;
PIE1 = 0;
PIE2 = 0;
PIR1 = 0;
PIR2 = 0;
den = 0;
quat = 0;
T0CON = 0x47;
TMR0L = 100;
INTCON.TMR0IE = 1;
T0CON.TMR0ON = 1;
INTCON = 0xE0;
}

Trang 26
void main()
{
IStudong =0;
khoitao();
//while(Hid_Read() == 0);
do{
if(strncmp(Read_Buffer,"A" ,1) == 0)
IStudong = 1;
if(strncmp(Read_Buffer,"M" ,1) == 0)
IStudong = 0;
if (IStudong == 1)
{
tudong();
}
else
{
tuychinh();
}
}
while(1);
}

1.2 Code giao din


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using HIDLib;

namespace Do_an_2
{
publicpartialclassForm1 : Form
{
bool chedo = false, den = false, quat = false, chedochon =
false;
HIDDevice dev = new HIDDevice();
public Form1()
{
InitializeComponent();
}
protectedoverridevoid WndProc(ref Message m)
{
dev.DeviceChange(ref m);
base.WndProc(ref m);
}
staticASCIIEncoding encoder = newASCIIEncoding();
privatevoid buttonden_Click(object sender, EventArgs e)
{
if (chedo == false)
if (dev.AttachedState)
{
byte[] data = newbyte[8];
string s = "D";
data = encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");
den = !den;
if (den == false)
{
buttonden.Image = imageList1.Images[0];
pictureden.Image = imageList1.Images[3];
}

else
{
buttonden.Image = imageList1.Images[1];
pictureden.Image = imageList1.Images[2];
}
}
else MessageBox.Show("Disconnected!");
}

privatevoid buttonquat_Click(object sender, EventArgs e)


{
if (chedo == false)
if (dev.AttachedState)
{
byte[] data = newbyte[8];
string s = "Q";
data = encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");
quat = !quat;
if (quat == false)
{
buttonquat.Image = imageList1.Images[0];
picturequat.Image = imageList1.Images[5];
}
else
{
buttonquat.Image = imageList1.Images[1];
picturequat.Image = imageList1.Images[4];
}
}
else MessageBox.Show("Disconnected!");
}
privatevoid bt_update_Click(object sender, EventArgs e)
{
if (timer1.Enabled == false)
timer1.Enabled = true;
if (chedo == true)
if (dev.AttachedState)
{
string s;
byte[] data = newbyte[8];
s = "U";
data = encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1
int t = int.Parse(ht_nguong.Text);
for (int i = 0; i < 100; i++) ;
data = encoder.GetBytes(ht_nguong.Text);
if (!dev.Transmit(data)) MessageBox.Show("Error");
}
else MessageBox.Show("Disconnected!");
}

privatevoid timer1_Tick(object sender, EventArgs e)


{
if (dev.AttachedState)
{
string s;
byte[] data = newbyte[8];
s = "K";
data
= encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");
byte[] datanhan = newbyte[8];
datanhan = dev.Receive();
ht_nhietdo.Text = encoder.GetString(datanhan);
if (chedo == true)
{
s = "1";
data = encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");
datanhan = dev.Receive();
if (datanhan[1] == 0)
picturequat.Image = imageList1.Images[5];
else
picturequat.Image = imageList1.Images[4];
if (datanhan[0] == 0)
pictureden.Image = imageList1.Images[3];
else
pictureden.Image = imageList1.Images[2];
}
}
else
{
MessageBox.Show("Disconnected!");
timer1.Enabled = false;
}
}
privatevoid button1_Click(object sender, EventArgs e)
{
dev.AttachedState = false;
timer1.Enabled = false;
for (int i = 0; i < 100; i++) ;
Application.Exit();
}

Trang 27
{
if (dev.AttachedState)
{
chedo = chedochon;
string s;
byte[] data = newbyte[8];
if (chedo == false)
s = "A";
else s = "M";
data = encoder.GetBytes(s.ToString());
if (!dev.Transmit(data)) MessageBox.Show("Error");
chedo = !chedo;
bt_update.Enabled = !bt_update.Enabled;
buttonden.Enabled = !buttonden.Enabled;
buttonquat.Enabled = !buttonquat.Enabled;
ht_nguong.Enabled = !ht_nguong.Enabled;
quat = false;
den = false;
buttonquat.Image = imageList1.Images[0];
buttonden.Image = imageList1.Images[0];
picturequat.Image = imageList1.Images[5];
pictureden.Image = imageList1.Images[3];
}
else MessageBox.Show("Disconnected!");
}
privatevoid radiotuychinh_CheckedChanged(object sender,
EventArgs e)
{
chedochon = true;
}
privatevoid radiotudong_CheckedChanged(object sender,
EventArgs e)
{
chedochon = false;
}
privatevoid ketnoi_Click(object sender, EventArgs e)
{
dev.vid = 0x04D8;
dev.pid = 0x0003;
dev.in_size = 8;
dev.out_size = 8;
dev.Initialize();
if (dev.AttachedState)
{
timer1.Enabled = true;
TrangThai.Text = " kt ni";
}
else
TrangThai.Text = "Khng kt ni c";
}
}
}

privatevoid bt_ok_Click(object sender, EventArgs e)

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 28

2. Mch Layout

Hnh 19: Mch layout


3. Hng dn s dng Mikro C vit Code vi iu khin

Hng dn dng Mikro C vit code cho Pic18f4550:


Bc 1: Chn File -> New -> New Project

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 29

Bc 2: in cc thng s vo(c th in nh trong hnh), c th thay i


ng dn, loi PIC v xung Clock

Bc 3: Vo menu Tool, chn HID Terminal, t t s hiu cho VID, PID,


tn cho Verdor Name v Product Name, s byte Input v Output:

Nh cc thng s thit lp in vo cc mc tng ng khi vit code


cho PIC v Code chng trnh iu khin bng my tnh. Chn Save descriptor v
nh v tr lu ri tt ca s.
MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 30

Bc 4: Vo mc Add file to Project nh trong hnh, chn ng file va to


ra bc trn.

Bc 5: Chng ta bt u vit Code nh ph lc Code cho PIC.


Bc 6: Chng ta vo mc Edit Project quy nh cu hnh cho PIC:

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 31

Cu hnh nh sau:

Bc 7: Sau khi lm xong tt c cc bc trn, chng ta c th bm vo nt


Build (hoc Ctrl + F9) to file Hex:

Vi file Hex ny, chng ta c th np vo PIC chy trn mch cng.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

4. Cu hnh cc thanh ghi trong PIC

Cu hnh on code khoitao:


ADCON1|= 0x0F;//00001111
CMCON |= 7;//00000111
INTCON = 0;//00000000
INTCON2 = 0xF5;//11110101
INTCON3 = 0xC0;//11000000
RCON.IPEN = 0;
PIE1 = 0;
PIE2 = 0;
PIR1 = 0;
PIR2 = 0;
T0CON = 0x47;//01000111
TMR0L = 100;
INTCON.TMR0IE = 1;
T0CON.TMR0ON = 1;
INTCON = 0xE0;11100000

MCH GIM ST V IU KHIN THIT B QUA USB

Trang 32

Bo co n 1

Trang 33

a) Thanh ghi ADCON1:

Chng ta khng dng cc chn AN a vo tn hiu tng t nn ta quy


nh tt c cc chn AN u l chn xut nhp Digital. S dng code:
ADCON1|=0x0F;//00001111 quy nh vic , c ngha l chng ta s cho 4 bit
sau ca thanh ghi ln 1, khng quan tm 4 bit u. (ADCON1 or vi 4 bit cui l 4 s
1 s cho ra 4 s 1 4 bit cui, 4 bit u gi nguyn)

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 34

b) Thanh ghi CMCON

V chng ta khng dng cc chn AN a vo tn hiu tng t nn chng


ta s tt chc nng so snh (chuyn i) Analog sang Digital. S dng code:
CMCON|= 7;//00000111 quy nh vic , c ngha l chng ta s cho 3 bit sau
ca thanh ghi ln 1, khng quan tm 5 bit u. (ADCON1 or vi 3 bit cui l 3 s 1
s cho ra 3 s 1 3 bit cui, 5 bit u gi nguyn)

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 35

c) Cc thanh ghi quy nh ngt

Thanh ghi INTCON

u tin, ta quy nh tt tt c cc ngt, ch sau khi cu hnh cc thanh ghi


ngt cn thit khc xong th ta mi t ch cho thanh ghi INTCON, nh ta thy,
hin ti nu cu hnh INTCON = 0;//00000000 th bit GIE = 0 s khng cho php
ngt bng bt c ngun no. Cc ch vit tt: G = Global ton b, IE = Interrupt
Enable cho php ngt, IF=Interrupt Flag c ngt. Nh ta thy trn Schematic trn,
cc bit ngt c phn u ging nhau, ch khc nhau phn ui l IE v IF i vi nhau
thnh tng cp vo cng AND, vy khi c ngt bt ln trong qu trnh chy chng
trnh, nu bit cho php (c ngi dng quy nh t trc) cng ang bit 1 th
trng thi ngt ti c hiu lc. Cc php ngt pha trc cng OR th nht gi l
ngt ngoi (ngoi vi), c quy nh c hiu lc ngt hay khng bit PEIE v bit
GIE. Cc php ngt trc thuc cng OR th 2 gi l ngt trong, c quy nh c
hiu lc bi bit GIE.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 36

Thanh ghi INTCON2

Chng ta cu hnh thanh ghi ny l INTCON2 = 0xF5;//11110101 ngha l tt


c bit ca PortB u t ng ngt ko ln khi PortB xut d liu. Cc bit sau quy nh
cc ch ngt ngoi 0, 1 v 2 u l ngt cnh ln, ngt bng Timer, PortB (nu
c) l ngt c u tin cao.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 37

Thanh ghi INTCON3

Chng ta cu hnh thanh ghi ny l INTCON3 = 0xC0;//11000000 ngha l u


tin ngt ngoi cho ch ngt ngoi 1 v 2. Cc bit sau quy nh cc ch khng
cho php ngt ngoi 1 v 2, c ngt ca 2 ch ngt ny cng cho mc thp.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 38

Thanh ghi INTCON3

Ta quy nh bit IPEN = 0 ngha l tt tt c cc u tin ca cc ch ngt

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 39

Thanh ghi PIE1

Chng ta cu hnh thanh ghi ny l PIE1 = 0 ngha l tt tt c cc ch ngt


bng: c/ghi SPP, A/D, truyn/nhn UART, MSSP, CCP1, Timer 1 v 2.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 40

Thanh ghi PIE2

Chng ta cu hnh thanh ghi ny l PIE2 = 0 ngha l tt tt c cc ch ngt


bng: sai xung nhp, chuyn i ADC, truyn/nhn USB, vit d liu ln EEPROM,
xung t bus, Timer 3 v CCP2

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 41

Thanh ghi PIR1 v PIR2

Ta quy nh PIR1 = 0; PIR2 = 0; ngha l ko tt c cc c bo hiu c 2


thanh ghi ny xung 0.

Thanh ghi T0CON

Chng ta cu hnh thanh ghi ny l T0CON = 0x47;//01000111 tt timer 0,


quy nh Timer0 m 8 bit, m bng xung CLK0, m cnh ln ca xung CLK, c
dng b Prescaler, b ny m t 1 n 256.
MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 42

Cui cng, ta quy nh thanh ghi TMR0L = 100; ngha l khi thanh ghi ny
m ti 100 th c trn TMR0IF s ln mc 1. Lc th PIC s x l ngt v ngay
sau khi cu hnh thanh ghi TMR0L s cu hnh li cc thanh ghi
INTCON.TMR0IE=1; T0CON.TMR0ON = 1; INTCON = 0xE0;11100000 ngha l
cho php ngt bng Timer0, khi chy Timer0 v cho php ngt bng Timer0 v ngt
chung.

MCH GIM ST V IU KHIN THIT B QUA USB

Bo co n 1

Trang 43

5. Hng dn s dng

t mch in ni cn gim st nhit v iu khin n, qut. Ko dy


USB ti my tnh ni ngi dng gim st v iu khin mch thng qua phn mm,
cm dy USB vo my tnh .
Khi ng phn mm, bm nt Connect kt ni thit b vi phn mm, nu
hin bng Disconnected xem li ng dy USB, cm li cho chc chn n khi
no Status label hin ch kt ni th c th s dng.
Hin ti, ch ang l ch Ty Chnh. ch ny, c th bt tt n v
qut bng 2 button n v qut ring bit, theo di s thay i ca Picture_box hin
th trng thi thit b v Label hin th nhit .
Nu chng ta khng mun iu khin thit b cc th cng nh vy na,
chng ta c th bm vo nt chn ch l T ng v bm nt OK. Khi , ta
thy 2 nt button n v qut b m i, thay vo , textbox Nhit ngng bt
qut hin r ln, ta c th thay i nhit ny theo thch v n nt Update
thay i c hiu lc. Trng thi bt qut v nhit o c vn tip tc hin ra v
tr c.
Nu khng mun dng chng trnh na, bm Thot.
Ti ni t mch in, ta c th theo di trng thi hot ng ca n, qut v
nhit o c trn mn hnh LCD 16x2, thay i tng phn, ta vn bin tr
RV2. thay i nhy ca khi cm bin nh sng, ta vn bin tr RV1

6. Ti liu tham kho


[1] Mc Help ca MikroC
[2] Datasheet Pic 18F4550
[3] Datasheet DS18B20
[4] Datasheet LM016

MCH GIM ST V IU KHIN THIT B QUA USB

You might also like