Phần 2: NỘI DUNG THIẾT KẾ CHƯƠNG 1: GIỚI THIỆU CÁC KHỐI VÀ CÁC THIẾT BỊ TRONG MẠCH

Một phần của tài liệu Nghiên cứu thiết kế KIT thí nghiệm vi điều khiển (Trang 28)

MẠCH

1.1. Giới thiệu về các IC trong mạch

1.1.1. AT89S52

Hình 1.1: Sơ đồ chân của AT89s52

Chức năng các chân của AT89C52:

 Port 0( P0.0=>P0.7)

Port 0 gồm 8 chân, ngoài chức năng xuất nhập, port 0 còn là bus đa hợp dữ liệu và địa chỉ( AD0-AD7), chức năng này sẽ được sử dụng khi 89c52 giao tiếp với các thiết bị ngoài có kiến trúc Bus như các vi mạch nhớ, mạch PIO…

 Port 1( P1.0=>P1.7)

Chức năng duy nhất của Port 1 là chức năng xuất nhập cũng như các Port khác. Port1 có thể xuất nhập theo bit và theo byte.

 Port 2( P2.0=>P2.7)

Port 2 ngoài chức năng là cổng vào/ra như Port 0 và 1 còn là byte cao của bus địa chỉ khi sử dụng bộ nhớ ngoài.

 Port 3

Mỗi chân trên Port 3 ngoài chức năng xuất nhập còn có một chức năng riêng, cụ thể như sau:

Bảng 1.1: Chức năng các chân Port3

P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu truyền cho Port nối tiếp

P3.2 INT0 Ngắt bên ngoài 0

P3.3 INT1 Ngắt ngoài 1

P3.4 TO Ngõ vào của Timer/counter0

P3.5 T1 Ngõ vào của Timer/counter1

P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài. P3.7 /RD Xung đọc bộ nhớ dữ liệu ngoài.

 Chân /PSEN : là chân điều khiển đọc chương trình ở bộ nhớ ngoài.

 Chân ALE.

ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của vi điều khiển. Tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như 7473.

 Chân /EA.

Tín hiệu /EA cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài. EA=1 thì thực hiện chương trình trong RAM nội. EA=0 thực hiện ở RAM ngoài.

 RST( reset)

Ngõ vào reset trên chân số 9. khi RST=1 thì bộ vi điều khiển sẽ được khởi động lại thiết lập ban đầu.

 XTAL1, XTAL2

2 chân này được nối song song với thạch anh tần số max=33 Mhz. Để tạo dao động cho bộ vi điều khiển.

 Vcc, GND : cung cấp nguồn nuôi cho bộ vi điều khiển. cấp qua chân 20 và 40.

1.1.2. ADC0804 (adsbygoogle = window.adsbygoogle || []).push({});

Khối chuyển đổi tương tự sang số.

Các bộ chuyển đổi ADC thuộc những thiết bị được sử dụng rộng rãi nhất để thu dữ liệu. Các máy tính số sử dụng các giá trị nhị phân, nhưng trong thế giới vật lý thì mọi đại lượng ở dạng tương tự (liên tục). Nhiệt độ, áp suất (khí hoặc chất lỏng), độ ẩm và vận tốc và một số ít những đại lượng vật lý của thế giới thực mà ta gặp hằng ngày. Một đại lượng vật lý được chuyển về dòng điện hoặc điện áp qua một thiết bị được gọi là các bộ biến đổi. Các bộ biến đổi cũng có thể coi như các bộ cảm biến. Mặc dù chỉ có các bộ cảm biến nhiệt, tốc độ, áp suất, ánh sáng và nhiều đại lượng tự nhiên

khác nhưng chúng đều cho ra các tín hiệu dạng dòng điện hoặc điên áp ở dạng liên tục. Do vậy, ta cần một bộ chuyển đổi tương tự số sao cho bộ vi điều khiển có thể đọc được chúng. Một chip ADC được sử dụng rộng rãi là ADC0804.

