Professional Documents
Culture Documents
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 !
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.
3.
Mc ch ti ....................................................................................................................................... 4
4.
Gii hn ti ........................................................................................................................................ 4
5.
B cc lun vn ...................................................................................................................................... 4
2.
3.
4.
III.
a.
S khi ............................................................................................................................................16
b.
c.
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.
PH LC ........................................................................................................................................... 24
Code .....................................................................................................................................................24
1.
Mch Layout.........................................................................................................................................28
3.
4.
b)
c)
5.
6.
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
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
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:
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.
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
Bo co n 1
Trang 7
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
Bo co n 1
Trang 8
Bo co n 1
Trang 9
u im:
-
Bo co n 1
Trang 10
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.
Bo co n 1
-
Trang 11
Bo co n 1
Trang 12
3. Transistor C1815
-
Bo co n 1
Trang 13
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.
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
Bo co n 1
Trang 15
M Nh Phn cc k t LCD
Bo co n 1
Trang 16
Bo co n 1
Trang 17
Cm bin nhit :
Bo co n 1
Trang 18
Mch nguyn l
Bo co n 1
Trang 19
Bo co n 1
Trang 20
Lu gii thut:
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 :
Bo co n 1
Trang 22
Lu gii thut:
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.
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 hundreds
digit
Lcd_Out(2, 5, text);
}
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');
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);
// Extract thousands
digit
}
void tudong()
{
// Extract tens digit
// Extract ones digit
while (Hid_Read() == 0)
{
htnhietdo();
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)
{
}
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);
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);
}
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!");
}
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!");
}
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";
}
}
}
Bo co n 1
Trang 28
2. Mch Layout
Bo co n 1
Trang 29
Bo co n 1
Trang 30
Bo co n 1
Trang 31
Cu hnh nh sau:
Bo co n 1
Trang 32
Bo co n 1
Trang 33
Bo co n 1
Trang 34
Bo co n 1
Trang 35
Bo co n 1
Trang 36
Bo co n 1
Trang 37
Bo co n 1
Trang 38
Bo co n 1
Trang 39
Bo co n 1
Trang 40
Bo co n 1
Trang 41
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.
Bo co n 1
Trang 43
5. Hng dn s dng