Với một lượng lớn dân số trong nước là nông dân và những năm gần đây các mô hình như VAC, VACR, trang trại, nhà kính,... đã được các hộ dân quy hoạch với diện tích có thể lên đến hàng trăm hecta, ngoài ra các nhân lực làm trong ngành nông nghiệp thường đã cao tuổi. Khi đó gánh nặng công việc đã đặt ra làm sao có một mô hình tưới cây, rau, vườn ươm. Nhằm giúp các bạn hiểu hơn về mô hình này, mời các bạn cùng tham khảo đồ án Đo nhiệt độ và đặt giờ tưới nước cho vườn dưới đây.
Trang 1H c Vi n Công Ngh B u Chính Vi n Thôngọ ệ ệ ư ễ
C s t i thành ph H Chí Minhơ ở ạ ố ồ
Đ ÁN MÔN H CỒ Ọ
Môn h cọ : Kĩ thu t ghép n i và thi t b ngo i vi ậ ố ế ị ạ
Đ tàiề : đo nhi t đ và đ t gi t ệ ộ ặ ờ ướ ướ i n c cho v ườ n
Giáo viên hướng d nẫ : Ths. Ph m Th Duyạ ế
Trang 3b Chương trình hi n th th i gian và nhi t để ị ờ ệ ộ
c Gi i thu t hi n th gi tả ậ ể ị ờ ướ ằi h ng ngày
d Gi i thu t ch nh th i gian th cả ậ ỉ ờ ự
K t qu thi côngế ả
1 Hình nhả
2 H n chạ ế
Trang 5t ướ i cây s gi m đ ẽ ả ượ c ph n nào công vi c cho các h gia đình và nâng cao năng su t cây tr ng, ầ ệ ộ ấ ồ
đ t đ ạ ượ c giá tr th ị ươ ng ph m cao h n ẩ ơ
Tuy nhiên do h n ch c a đ tài ch d ng l i m c đ nghiên c u đ n gi n và tìm hi u ạ ế ủ ề ỉ ừ ạ ở ứ ộ ứ ơ ả ể nên nhóm em mong đ ượ ự ướ c s h ng d n và góp ý thêm đ chúng em hoang thành đ tài trong t ẫ ể ề ươ ng lai.
“Không th y đ mày làm nên ”. Em xin c m n t t c các th y, cô trong khoa đi n t 2 đã ầ ố ả ơ ấ ả ầ ệ ử giúp đ chúng em trong th i gian h c t p t i tr ỡ ờ ọ ậ ạ ườ ng và đã góp ý cho em nh ng ý ki n quý báu. Đ c ư ế ặ
bi t em xin c m n th y Ph m Th Duy và th y Tôn Th t B o Đ t là giáo viên b môn và giao viên ệ ả ơ ầ ạ ế ầ ấ ả ạ ộ
h ướ ng d n đã khuy n khích và giúp đ chúng em trong quá trình thi t k và thi công đ tài ẫ ế ỡ ế ế ề
b.I MÔ T LÝ DO VÀ M C TIÊU CÔNG VI C:Ả Ụ Ệ
1 Lý do ch n đ tài:ọ ề
Nhóm em ch n đ tài mô hình tọ ề ưới cây t đ ng và c m bi n nhi t đ và đ m v i lý do:ự ộ ả ế ệ ộ ộ ẩ ớ
Trang 6April 25, 2013
Công vi c nhà nông r t v t v và nhi u công đo nệ ấ ấ ả ề ạ
Xu hướng tr ng ra oan toàn trên nh ng cánh đ ng l n đang đồ ữ ồ ớ ược tri n khai và nhân r ng ể ộ ở
Ho t đ ng hoàn toàn t đ ng, ch c n đ t m t l n và ho t đ ng cho các l n k ti p.ạ ộ ự ộ ỉ ầ ặ ộ ầ ạ ộ ầ ế ế
Các c m bi n đ m và nhi t đ giúp thu th p thông tin vả ế ộ ẩ ệ ộ ậ ườn cây đ có các phể ương án
tưới phù h p.ợ
Có giao ti p máy tính đ có th c p nh p thông tin v vế ể ể ậ ậ ề ườn cây, rau qua giao di n máy tính.ệ
S đ kh i:ơ ồ ố
Mô t :ả
Trang 7 MCU (atmega8 ho c atmega32): làm b x lý trung tâm các tín hi u s , tặ ộ ử ệ ố ương t đ hi n ự ể ể
th và th c thi chị ự ương trình chính và làm m t s giao ti p v i IC khác ho c v i máy tính cá ộ ố ế ớ ặ ớnhân
IC DS1307: IC th i gian th c đờ ự ược giao ti p v i MCU qua giao ti p I2C.ế ớ ế
Các sensor: dùng làm ch c năng đo các thông s môi trứ ố ường r i g i các tín hi u tồ ử ệ ương t t iự ớ
b ADC c a MCU đ chuy n đ i và hi n th nó m c đích ki m soát và đi u khi n.ộ ủ ể ể ổ ể ị ụ ể ề ể
Các phím b m: dùng khi ta có thao tác đi u khi n và cài đ t các thông s b ng tay trên ấ ề ể ặ ố ằ
m ch.ạ
Lcd 1602 : hi n th các thông s (th i gian, cài đ t tể ị ố ờ ặ ưới, nhi t đ …) khi th c hi n đ t thông ệ ộ ự ệ ặ
s b ng tay.ố ằ
Vòi tưới: được dùng đ đóng m cái relay khi đ n th i gian tể ở ế ờ ướ ịi đ nh s n.ẵ
Máy tính: giao ti p v i các m ch bên ngoài và đi u khi n các m ch. Nó còn đế ớ ạ ề ể ạ ược dùng đ ể
qu n lý các vả ườn khác nhau
Ngu n: (ngu n cho m ch): s d ng đi n áp DC5V đ các IC, MCU, lcd ho t đ ng.ồ ồ ạ ử ụ ệ ể ạ ộ
II TÌM HI U CÁC LINH KI N THI T B TRONG Đ TÀI : Ể Ệ Ế Ị Ề
Đ tài có s d ng m t s linh ki n đi n t là các IC và MCU cùng m t s chu n giao ti p c ề ử ụ ộ ố ệ ệ ử ộ ố ẩ ế ơ
b n nh USART, I2C, c m bi n đả ư ả ế ượ ử ục s d ng nh LM35, c m bi n đ m, hi n th b ng LCD ư ả ế ộ ẩ ể ị ằ1602L, giao ti p máy tính có IC MAX232, IC chuy n đ i USBCOM ho c cable chuyên d ng.ế ể ổ ặ ụ
1 MCU ATmega32:
a Đ c đi m:ặ ể
Đây là dòng vi đi u khi n c a hãng Atmel có nhi u tính năng n i tr iề ể ủ ề ổ ộ
C u trúc t p l nh thu g n RISC, đ n gi n, d l p trìnhấ ậ ệ ọ ơ ả ể ậ
Ti t ki m năng lế ệ ượng
Có 32 chân I/O, 4 port xu t nh p d li u đa ch c năngấ ậ ữ ệ ứ
32 thanh ghi đa d ngụ
B nh 32Kb b nh Flash l p trình độ ớ ộ ớ ậ ược, 1024Byte EEPROM
T c đ t i đa lên t i 16MHz, có th s d ng c dao đ ng n i chip và th ch anh ngoàiố ộ ố ớ ể ử ụ ả ộ ộ ạ
Trang 8April 25, 2013
Các giao ti p h tr nh : I2C, SPI, USARTế ỗ ợ ư
Đi n áp ho t đ ng 4,55 Vệ ạ ộ
S đ chân và đóng gói: lo i 40 chân PDIP và lo i TQFP/MLF (linh ki n dán)ơ ồ ạ ạ ệ
Trang 918 PORT B Port xu t nh p B, ngoài ra còn có ch c năng là giao ti p SPIấ ậ ứ ế
9 RESET Chân reset c a atmega 32, chân này đủ ược kích khi có m t tích c c m cộ ự ứ
th p tác đ ng lên, khi đó atmega32 s ho t đ ng l iấ ộ ẽ ạ ộ ạ
10, 11 Ngu nồ VCC, chân c p ngu n dấ ồ ương VCC và GND
12, 13 Chân g n dao ắ
đ ng ngoàiộ Hai chân g n th ch anh dao đ ng ngoài c a chip khi s d ng, mu n ắ ạ ộ ủ ử ụ ố
s d ng đử ụ ược dao đ ng ngoài ta c n fuse bít đ chip độ ầ ể ược set s d ngử ụ
th ch anhạ1421 PORT D Port truy xu t I/O, ngoài ra còn có ch c năng khác nh :ấ ứ ư
Pd0pd1: chân rxd và txd s d ng giao ti p USARTử ụ ế
Pd2pd3: chân ng t ngoàiắ
Pd4pd5: ngõ ra so sánh2229 Port C Port truy xu t I/O, ngoài ra còn có ch c năng khác nh :ấ ứ ư
Pc0pc1: chân giao ti p i2cế
3031 Chân ngu nồ Chân acvv và gnd
32 Vref Chân đi n áp so sánh (dùng trong ch đ adc)ệ ế ộ
3340 Port A Port truy xu t I/O, ngoài ra còn có ch c năng là 8 kênh adc.ấ ứ
b Các I/O:
Ngõ ra c c máng h ự ở
Trang 10April 25, 2013
ATmega32 có 4 PORT xu t nh p d li u là: A, B,C,Dấ ậ ữ ệ
Có 3 thanh ghi ch c năng đ l p trình vào ra cho các chân I/O là: DDR, PIN, PORT.ứ ể ậ
C u hình I/O theo b ng sau:ấ ả
Trang 11 Thanh ghi PINx đ nh n các tín hi u vào.ể ậ ệ
ADMUX: thanh ghi 8 bit dùng đ ch n đi n áp tham chi u cho ADC, 1 trong 3 ngu n đi n ể ọ ệ ế ồ ệ
áp tham chi u có th ch n là : đi n áp t chân VREF, đi n áp tham chi u n i 2,56V ho c ế ể ọ ệ ừ ệ ế ộ ặ
đi n áp VCC theo b ng sau:ệ ả
ADCSRA (ADC Control and Status Register A): là thanh ghi đi u khi n ho t đ ng và ch a ề ể ạ ộ ứ
tr ng thái c a module ADC.ạ ủ
Bit 7 ADEN(ADC Enable): vi t giá tr 1 vào bit này t c b n đã cho phép module ADC ế ị ứ ạ
đượ ử ục s d ng. Tuy nhiên khi ADEN=1 không có nghĩa là ADC đã ho t đ ng ngay, b n c n ạ ộ ạ ầset m t bit khác lên 1 đ b t đ u quá trình chuy n đ i, đó là bit ADSC.ộ ể ắ ầ ể ổ
Trang 12April 25, 2013
Bit 6 ADSC(ADC Start Conversion): set bit này lên 1 là b t đ u kh i đ ng quá trình ắ ầ ở ộ
chuy n đ i. Trong su t quá trình chuy n đ i, bit ADSC s để ổ ố ể ổ ẽ ược gi nguyên giá tr 1, khi ữ ịquá trình chuy n đ i k t thúc (t đ ng), bit này s để ổ ế ự ộ ẽ ược tr v 0. Vì v y b n không c n và ả ề ậ ạ ầcũng không nên vi t giá tr 0 vào bit này b t k tình hu ng nào. Đ th c hi n m t chuy n ế ị ở ấ ỳ ố ể ự ệ ộ ể
đ i, thông thổ ường chúng ta s set bit ADEN=1 trẽ ước và sau đó set ADSC=1
Bit 4 – ADIF(ADC Interrupt Flag): c báo ng t. Khi m t chuy n đ i k t thúc, bit này t ờ ắ ộ ể ổ ế ự
đ ng độ ược set lên 1, vì th ngế ười dùng c n ki m tra giá tr bit này trầ ể ị ước khi th c hi n đ c ự ệ ọgiá tr chuy n đ i đ đ m b o quá trình chuy n đ i đã th c s hoàn t t.ị ể ổ ể ả ả ể ổ ự ự ấ
Bit 3 – ADIE(ADC Interrupt Enable): bit cho phép ng t, n u bit này đắ ế ược set b ng 1 và bit ằcho phép ng t toàn c c (bit I trong thanh ghi tr ng thái c a chip) đắ ụ ạ ủ ược set, m t ng t s x y ộ ắ ẽ ả
ra khi m t quá trình chuy n đ i ADC k t thúc và các giá tr chuy n đ i đã độ ể ổ ế ị ể ổ ượ ậc c p nh t ậ(các giá tr chuy n đ i ch a trong 2 thanh ghi ADCL và ADCH).ị ể ổ ứ
Bit 2:0 – ADPS2:0(ADC Prescaler Select Bits): các bit ch n h s chia xung nh p cho ADC. ọ ệ ố ịADC, cũng nh t t c các module khác trên AVR, c n đư ấ ả ầ ược gi nh p b ng m t ngu n xung ữ ị ằ ộ ồclock. Xung nh p này đị ượ ấ ừc l y t ngu n xung chính c a chip thông qua m t h s chia. Các ồ ủ ộ ệ ốbit ADPS cho phép người dùng ch n h s chia t ngu n clock chính đ n ADC. Tham kh oọ ệ ố ừ ồ ế ả
b ng 4 đ bi t cách ch n h s chia.ả ể ế ọ ệ ố
ADCL và ADCH (ADC Data Register): hai thanh ghi ch a giá tr chuy n đ i. Do đ phân ứ ị ể ổ ộ
gi i c a module ADC trên AVR là 10 bit nên c n hai thanh ghi ch a giá tr chuy n đ i. Do ả ủ ầ ứ ị ể ổ
t ng hai thanh ghi là 16 bit nên bít ADLAR trong thanh ghi ADMUX quy đ nh cách ghi k t ổ ị ế
qu vào hai thanh ghi này:ả
ADLAR =0:
ADLAR =1:
Trang 13d Giao ti p s d ng I2C:ế ử ụ
Giao th c truy n thông đ n gi n, đứ ề ơ ả ường bus ch c n hai dây scl và sdaỉ ầ
7 bit đ a ch cho phép lên t i 128 thi t b slave.ị ỉ ớ ế ị
T c đ truy n d li u lên t i 400kHz.ố ộ ề ữ ệ ớ
Giao ti p I2C là m t ng d ng h tr trong nhi u dòng vi x lí, nó cho phép thi t k h ế ộ ứ ụ ỗ ợ ề ử ế ế ệ
th ng k t n i lên đ n 128 thi t b mà ch c n hai dây bus, m t dây clock (scl) và m t dây data ố ế ố ế ế ị ỉ ầ ộ ộ(sda)
Master: là chip kh i đ ng quá trình truy n nh n, phát đi đ a ch c a thi t b c n giao ti p vàở ộ ề ậ ị ỉ ủ ế ị ầ ế
t o xung gi nh p trên đạ ữ ị ường SCL
Slave : là chip có đ a ch c đ nh, đị ỉ ố ị ược g i b i master và ph c v yêu c u c a master.ọ ở ụ ụ ầ ủ
Các thanh ghi s d ng giao ti p I2C trên AVR g m 5 thanh ghi g m có thanh ghi t c đ gi ử ụ ế ồ ồ ố ộ ữ
nh p TWBR, thanh ghi đi u khi n TWCR, thanh ghi tr ng thái TWSR, thanh ghi đ a ch ị ề ể ạ ị ỉTWAR, thanh ghi d li u TWDR. ữ ệ
TWBR: quy đ nh t c đ phát xung gi nh p trên đị ố ộ ữ ị ường SCL c a chip master.ủ
T c đ xung gi nh p tính theo công th c: ố ộ ữ ị ứ
Trang 14April 25, 2013
TWBR : giá tr trong thanh ghi TWBRị
TWPS : giá tr hai bit TWPS1 và TWPS0 n m trong thanh thi tr ng thái TWSRị ằ ạ
TWCR: thanh ghi đi u khi n ho t đ ng c a I2C:ề ể ạ ộ ủ
Thanh ghi này g m 8 bít đ đi u khi n các ho t đ ng c a I2C:ồ ể ề ể ạ ộ ủ
TWSR: thanh ghi tr ng thái 8 bit, trong đó có 5 bít ch a code tr ng thái c a TWI và 3 bit l aạ ứ ạ ủ ự
Trang 15 H tr khung truy n n i ti p v i 5,6,7,8 ho c 9 bit d li u và 1,2 stop bit.ỗ ợ ề ố ế ớ ặ ữ ệ
Báo tràn d li uữ ệ
Có 5 thanh ghi được dùng trong giao ti p USART là:ế
UDR: thanh ghi d li u, ch a các d li u nh n và phát đi c a USART, th c ch t nó là hai ữ ệ ứ ữ ệ ậ ủ ự ấthanh ghi TXB và RXB có chung đ a ch ị ỉ
UCSRA: đây là thanh ghi quan tr ng đi u khi n USARTọ ề ể
Thanh ghi UCSRA g m các bit tr ng thái nh bit báo quá trình nh n k t thúc RXC, truy n ồ ạ ư ậ ế ề
k t thúc TXC, báo thanh ghi d li u tr ng UDRE, khung truy n có l i FE, d li u tràn DOR, ki m ế ữ ệ ố ề ỗ ữ ệ ểtra parity có l i PE.ỗ
UCSRB: cũng là m t thanh ghi đi u khi n USART quan tr ng:ộ ề ể ọ
RXCIE (Receive Complete Interrupt Enable) là bit cho phép ng t khi quá trình nh n ắ ậ
k t thúc. Vi c nh n d li u truy n b ng phế ệ ậ ữ ệ ề ằ ương pháp n i ti p không đ ng b ố ế ồ ộ
thường được th c hi n thông qua ng t, vì th bit này thự ệ ắ ế ường được set b ng 1 khi ằUSART được dung nh n d li u.ậ ữ ệ
TXCIE (Transmit Complete Interrupt Enable) bit cho phép ng t khi quá trình truy n ắ ề
k t thúc.ếUDRIE (USART Data Register Empty Interrupt Enable) là bit cho phép ng t khi ắthanh ghi d li u UDR tr ng.ữ ệ ố
RXEN (Receiver Enable) là m t bit quan tr ng đi u khi n b nh n c a USART, đ ộ ọ ề ể ộ ậ ủ ềkích ho t ch c năng nh n d li u b n ph i set bit này lên 1.ạ ứ ậ ữ ệ ạ ả
TXEN (Transmitter Enable) là bit đi u khi n b phát. Set bit này lên 1 b n s kh i ề ể ộ ạ ẽ ở
đ ng b phát c a USART.ộ ộ ủ
Trang 16B n chú ý là các bit đạ ược đánh s t 0, vì th bit th chín s có ch s là 8, vì l đó ố ừ ế ứ ẽ ỉ ố ẽ
mà bit này có tên là RXD8 (không ph i RXD9).ảTXB8 (Transmit Data Bit 8), tương t nh bit RXD8, bit TXB8 cũng đóng vai trò bit ự ư
th 9 truy n thông, nh ng bit này đứ ề ư ược dung trong lúc truy n d li u.ề ữ ệ
UCSRC: thanh ghi này dùng đ quy đ nh các thông s v khung truy n và ch đ truy n ể ị ố ề ề ế ộ ề
UMSEL (USART Mode Select) là bit l a ch n gi a 2 ch đ truy n thông đ ng b ự ọ ữ ế ộ ề ồ ộ
và không đ ng b N u UMSEL=0, ch đ không đ ng b đồ ộ ế ế ộ ồ ộ ược ch n, ngọ ượ ạc l i
n u UMSEL=1, ch đ đ ng b đế ế ộ ồ ộ ược kích ho t. Xem b ng sau:ạ ả
Hai bit UPM1 và UPM0( Parity Mode) được dùng đ quy đ nh ki m tra pariry. N u ể ị ể ếUPM1:0=00, parity không đượ ử ục s d ng (mode này khá thông d ng), UPM1:0=01 ụkhông đượ ử ục s d ng, UPM1:0=10 thì parity ch n đẵ ược dùng, UPM1:0=11 parity l ẻ
đượ ử ục s d ng xem b ng sau:ả
USBS (Stop bit Select), bit Stop trong khung truy n b ng AVR USART có th là 1 ề ằ ể
ho c 2 bit, n u USBS=0 thì Stop bit ch là 1 bit trong khi USBS=1 s có 2 Stop bit ặ ế ỉ ẽ
được dùng
Trang 17Hai bit UCSZ1 và UCSZ2 (Character Size) k t h p v i bit UCSZ2 trong thanh ghi ế ợ ớUCSRB t o thành 3 bit quy đ nh đ dài d li u truy n. B ng 2 tóm t t các giá tr có ạ ị ộ ữ ệ ề ả ắ ị
th có c a t h p 3 bit này và đ dài d li u truy n tể ủ ổ ợ ộ ữ ệ ề ương ng.ứ
UCPOL (Clock Pority) là bit ch c c c a xung kích trong ch đ truy n thông đ ng ỉ ự ủ ế ộ ề ồ
b n u UCPOL=0, d li u s thay đ i thay đ i c nh lên c a xung nh p, n u ộ ế ữ ệ ẽ ổ ổ ở ạ ủ ị ếUCPOL=1, d li u thay đ i c nh xu ng xung nh p. N u b n s d ng ch đ ữ ệ ổ ở ạ ố ị ế ạ ử ụ ế ộtruy n thông không đ ng b , hãy set bit này b ng 0.ề ồ ộ ằ
UBRRL và UBRRH: hai thanh ghi th p và cao quy đ nh t c đ baud.ấ ị ố ộ
Trang 195,6 Chân gi xung nh p và d li u trong giao ti p I2Cữ ị ữ ệ ế
7 Chân c p xung ra ngoàiấ
IC được hãng DALLAS s n xu t và gi i thi u. IC th i gian th c (Real Timer Clock) có th ả ấ ớ ệ ờ ự ể
s d ng đ đ m th i gian (gi , phút, giây), l ch (th , ngày, tháng, năm).ử ụ ể ế ờ ờ ị ứ
Được thi t k t i l ch c a năm 2100.ế ế ớ ị ủ
56byte, dùng ngu n PIN ngoài phòng khi m t đi n.ồ ấ ệ
Giao ti p I2C v i vi đi u khi n.ế ớ ề ể
b Các thanh ghi c a IC:ủ
Ds1307 có 64 thanh ghi 8 bit đáng d u t đ a ch 00H3FH, ch 8 thanh ghi có ch c năng ấ ừ ị ỉ ỉ ứ
đ ng h còn l i 56 thanh ghi còn l i có ch c năng nh b nh RAM c a ICồ ồ ạ ạ ứ ư ộ ớ ủ
Ba thanh ghi đ u t đ a ch 00H 02H có ch c năng là đ ng h g m có : SECONDS, ầ ừ ị ỉ ứ ồ ồ ồ
Trang 20April 25, 2013
T ch c các thanh ghi trong IC ds1307:ổ ứ
Thanh ghi giây SECONDS: thanh ghi này là thanh ghi đ u tiên trong b nh c a DS1307, đ a ầ ộ ớ ủ ị
ch c a nó là 0x00. B n bit th p c a thanh ghi này ch a mã BCD 4bit c a ch s hàng đ n ỉ ủ ố ấ ủ ứ ủ ữ ố ơ
v c a giá tr giây. Do giá tr cao nh t c a ch s hàng ch c là 5 (không có giây 60) nên ch ị ủ ị ị ấ ủ ữ ố ụ ỉ
c n 3 bit (các bit SECONDS 6:4) là có th mã hóa đầ ể ược (s 5 =101, 3 bit). Bit cao nh t bit 7 ố ấtrong thanh ghi này là 1 bit đi u khi n có tên CH (Clock halt – treo đ ng h ), n u bit này ề ể ồ ồ ế
được set b ng 1 b dao đ ng trong chip b vô hi u hóa, đ ng h không ho t đ ng. Vì v y, ằ ộ ộ ị ệ ồ ồ ạ ộ ậ
nh t thi t ph i reset bit này xu ng 0 ngay t đ u.ấ ế ả ố ừ ầ
Thanh ghi phút MINUTES: có đ a ch 0x01, ch a giá tr phút c a đ ng h Tị ỉ ứ ị ủ ồ ồ ương t thanh ựghi SECONDS, ch có 7 bit c a thanh ghi này đỉ ủ ược dùng l u mã BCD c a phút, bit 7 luôn ư ủluôn b ng 0ằ
Thanh ghi gi HOURS: có th nói đây là thanh ghi ph c t p nh t trong DS1307. Thanh ghi ờ ể ứ ạ ấnày có đ a ch 0x02. Trị ỉ ước h t 4bits th p c a thanh ghi này đế ấ ủ ược dùng cho ch s hàng ữ ố
đ n v c a gi Do DS1307 h tr 2 lo i h th ng hi n th gi (g i là mode) là 12h (1h đ n ơ ị ủ ờ ỗ ợ ạ ệ ố ể ị ờ ọ ế12h) và 24h (1h đ n 24h) gi , bit6 xác l p h th ng gi N u bit6=0 thì h th ng 24h đế ờ ậ ệ ố ờ ế ệ ố ược
ch n, khi đó 2 bit cao 5 và 4 dùng mã hóa ch s hàng ch c c a giá tr gi Do giá tr l n ọ ữ ố ụ ủ ị ờ ị ớ
nh t c a ch s hàng ch c trong trấ ủ ữ ố ụ ường h p này là 2 (=10, nh phân) nên 2 bit 5 và 4 là đ ợ ị ủ
đ mã hóa. N u bit6=1 thì h th ng 12h để ế ệ ố ược ch n, v i trọ ớ ường h p này ch có bit 4 dùng ợ ỉ
mã hóa ch s hàng ch c c a gi , bit 5 ch bu i trong ngày, AM ho c PM. Bit5 =0 là AM vàữ ố ụ ủ ờ ỉ ổ ặ bit5=1 là PM. Bit 7 luôn b ng 0.ằ
Thanh ghi th (DAY – ngày trong tu n): n m đ a chĩ 0x03. Thanh ghi DAY ch mang giá ứ ầ ằ ở ị ỉ
tr t 1 đ n 7 tị ừ ế ương ng t Ch nh t đ n th 7 trong 1 tu n. Vì th , ch có 3 bit th p trong ứ ừ ủ ậ ế ứ ầ ế ỉ ấthanh ghi này có nghĩa
Các thanh ghi còn l i có c u trúc tạ ấ ương t , DATE ch a ngày trong tháng (1 đ n 31), ự ứ ế
MONTH ch a tháng (1 đ n 12) và YEAR ch a năm (00 đ n 99). Chú ý, DS1307 ch dùng ứ ế ứ ế ỉ
Trang 21cho 100 năm, nên giá tr năm ch có 2 ch s , ph n đ u c a năm do ngị ỉ ữ ố ầ ầ ủ ười dùng t thêm vào ự(ví d 20xx).ụ
c Giao ti p i2c v i AVR:ế ớ
DS 1307 ho t đ ng v i AVR ch đ slave ạ ộ ớ ở ế ộ
Đ a ch c a ds1307 trong i2c là s nh phân c đ nhị ỉ ủ ố ị ố ị 1101000 vì th trong m ch này không ế ạ
th t n t i 2 IC ds1307, ta có th s d ng các hàm trong codevision đ đ c gi và l ch trong ể ồ ạ ể ử ụ ể ọ ờ ịds1307 và đ a vào AVR x lí.ư ử
Trang 22Đ có th giao ti p v i DHT11 theo chu n 1 chân vi x lý th c hi n theo 2 bể ể ế ớ ẩ ử ự ệ ước:
+ G i tin hi u mu n đo (Start) t i DHT11, sau đó DHT11 xác nh n l i.ử ệ ố ớ ậ ạ
+ Khi đã giao ti p đế ược v i DHT11, C m bi n s g i l i 5 byte d li u và nhi t đ đo ớ ả ế ẽ ử ạ ữ ệ ệ ộ
được
Trang 23 Bước 1: g i tín hi u Startử ệ
+ MCU thi t l p chân DATA là Output, kéo chân DATA xu ng 0 trong kho ng th i ế ậ ố ả ờgian >18ms. Trong Code mình đ 25ms. Khi đó DHT11 s hi u MCU mu n đo giá tr nhi t ể ẽ ể ố ị ệ
đ và đ m.ộ ộ ẩ
+ MCU đ a chân DATA lên 1, sau đó thi t l p l i là chân đ u vào.ư ế ậ ạ ầ
+ Sau kho ng 2040us, DHT11 s kéo chân DATA xu ng th p. N u >40us mà chânả ẽ ố ấ ế DATA ko được kéo xu ng th p nghĩa là ko giao ti p đố ấ ế ược v i DHT11.ớ
+ Chân DATA s m c th p 80us sau đó nó đẽ ở ứ ấ ược DHT11 kéo nên cao trong 80us.
B ng vi c giám sát chân DATA, MCU có th bi t đằ ệ ể ế ược có giao ti p đế ược v i DHT11 ko. ớ
N u tín hi u đo đế ệ ược DHT11 lên cao, khi đó hoàn thi n quá trình giao ti p c a MCU v i ệ ế ủ ớDHT
Bước 2: đ c giá tr trên DHT11ọ ị
+ DHT11 s tr giá tr nhi t đ và đ m v dẽ ả ị ệ ộ ộ ẩ ề ướ ại d ng 5 byte. Trong đó:
Byte 1: giá tr ph n nguyên c a đ m (RH%)ị ầ ủ ộ ẩ
Byte 2: giá tr ph n th p phân c a đ m (RH%)ị ầ ậ ủ ộ ẩ
Byte 3: giá tr ph n nguyên c a nhi t đ (TC)ị ầ ủ ệ ộ
Byte 4 : giá tr ph n th p phân c a nhi t đ (TC)ị ầ ậ ủ ệ ộ
Byte 5 : ki m tra t ng.ể ổ
+ N u Byte 5 = (8 bit) (Byte1 +Byte2 +Byte3 + Byte4) thì giá tr đ m và nhi t đ là ế ị ộ ẩ ệ ộchính xác, n u sai thì k t qu đo không có nghĩa.ế ế ả
+ Đ c d li u: Sau khi giao ti p đọ ữ ệ ế ược v i DHT11, DHT11 s g i liên ti p 40 bit 0 ớ ẽ ử ế
ho c 1 v MCU, tặ ề ương ng chia thành 5 byte k t qu c a Nhi t đ và đ m.ứ ế ả ủ ệ ộ ộ ẩ
Bit 0:
Trang 24April 25, 2013
Bit 1:
Sau khi tín hi u đệ ược đ a v 0, ta đ i chân DATA c a MCU đư ề ợ ủ ược DHT11 kéo lên 1. N u ếchân DATA là 1 trong kho ng 2628 us thì là 0, còn n u t n t i 70us là 1. Do đó trong l p ả ế ồ ạ ậtrình ta b t sắ ườn lên c a chân DATA, sau đó delay 50us. N u giá trủ ế ị
4 C m bi n nhi t đ LM35:ả ế ệ ộ
a Đ c đi m kĩ thu t và c u t o chân linh ki n:ặ ể ậ ấ ạ ệ
S d ng thang nhi t giai Celsius (ử ụ ệ oC)
Đ chia 10mV/1ộ oC
Trang 25 T m đo t 55ầ ừ oC +150 oC.
Công th c tính giá tr : ADCx = (Vin.1024)/Vrefứ ị
Trang 264 R/S, H/L ch n tín hi u vào là l nh hay d li uọ ệ ệ ữ ệ
5 R/W, H/L đ c hay là ghi d li u vào LCDọ ữ ệ
8,9,10,11,12,13,14 Các chân d li u tữ ệ ương ng t D0D7ứ ừ
15 A/Vee : chân dương đèn n n ledề
16 K: chân ngu n âm cho đèn n n LEDồ ề
b Các hàm đi u khi n LCDề ể
Trong trương trình codevision có h tr đ y đ các hàm đ đi u khi n và hi n th LCD ỗ ợ ầ ủ ể ề ể ể ị ở
ch đ 4 bit nh :ế ộ ư
Trang 27void lcd_puts(char *str) Hi n th t i v trí hi n t i m t chu i kí t ki u string ể ị ạ ị ệ ạ ộ ỗ ự ể
đượ ưc l u trên RAMvoid lcd_putsf(char flash *str) Hi n th kí t t i v trí hi n t i để ị ự ạ ị ệ ạ ượ ưc l u trong b nhộ ớ
Flashvoid lcd_clear Xóa màn hình đ a con tr v dòng 1 c t 1.ư ỏ ề ộ
6 Truy n nh n d li u qua c ng n i ti pề ậ ữ ệ ổ ố ế
a C u trúc c ng n i ti p:ấ ổ ố ế
C ng n i ti p là c ng dùng đ truy n d li u t máy tính xu ng các thi t b ngo i vi, c ng n i ổ ố ế ổ ể ề ữ ệ ừ ố ế ị ạ ổ ố
ti p có các u đi m sau:ế ư ể
Kho ng cách truy n xa h n truy n song song.ả ề ơ ề
S dây liên k t d li u ít( thông thố ế ữ ệ ường 2 dây)
M ch đi n đ n gi nạ ệ ơ ả
Có th dùng h ng ngo i đ truy n nh n qua c ng n i ti pể ồ ạ ể ề ậ ổ ố ế
Cho phép n i m ngố ạ
Có th ng t k t n i kh i m ng trong khi thi t b đang ho t đ ng.ể ắ ế ố ỏ ạ ế ị ạ ộ
Các thi t b ghép n i đế ị ố ược chia làm hai lo i là: DTE(data terminal Enquipment) và ạ
DCE(data communication enquipment). DCE là các thi t b trung gian nh modem còn DTE là ế ị ưcác thi t đ th c hi n truy n hay nh n d li u nh là PLC, m ch đi u khi n… Vi c truy n ế ể ự ệ ề ậ ữ ệ ư ạ ề ể ệ ề
nh n d li u đậ ữ ệ ược th c hi n thông thự ệ ường qua hai chân RxD và TxD, các tín hi u còn l i còn ệ ạ
g i là các tín hi u b t tay. Khi dùng tín hi u b t tay chúng ta có th ki m soát đọ ệ ắ ệ ắ ể ể ường truy n.ềTín hi u truy n theo chu n RS232 đệ ề ẩ ược quy đ nh m c logic 1 ng v i đi n áp n m trong ị ứ ứ ớ ệ ằkho ng 3V đ n 12V, m c logic 0 t +3V đ n 12V và có kh năng cung c p dòng t 10mA t iả ế ứ ừ ế ả ấ ừ ớ 20mA. Các c ng ra có ch ng ch p m ch.ổ ố ậ ạ
Chu n RS232 cho phép t c đ truy n t i 20kbps nh ng n u cáp đ ng n thì t c đ có th ẩ ố ộ ề ớ ư ế ủ ắ ố ộ ể
t i 115kbps.ớ
Các phương th c n i gi a DTE và DCE:ứ ố ữ
Đ n công: truy n d li u theo m t hơ ề ữ ệ ộ ướng
Bán song công: d li u đữ ệ ược truy n theo hai hề ướng nh ng t i m t th i đi m ch có m t ư ạ ộ ờ ể ỉ ộbên(máy phát/thu) được phép truy n.ề