Hình 1.2 Sơ đồ chân ADC 804

Chip ADC0804 là bộ chuyển đổi tương tự số thuộc họ ADC800 của hãng

National Semiconductor. Chip này cũng được nhiều hãng khác sản xuất. Chip có điện áp nuôi +5V v à độ phân giải 8 bit. Ngoài độ phân giải thì thời gian chuyển đổ i cũng là một 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ì 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 110µs. Các chân khác của ADC0804 có chức năng như sau:

+ CS (Chip select): Chân số 1, là chân chọn Chip, đầu vào tích cực mức thấp được sử dụng để kích hoạt Chip ADC0804. Để truy cập ADC0804 th ì chân này phải ở mức thấp.

+ RD (Read): Chân số 2, là một tín hiệu vào, tích cực ở mức thấp. Các bộ 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 chyển đổi tới đầu ra của ADC0804. Khi CS = 0 nếu có một xung cao xuống thấp á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 (DB0 – DB7).

+ WR (Write): Chân số 3, đây là chân vào tích c ực mức thấp được dùng để báo cho ADC biết bắt đầu quá trình chuyển đổi. Nếu CS = 0 khi WR tạo ra xung cao xuống thấp thì bộ ADC0804 bắt đầu quá trình chuyển đổi giá trị đầu vào tương tự Vin về số nhị phân 8 bit. Khi việc chuyển đổi hoàn tất thì chân INTR được ADC hạ xuống thấp.

+ CLK IN và CLK R: CLK IN (chân số 4), là chân vào nối tới đồng hồ ngo ài được sử dụng để tạo thời gia n. Tuy nhiên ADC0804 c ũng có một bộ tạo xung đồng hồ ri êng. Để dùng đồng hồ riêng thì các chân CLK IN và CLK R (chân s ố 19) được nối với một tụ điện v à một điện trở (như hình vẽ). Khi đó tần số được xác định bằng biểu thức:

F = 1/ 1.1RC

Với R = 10 kΩ, C = 150 pF và tần số f = 606 kHz và thời gian chuyển đổi l à 110 µs. + Ngắt INTR (Interupt): Chân số 5, là chân ra tích c ực mức thấp. Bình thường chân này ở trạng thái cao v à khi việc chuyển đổi ho àn tất thì nó xuống thấp để báo cho CPU biết l à dữ liệu chuyển đổi sẵn sàng để lấy đi. Sau khi INTR xuống thấp, cần đặt CS = 0 và gửi một xung cao xuống thấp tới chân RD để đưa dữ liệu ra.

+ Vin (+) và Vin (-): Chân số 6 và chân số 7, đây là 2 đầu vào tương tự vi sai, trong đó V in = Vin(+) – Vin(-). Thông thường Vin(-) được nối tới đất và Vin(+) được dùng làm đầu vào tương tự và sẽ được chuyển đổi về dạng số.

+ Vcc: Chân số 20, là chân nguồn nuôi +5V. Chân này còn được dùng làm điện áp tham chiếu khi đầu vào Vref/2 để hở.

+ Vref/2: Chân số 9, là chân điện áp đầu vào được dùng làm điện áp tham chiếu. Nếu chân này hở thì điện áp đầu vào tương tự cho ADC0804 nằm trong dải 0 đến +5V. Tuy nhiên, có nhiều ứng dụng mà đầu vào tương tự áp đến Vin khác với dải 0 đến +5V. Chân Vref/2 được dùng để thực hiện các điện áp đầu ra khác 0 đến +5V.

Bảng 1.2 – Quan hệ điện áp V ref/2 với Vin

Vref/2 (V) Vin (V) Kích thước bước (mV)

Hở 0 – 5 5/256 = 19.53 2.0 0 – 4 4/256 = 15.62 1.5 0 – 3 3/256 = 11.71 1.28 0 – 2.56 2.56/256 = 10 1.0 0 – 2 2/256 = 7.81 0.5 0 – 1 1/256 = 3.90

