chức năng:
Vcc:nguồn cấp (chân số 40)
GND: Nối đất (chân số 20 )
Port 0:
Port 0 (P0.0 – P0.7) có số chân từ 32- 39
Port 0 là port xuất nhập 8bit 2 chiều. Port 0 được định hình làm bus địa chỉ (byte thấp) và làm bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài và bộ nhớ chương trình ngoài. Port 0 nhận các byte mã trong khi lập trình cho Flash và xuất các byte mã trong khi kiểm tra chương trình.
Port 1 :
Port 1 (P1.0 – P1.7) có số chân từ 1 – 8.
Port 1 là một port xuất nhập 8bit có các điện trở kéo lên bên trong.khi các logic 1 được đặt lên các chân của port 1, các chân này được kéo lên mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi thực hiện là các port nhập, các chân của port 1 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng cho các điện trở kéo lên bên trong.
Port 2 :
Port 2 (P2.0 – P2.7) có số chân từ 21 -28
Port 2 là port xuất nhập 8bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 2, các chân này được sử dụng như là các ngõ vào. Khi thực hiện chức năng port nhập, các chân port 2 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bên trong. Port 2 tạo ra byte cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớchương trình ngoài và trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 16 bit.
Port 3 :
Port 3 (P3.0 - P3.7) có số chân từ 10 – 17
Port 3 là port xuất nhập 8 bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 3 các chân này được đưa lê mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi làm chức năng port nhập, các chân port 3 được kéo xuống mức thấp do tác động bên ngoài cấp dòng do có các điện trở kéo lên bên trong. Port 3 còn được sử dụnglàm các chức năng khác của AT89C51.
26 trang |
Chia sẻ: lethao | Lượt xem: 2329 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Máy tưới nước tự động thích hợp để tưới nước cho cây, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
I. MỤC ĐÍCH YÊU CẦU:
1. Giới thiệu đề tài:
Lâu nay bà con nông dân vẫn dùng nhiều phương pháp tưới nước như dùng gàu vẫy tát nước cho cây hoặ tưới cây bằng xăng dầu, motor điện với ống chuyển nước…dần dần cách này không phát huy hiệu quả vì còn mang tính thủ công, tốn nhiều công sức, chi phí cao, chưa đáp ứng nhu cầu của tiến trình công nghiệp hóa, hiện đại hóa nông nghiệp nông thôn.
Phát sinh từ nhu cầu thực tế đó, nhóm chúng em bắt tay vào nghiên cứu đề tài: Máy tưới nước tự động thích hợp để tưới nước cho cây ở vườn nhà hoặc hoa kiểng ở các công viên…với ưu điểm giảm được nhân công, nhanh, không tốn nhiên liệu, rút ngắn thời gian, tiết kiệm cho người tiêu dùng.
Đề tài này bao gồm 2 phần cơ bản:
Nội dung : Nêu khái quát phần lí thuyết cơ bản liên quan.
Thi công: Sơ đồ nguyên lý, quá trình thi công mạch, nguyên lý hoạt động mạch.
2. Hạn chế đề tài :
Đề tài này được ứng dụng khá rộng rãi nhưng trong phạm vi cho phép chúng em chỉ có thể thực hiện hệ thống tưới nước tự động ở mức độ đơn giản, phần vì thời gian nghiên cứu không nhiều cũng như kinh phí đầu tư cho đề tài.
3. Phương pháp nghiên cứu:
Sự hướng dẫn của giáo viên.
Thu thập tài liệu có liên quan đến đề tài
Ứng dụng về các kiến thức vi xử lí và điện tử số đã được học.
II. NỘI DUNG:
1 . Lí thuyết cơ bản:
1.1 Vi điều khiển AT89C51
AT89C51 là phiên bản 8051 có ROM trên chip là bộ nhớ Flash. Phiên bản này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ FLASH có thể được xoá trong vài giây. Tất nhiên là để dùng AT89C51 cần phải có thiết bị lập trình PROM hổ trợ bộ nhớ Flash nhưng không cần đến thiết bị xoá ROM vì bộ nhớ Flash được xoá bằng thiết bị lập trình PROM. Để tiện cho việc sử dụng, hiện nay hãng Atmel đang nghiên cứu một phiên bản của AT89C51 cò thể lập trình qua cổng COM của máy tính PC và như vậy sẽ không cần đến thiết bị lập trình PROM.
a. Một số nét đặc trưng:
Tương thích với sản phẩm MCS-51
Bộ nhớ chương trình bên trong: 4KB (ROM)
Bộ nhớ dữ liệu bên trong: 128 KB (RAM)
Port xuất nhập (I/O port) :32
2 bộ định thời 16 bit
Ngắt :6
Nguồn cấp :Vcc =5V
3 vị trí khoá bộ nhớ chương trình.
Mạch giao tiếp nối tiếp.
Hoạt động tĩnh: từ 0 Hz đến 24 MHz
Chạy không nguồn thấp và chế độ giảm nguồn.
Số chân IC :40
b. Sơ đồ khối của chip AT89C51
c. Sơ đồ chân và chức năng các chân của vi điều khiển AT89C51
chức năng:
Vcc:nguồn cấp (chân số 40)
GND: Nối đất (chân số 20 )
Port 0:
Port 0 (P0.0 – P0.7) có số chân từ 32- 39
Port 0 là port xuất nhập 8bit 2 chiều. Port 0 được định hình làm bus địa chỉ (byte thấp) và làm bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài và bộ nhớ chương trình ngoài. Port 0 nhận các byte mã trong khi lập trình cho Flash và xuất các byte mã trong khi kiểm tra chương trình.
Port 1 :
Port 1 (P1.0 – P1.7) có số chân từ 1 – 8.
Port 1 là một port xuất nhập 8bit có các điện trở kéo lên bên trong.khi các logic 1 được đặt lên các chân của port 1, các chân này được kéo lên mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi thực hiện là các port nhập, các chân của port 1 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng cho các điện trở kéo lên bên trong.
Port 2 :
Port 2 (P2.0 – P2.7) có số chân từ 21 -28
Port 2 là port xuất nhập 8bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 2, các chân này được sử dụng như là các ngõ vào. Khi thực hiện chức năng port nhập, các chân port 2 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bên trong. Port 2 tạo ra byte cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớchương trình ngoài và trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 16 bit.
Port 3 :
Port 3 (P3.0 - P3.7) có số chân từ 10 – 17
Port 3 là port xuất nhập 8 bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 3 các chân này được đưa lê mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi làm chức năng port nhập, các chân port 3 được kéo xuống mức thấp do tác động bên ngoài cấp dòng do có các điện trở kéo lên bên trong. Port 3 còn được sử dụnglàm các chức năng khác của AT89C51.
Chức năng của các chân được mô tả qua bảng sau :
Bit
Tên
Địa chỉ bit
Chức năng
P3.0
RxD
B0H
Chân nhận dữ liệu của port nối tiếp
P3.1
TxD
B1H
Chân phát dữ liệu của port nối tiếp
P3.2
INTO\
B2H
Ngõ vào ngắt ngoài 0
P3.3
INT1\
B3H
Ngõ vào ngắt ngoài 1
P3.4
T0
B4H
Ngõ vào của bộ định thời/đếm 0
P3.5
T1
B5H
Ngõ vào của bộ định thời/đếm 1
P3.6
WR\
B6H
Điều khiển ghi vào RAM ngoài
P3.7
RD\
B7H
Điều khiển đọc từ RAM ngoài
RST : Thiết lập lại ( chân 9). Mức cao trên chân này trong 2 chu kì máy trong khi bộ dao động đang hoạt động sẽ Reset AT89C51.
Mạch Reset tự động khi khởi động máy
Ở đây chúng ta thực hiện Reset bằng cách nối chân 9 của 8951 với nguồn 5V.
Chân ALE (Address Latch Enable) /: chân số 3
Là một xung ngõ ra cho phép chốt địa chỉ, cho phép chốt byte thấp của địa chỉ trong thời gian truy xuất bộ nhớ ngoài. Chân này cũng được dùng làm ngõ vào xung lập trình () trong thời gian lập trình cho Flash.
Khi hoạt động bình thường, xung của ngõ ra ALE luôn luôn có tần số bằng 1/6 tần số của mạchdao động trên chip, có thể được sử dụng cho các mục đích định thời từ bên ngoài và tạo xung Clock. Tuy nhiên cần lưu ý là một xung ALE sẽ bị bỏ qua trong mỗi chu kì truy xuất của bộ nhớ dữ liệu ngoài. Khi cần hoạt động cho phép chốt byte thấp của địa chỉ sẽ được vô hiệu hoá bằng cách set bit 0 của thanh ghi chức năng đặc biệt (SFR) có địa chỉ byte là 8EH. Khi bit này được set, ALE chỉ tích cực trong thời gian thực hiện lệnh MOVX hoặc MOVC. Ngược lại chân này sẽ được đưa lên mức cao. Việc set bit không cho phép hoạt động chốt byte thấp của địa chỉ sẽ không có tác dụng nếu bộ điều khiển đang ở chế độ thực thi chương trình ngoài.
Chân (Program Store Enable):cho phép đọc bộ nhớ chương trình, chân số 29
Khi 8951 thực thi mã từ bộ nhớ chương trình ngoài, được hoạt động 2 lần trong mỗi chu kỳ máy ngoại trừ hoạt của được bỏ qua trong mỗi bộ nhớ dữ liệu ngoài.
Chân/ Vpp (External Access): truy xuất ngoài , chân số 31
phải đươc nối với GND cho phép xuất mã từ vị trí bộ nhớ chương trình ngoài bắt đầu tại 0000H đến FFFFH.
Chú ý:cho dù thế nào, nếu khoá bit 1 được lập trình, sẽ được chốt bên trong lúc Reset.
nối Vcc để thực hiện chương trình bên trong.
Chân này nhận điện áp cho phép lập trình là 12V (Vpp) trong khi lập trình Flash
Chân XTAL 1 (Crysral), hân 18)
Ngõ vào mạch khuếch đại đảo của mạch dao động và ngõ vào mạch tạo xung Clock bên trong chip
Chân XTAL 2(chân 19)
Ngõ ra mạch khuếch đại đảo của mạch dao động.
Để tạo dao động cho vi điều khiển AT89C51 hoạt động, chúng em chọn mạch dao động như hình vẽ sau với các giá trị của linh kiện: C1= C2=3pF
Thạch anh dao động có tần số 12MHz
Cách mắc của mạch dao động
1.2 Cảm biến nhiệt LM 35
LM35 là họ cảm biến nhiệt, mạch tích hợp chính xác cao có điện áp đầu ra tỉ lệ tuyến tính với nhiệt độ theo thang độ Celsius. Họ cảm biến này không yêu cầu cân chỉnh ngoài vì vốn nó đã được cân chỉnh, coù theå hoaït ñoäng ñeán 1500C töông öùng vôùi nhieät ñoä 00 K , LM35 cho ra ñieän aùp 0V . Cöù taêng 100 C ,ñieän aùp ra taêng 10mV. Nhö vaäy vôùi 00 C thì ñieän aùp laø 2.73V.
Ý nghĩa các chân (TO92):
Chân 1:V+
Chân 2:Vout
Chân 3:GND
Một số tính chất cơ bản của LM35:
LM35 có độ biến thiên theo nhiệt độ: 10mV / 1oC.
Độ chính xác cao, tính năng cảm biến nhiệt độ rất nhạy, ở nhiệt độ 25oC nó có sai số không quá 1%. Với tầm đo từ 0oC – 128oC, tín hiệu ngõ ra tuyến tính liên tục với những thay đổi của tín hiệu ngõ vào.
Thông số kỹ thuật:
Tiêu tán công suất thấp.
Dòng làm việc từ 400mA – 5mA.
Dòng ngược 15mA.
Dòng thuận 10mA.
Độ chính xác: khi làm việc ở nhiệt độ 25oC với dòng làm việc 1mA thì điện áp ngõ ra từ 2,94V – 3,04V.
Đặc tính điện:
Theo thông số của nhà sản xuất LM35, quan hệ giữa nhiệt độ và điện áp ngõ ra như sau:
Vout = 0,01´ToK
= 2,73 + 0,01ToC.
Vậy ứng với tầm hoạt động từ 0oC – 100oC ta có sự biến thiên điện áp ngõ ra là:
Ở 0oC thì điện áp ngõ ra Vout = 2,73 (V).
Ở 5oC thì điện áp ngõ ra Vout = 2,78 (V).
……………………………………
Ở 100oC thì điện áp ngõ ra Vout = 3,73 (V).
Tầm biến thiên điện áp tương ứng với nhiệt độ từ 0oC - 100oC là 1V.
1. 3 Bộ chuyển đổi ADC 0804
ADC0804 là bộ chuyển đổi tương tự số thuộc họ ADC0800, chip này có nguồn nuôi +5V và độ phân giải 8bit. Ngoài độ phân giải thì thời gian chuyển đổi cũng là tham số quan trọng khi đánh giá bộ ADC. Thời gian chuyển đổi được định nghĩa là thời gian mà bộ ADC cần để chuyển một đầu vào tương tự thành một số nhị phân. Đối với ADC0804 thời gian chuyển đổi phụ thuộc vào tần số đồng hồ được cấp tới chân CLK và CLK IN và không bé hơn .
Các chân có chức năng như sau:
CS (chip select) – chọn chip
Đầu vào tích cực mức thấp được sử dụng đẻ kích hoạt ADC0804.
RD (Read) – đọc
Đây là tín hiệu vào, tích cực mức thấp. Các bộ ADC chuyển đổi đầu vào tương tự thành số nhị phân và giữ nó ở một thanh ghi trong. RD được sử dụng để có dữ liệu đã được chuyển đổi tới đầu ra của ADC0804. Khi CS =0 nếu có 1 xung cao xuống thấp đến chân RD thì dữ liệu ra dạng số 8 bit được đưa tới các chân dữ liệu D0 –D7. Chân RD còn được xem là cho phép đầu ra.
WR (Write) – Ghi
Là chân tích cực mức thấp được dùng để báo cho ADC0804 bắt đầu chuyển đổi. Nếu CS = 0 khi WR tạo ra xung cao xuống thấp thì bộ ADC0804 bắt đầu tiến hành chuyển đổi giá trị đầu vào tương tự Vin về số nhị phân 8bit. Lượng thời gian cần thiết để chuyển đổi thay đổi phụ thuộc vào tần số đưa đến chân CLK IN và CLK R. Khi việc chuyển đổi dữ liệu được hoàn tất thì chân INTR ở mức thấp.
CLK IN và CLK R
CLK IN là chân vào nối tới đồng hồ ngoài khi đồng hồ ngoài sử dụng để tạo thời gian. Để dùng đồng hồ riêng thì các chân CLK IN và CLK R được nối với 1 tụ điện và 1 điện trở như hình vẽ:
Ngắt INTR
Ngắt ( kết thúc chuyển đổi), đây là chân ra tích cực mức thấp. Bình thường chân này ở mức cao và khi việc chuyển đổi hoàn tất thì nó xuống thấp khi đó đặt CS = 0 và gửi 1 xung cao xuống thấp tới chân RD để đưa dữ liệu ra.
Vin(+) và Vin(-)
Là 2 đầu vào tương tự vi sai, Vin = Vin(+) – Vin(-). Vin(-) nối mass, Vin(+) dùng làm đầu vào tương tự và sẽ được chuyển đổi về dạng số.
Vcc
Nguồn +5V, dùng làm điện áp tham chiếu khi đầu vàoVref/2 (chân 9) hở.
Vref/2
Chân 9 là điện áp đầu vào dùng làm điện áp tham chiếu
D0 – D7
Là các chân ra dữ liệu (D7 là bit cao nhất MSB, D0 là bit thấp nhất LSB)
Các chân này được đệm 3 trạng thái và dữ liệu đã được chuyển đổi chỉ được truy cập khi chân CS =0 và RD mức thấp.
Chân đất tương tự và chân đất số A GND, D GND
Là những chân đầu vào cấp đất chung cho cả tín hiệu số và tương tự.
1.4 Bộ đệm không đảo 74LS245
Là thiết bị cho phép chuyển giao dữ liệu từ bus A đến bus B hoặc bus B đến bus A phụ thuộc vào mức logic ngõ vào điều khiển trực tiếp (DIR), ngõ vào cho phép () dùng để không cho phép thiết bị hoạt động để cách li các đường bus hiệu quả .
Đặc điểm:
Có 20 chân
3 trạng thái nõ ra điều khiển trực tiếp đường bus
Ngõ vào PNP giảm tải DC trên đường bus
Hiện tượng trễ ở bus ngõ vào nhằm cải thiện mép nhiễu
Loại truyền thời gian delay port đến port 8ns
Loại thời gian cho phép/ không cho phép 17 ns
IOL =24 mA
IOH = -15 mA
2. Nguyên lý hoạt động :
Dùng cảm biến nhiệt độ kết hợp thời gian để điều khiển hệ thống tưới nước .Mạch hoạt động theo nguyên tắc sau:
- Buổi sáng : 5g- 6g + t³200C à tự động tưới
- Buổi chiều :17g-18g + t³200C à tự động tưới
3. Lưu đồ giải thuật
Nhiệt độ:Nhập dữ liệu từ ADC giải mã hiển thị nhiệt độ.
Hiển thị: Giải mã và hiển thị đồng hồ
Tăng giá trị Led: Tăng giờ, phút, giây
Điều khiển :Kiểm tra nhiệt độ và thời gian để điều khiển động cơ
BẮT ĐẦU
KHỞI TẠO TMOD
KHỞI TẠO IE
BUỘC NGẮT T0
NHIỆT ĐỘ
HIỂN THỊ
TĂNG GIÁ TRỊ
ĐIỀU KHIỂN
4. Chương trình
$MOD51
GIO EQU 30H
PHUT EQU 31H
GIAY EQU 32H
PTRAM_GIAY EQU 33H
CS BIT P3.0
READ BIT P3.1
WRITE BIT P3.2
INTR BIT P3.3
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0_ISR
ORG 0030H
MAIN:
CLR CS
CLR READ
MOV IE,#82H
MOV GIAY,#00H
MOV PHUT,#00H
MOV GIO,#00H
MOV PTRAM_GIAY,#00H
CLR P3.7
MOV R1,#10
MOV TMOD,#01H
SETB TF0
SETB TR0
CT_CHINH:
ACALL NHIETDO
ACALL DISPLAY
ACALL CHINH_GIAY
ACALL SOSANH
ACALL SOSANH1
LJMP CT_CHINH
T0_ISR:
MOV TH0,#HIGH(-10000)
MOV TL0,#LOW(-10000)
INC PTRAM_GIAY
MOV R0,PTRAM_GIAY
CJNE R0,#100,THOAT
MOV PTRAM_GIAY,#00H
INC GIAY
MOV R0,GIAY
CJNE R0,#60,THOAT
MOV GIAY,#00H
INC PHUT
MOV R0,PHUT
CJNE R0,#60,THOAT
MOV PHUT,#00H
INC GIO
MOV R0,GIO
CJNE R0,#24,THOAT
MOV GIO,#00H
RETI
THOAT:
RETI
NHIETDO:
CLR WRITE
SETB WRITE
JB INTR,$
MOV A,P1
MOV DPTR,#BANGSO
MOV B,#10
DIV AB
MOV 25H,A
MOV 26H,B
MOV 27H,25H
MOV 28H,26H
MOV P0 ,#11111110B
MOV A,28H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
MOV P0 ,#11111101B
MOV A,27H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
TACHSO:
MOV B,#10
DIV AB
MOV 40H,A
MOV 41H,B
RET
DISPLAY:
ACALL GAN1
ACALL LED1
ACALL LED2
ACALL LED3
ACALL LED4
ACALL LED5
ACALL LED6
RET
GAN1:
MOV DPTR,#BANGSO
MOV A,GIAY
ACALL TACHSO
MOV 34H,41H
MOV 35H,40H
MOV A,PHUT
ACALL TACHSO
MOV 36H,41H
MOV 37H,40H
MOV A,GIO
ACALL TACHSO
MOV 38H,41H
MOV 39H,40H
RET
LED1:
MOV P0 ,#11111011B
SETB P0.0
MOV A,34H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
LED2:
MOV P0 ,#11110111B
SETB P0.0
SETB P0.7
MOV A,35H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
LED3:
MOV P0 ,#11101111B
SETB P0.0
SETB P0.7
MOV A,36H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
LED4:
MOV P0 ,#11011111B
SETB P0.0
SETB P0.7
MOV A,37H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
LED5:
MOV P0 ,#10111111B
SETB P0.0
SETB P0.7
MOV A,38H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
LED6:
MOV P0 ,#01111111B
SETB P0.0
MOV A,39H
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY
MOV P0,#0FFH
RET
TAT_LED1:
MOV P2,#0C0H
MOV P0,#00H
ACALL DELAY
MOV P0,#0FFH
ACALL DELAY
MOV P2,#0C0H
MOV P0,#00H
ACALL DELAY
MOV P0,#0FFH
RET
NN1:
DJNZ R1,TAT_LED1
ACALL LED1
ACALL LED2
MOV R1,#10
RET
NN2:
DJNZ R1,TAT_LED1
ACALL LED3
ACALL LED4
MOV R1,#10
RET
NN3:
DJNZ R1,TAT_LED1
ACALL LED5
ACALL LED6
MOV R1,#10
RET
CHINH_GIAY:
JB P3.4,THOAT1
A_GIAY:
ACALL DELAY_NUT
ADJ_GIAY:
MOV R7,#0
ACALL GAN1
ACALL NN1
ACALL LED3
ACALL LED4
ACALL LED5
ACALL LED6
JNB P3.5,A_PHUT
JNB P3.4,THOAT1
JB P3.6,ADJ_GIAY
ADJ_GIAY1:
MOV B,#30
INC R7
MOV A,R7
DIV AB
MOV A,B
CJNE A,#0,ADJ_GIAY2
INC GIAY
MOV A,GIAY
CJNE A,#60,ADJ_GIAY2
MOV GIAY,#0
ADJ_GIAY2:
ACALL DISPLAY
JNB P3.5,ADJ_GIAY1
ACALL ADJ_GIAY
RET
THOAT1:
RET
A_PHUT:
ACALL DELAY_NUT
ADJ_PHUT:
MOV R7,#0
ACALL GAN1
ACALL LED1
ACALL LED2
ACALL NN2
ACALL LED5
ACALL LED6
JNB P3.5,A_GIO
JNB P3.4,THOAT2
JB P3.6,ADJ_PHUT
ADJ_PHUT1:
MOV B,#30
INC R7
MOV A,R7
DIV AB
MOV A,B
CJNE A,#0,ADJ_PHUT2
INC PHUT
MOV A,PHUT
CJNE A,#60,ADJ_PHUT2
MOV PHUT,#0
ADJ_PHUT2:
ACALL DISPLAY
JNB P3.6,ADJ_PHUT1
ACALL ADJ_PHUT
RET
;--------------------------------------------------
A_GIO:
ACALL DELAY_NUT
ADJ_GIO:
MOV R7,#0
ACALL GAN1
ACALL LED1
ACALL LED2
ACALL LED3
ACALL LED4
ACALL NN3
JNB P3.5,A_GIAY
JNB P3.4,THOAT2
JB P3.6,ADJ_GIO
ADJ_GIO1:
MOV B,#50
INC R7
MOV A,R7
DIV AB
MOV A,B
CJNE A,#0,ADJ_GIO2
INC GIO
MOV A,GIO
CJNE A,#24,ADJ_GIO2
MOV GIO,#0
ADJ_GIO2:
ACALL DISPLAY
JNB P3.6,ADJ_GIO1
ACALL ADJ_GIO
RET
THOAT2:
RET
SOSANH:
MOV A,GIO
CJNE A,#05,THOAT3
MOV A,PHUT
CJNE A,#00,THOAT3
MOV A,GIAY
CJNE A,#00,THOAT3
MOV A,P1
CJNE A,#20,$+3
JC THOAT3
SETB P3.7
RET
SOSANH1:
MOV A,GIO
CJNE A,#06,THOAT3
MOV A,PHUT
CJNE A,#00,THOAT3
MOV A,GIAY
CJNE A,#00,THOAT3
CLR P3.7
RET
THOAT3:
RET
DELAY_NUT:
MOV R5,#50
AGAIN1:
DJNZ R5,$
RET
BANGSO:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
RET
DELAY:
PUSH 00H
PUSH 01H
MOV R1,#5
LOOP:
MOV R0,#250
DJNZ R0,$
DJNZ R1,LOOP
POP 01H
POP 00H
RET
END
5. Sơ đồ mạch in
6. Sơ đồ nguyên lý
III. KẾT LUẬN
Trên đây là ý tưởng thiết kế của chúng em, phần nào là giải pháp thiết thực để giúp bà con nông dân thoát khỏi phương pháp thủ công và góp một phần nhỏ nào trong công cuộc đổi mới trong nông nghiệp. Từ những nền tảng sẵn có chúng ta có thể nghĩ ra những ý tưởng khác nữa, tùy vào mục đích sử dụng mà tìm những thiết bị phù hợp cho ý tưởng của mình. Mong rằng rồi đây sẽ còn có nhiều sản phẩm điện tử mới được ra đời đáp ứng được nhu cầu của con người và tiến dần đến tự động hóa trong tất cả các lĩnh vực.
Các file đính kèm theo tài liệu này:
- Máy tưới nước tự động thích hợp để tưới nước cho cây.doc