+ D0 - D7: D0 - D7, chân số 18 – 11, là các chân ra d ữ liệu số (D7 là bit cao nhất MSB và D0 là bit thấp nhất LSB). Các chân này được đệm ba trạng thái và dữ liệu đã được chuyển đổi chỉ được truy cập khi chân CS = 0 và chân RD đưa xu ống mức thấp. Để tính điện áp đầu ra ta tính theo công thức sau:

Dout = Vin / Kích thước bước

CÁC BƯỚC CỦA QUÁ TRÌNH CHUYỂN ĐỔI.

• Đặt WR =RD=1

• Bắt đầu biến đổi. Đặt WR=0, trễ( )ms.

• Đặt lại WR=1

• Phát hiện điểm kết thúc của quá trình biến đổi khi INTR xuống mức thấp(được sử dụng bởi ngắt)

• Đặt RD=0 và đọc dữ liệu từ DB0=>DB7.

• Đặt RD=1 => kết thúc chu trình.

1.1.3. 74HC595

Là IC ghi dịch 8 bít kết hợp chốt dữ liệu, đầu vào nối tiếp đầu ra song song. Thường dùng trong mạch quét led 7 thanh, led matrix …để tiết kiệm số chân vi điều khiển tối đa (3 chân). Có thể mở rộng số chân điều khiển bao nhiêu tùy thích mà không IC nào có thể làm được bằng cách mắc nối tiếp đầu vào dữ liệu các IC với nhau.

Hình 1.3 Sơ đồ chân IC 74HC595 (adsbygoogle = window.adsbygoogle || []).push({});

Chân Input (chân số 14):

Đầu vào dữ liệu nối tiếp tại một thời điểm xung clock chỉ đưa vào được 1 bit.

Chân Output:

Từ chân QA÷QH (chân 15, 1, 2, 3, 4, 5, 6, 7). Xuất dữ liệu khi chân 13 tích cực ở mức thấp và có một xung tích cực ở sườn âm tại chân chốt 12.

Chân cho phép tích cực ở mức thấp và có một xung ở mức cao tất cả các đầu ra của 74HC595 trở về trạng thái cao trở, không có đầu vào ra nào được cho phép.

SQH (chân số 9):

Chân dữ liệu nối tiếp, nếu dùng nhiều 74HC595 mắc nối tiếp nhau thì chân này được đưa vào đầu vào của con nối tiếp khi đã dịch đủ 8 bit.

SHIFT CLOCK (chân số 11):

Chân vào xung clock. Khi có một xung clock tích cực ở sườn dương (từ 0 lên 1) thì bit 1 được dịch vào IC.

LATCH CLOCK (chân số 12):

Xung clock chốt dữ liệu. Khi có một xung clock dương thì cho phép xuất dữ liệu trên chân Output. Và có thể xuất dữ liệu bất cứ lúc nào.

RESET (chân số 10):

Khi chân này ở mức thấp (mức 0) thì dữ liệu sẽ bị xoá trên chip.

1.1.4. LM358

Hình 1.4 Sơ đồ chân của LM358

LM 358 là IC khuếch đại thuật toán thông dụng gồm 2 bộ khuếch đại thuật toán riêng biệt. Là IC 8 chân đóng gói dạng DIP 100T điện áp hoạt động: +-1.5 V và +- 16 V. - Chân 1: đầu ra bộ khuếch đại thuật toán A

- Chân 2 : đầu vào đảo bộ khuếch đại thuật toán A

- Chân 3 : đầu vào không đảo bộ khuếch đại thuật toán A - Chân 4 : cấp nguồn âm

- Chân 5 : đầu vào không đảo bộ khuếch đại thuật toán B - Chân 6 : đầu vào đảo bộ khuếch đại thuật toán B

- Chân 7 : đầu ra bộ khuếch đại thuật toán B - Chân 8 : cấp nguồn dương

Ghép nối qua cổng nối tiếp RS232 là một trong những kỹ thuật được sử dụng rộng rãi để ghép nối các thiết bị ngoại vi với máy tính.Nó là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nối nhiều nhất là 2 thiết bị , chiều dài kết nối lớn nhất cho phép để đảm bảo dữ liệu là 12.5 đến 25.4m, tốc độ 20kbit/s đôi khi là tốc độ 115kbit/s với một số thiết bị đặc biệt.

Trong RS232 là chuẩn giao diện I/O ra đời khá lâu, trước khi có mạch điện tử TTL(Transistor Transistor Logic) với mức điện áp là mức 1 tương ứng từ -3v đến -25v, còn mức 0 tương ứng +3v đến +25v, khoảng -3v đến +3v là trạng thái chuyển tuyến nên không xác định. Tốc độ truyền dữ liệu cực đại là 100kbps(ngày nay có thể lớn hơn), lối vào điện dung nhỏ hơn 2500uF, trở kháng tải lớn hơn 3000Ώ nhỏ hơn 7000Ώ.

Hình 1.5 Sơ đồ đầu nối và hình dạng thực tế của DB-9 của RS23

• Chức năng các chân:

Chân 1(DCD): Tách tín hiệu mang dữ liệu Chân 2(RXD): Dữ liệu được nhận

Chân 3(TXD): Dữ liệu được gửi

Chân 4(DT R): Đầu cuối dữ liệu sẵn sang được kích hoạt bởi bộ phận khi muốn truyền dữ liệu.

Chân 5(GND): Đất của tín hiệu

Chân 6(DSR): Dữ liệu sẵn sang, được kích hoạt bởi bộ truyền khi nó sẵn sang hoạt động (adsbygoogle = window.adsbygoogle || []).push({});

Chân 7(RTS): Yêu cầu gửi, bộ truyền đặt đường này lên mức hoạt động khi sẵn sàng truyền dữ liệu

Chân 8(CTS): Xóa để gửi, bộ truyền đặt đường này lên mức hoạt động để thong báo bộ truyền nó sẵn sang nhận tín hiệu.

Chân 9(RL): Báo chuông cho biết bộ phận nhận tín hiệu đang rung.

• Cách thức trao đổi qua cổng nối tiếp:

Thao tác trao đổi dữ liệu qua cổng nối tiếp không đơn thuần là việc ghi/đọc dữ liệu như trao đổi dữ liệu trực tiếp qua các cổng mà còn bao gồm 3 thao tác chính sau: - Khởi tạo cổng nối tiếp: truy xuất SCON để đặt thông số như chế độ hoạt động , cho phép thu…,thiết lập hoặc xóa cờ bit SMOD của thanh ghi PCON để đặt hệ số chia tốc độ baud,truy xuát các thanh ghi của các bộ Timer1 và Timer2 để đặt tốc độ baud cho cổng nối tiếp (chỉ với chế độ 1 và 3).

- Kiểm tra cờ TI(khi truyền) và cờ RI(kh nhận). - Ghi/đọc byte dữ liệu ở SBUP.

• Sơ đồ cấu trúc chức năng của MAX 232

Vì cổng Com thường ở mức +12v, -12v nên không tương thích với điện áp TTL nên để giao tiếp kit vi điều khiển với 8051 với máy tính qua cổng COM ta phải qua một vi mạch biến dổi điện áp cho phù hợp với TTL.

Vi mạch MAX 232 của hãng MAXIM là một vi mạch chuyên dùng trong giao diện nối tiếp với máy tính. Chúng có nhiệm vụ chuyển đổi mức TTL ở lối vào thành mức +10V hoặc –10V ở phía truyền và các mức +3 ÷ +15V hoặc -3 ÷ -15V thành mức TTL ở phía nhận.

Vi mạch MAX 232 có hai bộ đệm và hai bộ nhận. Đường dẫn điều khiển lối vào CTS, điều khiển việc xuất ra dữ liệu ở cổng nối tiếp khi cần thiết, được nối với chân 9 của vi mạch MAX 232. Còn chân RST (chân 10 của vi mạch MAX) nối với đường dẫn bắt tay để điều khiển quá trình nhận. Thường thì các đường dẫn bắt tay được nối với cổng nối tiếp qua các cầu nối, để khi không dùng đến nữa có thể hở mạch các cầu này. Cách truyền dữ liệu đơn giản nhất là chỉ dùng ba đường dẫn TxD, RxD và GND (mass).

Hình 1.6 Sơ đồ chân và hình dạng thực tế của MAX232

- T1 in, T2 in trên chân số 10 và 11 là chân ngõ nhỏ vào phát. - T1 out, T2 out trên chân số 14 và 7 là chân ngõ nhỏ ra phát. - R1 in, R2 in trên chân số 13 và 8 là ngõ nhỏ vào thu.

- R1 out, R2 out trên chân số 12 và 9 là ngõ nhỏ ra thu.

1.1.6. DS1307

DS1307 là một chip đồng hồ thời gian thực (RTC: Real Time Clock). DS1307 là một sản phẩm của Dallas Semiconductor (một công ty thuộc Muxim Intergrated Product) chip này có 7 thanh ghi 8 bit chứa thời gian là giờ, phút, giây, thứ trong tuần, ngày, tháng, năm. Ngoài ra DS1307 còn có một thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống có thể dùng như RAM. DS1307 xuất hiện ở 2 gói SOIC và Dip có 8 chân.

Hình 1.7 Sơ đồ chân DS1307

+ X1, X2: Là 2 ngõ vào kết nối với một thạch anh 33.768 KHz làm nguồn tạo dao động cho chip.

+ VBAT: Cực dương của 1 nguồn pin 3v nuôi chip. + GND: Chân mass chung cho cả pin 3v và VCC.

+ VCC: Nguồn cho giao diện I2C thường là 5v và dùng chung với vi điều khiển. Nếu Vcc không được cấp nguồn nhưng VBAT vẫn được cấp thì DS1307 vẫn hoạt động nhưng không ghi và đọc được

+ SQW/OUT: 1 ngõ phụ tạo xung vuông tần số của xung được tạo có thể được lập trình, chân này không liên quan đến chức năng của DS1307.

+ SCL và SDA: Là 2 đường giao xung nhịp và dữ liệu của giao diện I2C.

• Tổ chức bộ nhớ của từng thanh ghi

Bảng 1.3: Tổ chức bộ nhớ của từng thanh ghi

SECONDS MINUSES HOURS DAY DATE MOTH YEAR CONTROL RAM 56X8 BIT 7 BIT 0 CH 10 SECONDS SECONDS 0 10 MINUTES MINUTES 0 12 10HR 10HR HOURS 0 0 0 0 DAY 0 10 DATE DATE 0 0 10 MONTH 00H 07H 08H 3FH 24 AM/PM

MONTH 10 YEAR

YEAR

Thanh ghi giây (SECONS): Thanh ghi này là thanh ghi đầu tiên trong bộ nhớ của

DS1307 địa chỉ của nó là 0x00. 4 bit thấp của thanh ghi này chứa mã BCD 4 bit 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 từ bit 4 đến bit 6) là có thể mã hoá được (số 5 trong mã nhị phân 3 bit là 101). Bit cao nhất, bit 7 trong thanh ghi này là điều khiển có tên là CH (Clock Haft) bit này luôn luôn bằng 0. Nếu bằng 1 thì dao động của chip không hoạt động.

Thanh ghi giờ (HOURS): Đây là thanh ghi phức tạp nhất trong DS1307 thanh ghi này (adsbygoogle = window.adsbygoogle || []).push({});

có địa chỉ là 0x02. Trước hết 4 bit thấp của thanh ghi này được dùng cho chữ số hàng

Một phần của tài liệu Nghiên cứu thiết kế KIT thí nghiệm vi điều khiển (Trang 28)