Đồ án Kit thực tập pic 16F877A

CHƯƠNG 0 DẪN NHẬP 11

PHẦN I KHẢO SÁT VI ĐIỀU KHIỂN PIC 16F877A.12

CHƯƠNG I CẤU TRÚC PHẦN CỨNG CỦA 16F877A.13

1.1. Sơ lượt vềvi điều khiển PIC 16F877A.13

1.2. Sơ lượt về các chân của PIC 16F877A.13

1.3.Một số điểm đặc biệt của CPU.18

1.3.1. Dao động.18

1.3.2. Reset.19

1.3.3.MCLR(Master clear).19

1.3.4. Interrupts.20

1.3.5. Chế độnguồn thấp Sleep(Power down Mode).20

1.3.6. Bộ định thời giám sát (Watch Dog Timer – WDT).21

1.4.Tổ chức bộnhớ.22

1.4.1. Bộ nhớ chương trình.22

1.4.2. Bộ nhớdữliệu.23

1.4.2.2. Vùng thanh ghi chức năng đặt biệt.24

1.4.3. Các thanh ghi chức năng đặc biệt.27

1.4.3.1.Thanh ghi trạng thái(Status register):.27

1.4.3.2. Thanh ghi tùy chọn (Option Reg_Register).28

1.4.3.3. Thanh ghi điều khiển ngắt INTCON.29

1.4.3.4. Thanh ghi cho phép ngắt ngoại vi 1.30

1.4.3.5. Thanh ghi cờcủa các ngắt ngoại vi 1.31

1.4.3.6. Thanh ghi cho phép ngắt ngoại vi 2.32

1.4.3.7. Thanh ghi cờcủa các ngắt ngoại vi 2.33

1.4.4. PCL và PCLATH.33

1.4.5. Ngăn xếp Stack.34

1.4.6. Định địa chỉ trực tiếp và địa chỉ gián tiếp, thanh ghi INF và FSR.34

1.5. I/O port.35

1.5.1. Port B và thanh ghi TRIS B.35

1.5.2. Port B và thanh ghi TRIS B.37

1.5.3. Port C và thanh ghi TRIS C.38

1.5.4. Port D và thanh ghi TRIS D.40

1.5.5. Port E và thanh ghi TRIS E.40

CHƯƠNG II BỘ ĐỊNH THỜI.43

2.1. Bộ định thời timer 0.43

2.1.1. Giới thiệu.43

2.1.2. Hoạt động của bộ định thời.43

2.1.3. Ngắt Timer 0.43

2.1.4. Sử dụng Timer 0 với nguồn xung clock ngoài.44

2.1.5. Bộtiền định tỉlệ8 bit của Timer 0.44

2.2. Bộ định thời Timer 1.44

2.2.1. Giới thiệu.44

2.2.2. Thanh ghi điều khiển Timer 1.45

2.2.3. Chế độ định thời trong hoạt động của Timer 1.45

2.2.4. Chế độ đếm .45

2.2.5. Giao động riêng của Timer 1.46

2.2.6. Ngắt Timer 1.46

2.3. Bộ định thời Timer 2.46

2.3.1. Giới thiệu .46

2.3.2. Thanh ghi điều khiển T2CON.47

2.3.3. Xóa các bộtỉlệ.47

2.3.4. Nguồn xung clock cho Timer 2.47

2.3.5. Thanh ghi TMR2và PR2.47

2.3.6. Tín hiệu báo trạng thái cân bằng.47

2.3.7. Chế độngủ.48

CHƯƠNG III MODULE CCP.49

3.1. Giới thiệu.49

3.2. Thanh ghi điều khiển module CCP.49

3.3. Chế độCapture.50

3.3.1. Bộ định tỉlệcủa CCP.50

3.4. Chế độCompare.51

3.5. Chế độ điều biến xung PWM.51

3.5.1. Chu kỳPWM.51

3.5.2.Chu kỳnhiệm vụcủa PWM.52

3.5.3. Cài đặt hoạt động cho PWM.52

3.5.4. Module MSSP.54

4.1. Giới thiệu module ADC 10 bit.55

4.2. Các thanh ghi điều khiển.55

4.3. Hoạt động của Module ADC.57

4.4.Thời gian lấy mẫu.58

4.5. Lựa chọn xung clock cho biến đổi ADC.58

4.6. Cấu hình các chân Analog.59

4.7. Chuyển đổi ADC.59

4.8. Hoạt động của module ADC trong chế độngủ.60

4.9. Ảnh hưởng của Reset.60

CHƯƠNG V ĐIỆN THẾTHAM CHIẾU VÀ CÁC BỘSO SÁNH ĐIỆN.61

5.1. Module Comparator.61

5.1.1. Giới thiệu về module comparator.61

5.1.2. Cài đặt chế độcho bộso sánh.61

5.1.3. Nguồn tham chiếu của bộso sánh.63

5.1.3.1. Tín hiệu điện áp tham chiếu ngoại.63

5.1.3.2. Tín hiệu điện áp tham chiếu nội.63

5.1.4. Thời gian đáp ứng .63

5.1.5. Tín hiệu ngõ ra của bộso sánh.63

5.1.6. Ngắt của các bộso sánh.64

5.1.7. Hoạt động của các bộso sánh trong chế độngủ.64

5.1.8. Ảnh hưởng của Reset.64

5.2. Module điện áp tham chiếu.64

5.2.1. Giới thiệu module điện áp tham chiếu.64

5.2.2. Thanh ghi điều khiển CVRCON.65

5.2.3. Độchính xác của điện áp tham chiếu .66

5.2.4. Hoạt động của module VREF trong chế độngủ.66

5.2.5. Trạng thái của module khiReset.66

5.2.6. Sửdụng module với các mạch ngoài.66

PHẦN II CÁC THÀNH PHẦN CỦA KIT THỰC TÂP

PIC 16F877A.67

SVTH :Hà Xuân Bình & VũThanh Hưng Trang 6

ĐồÁn Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹLê Đình Kha

CHƯƠNG I HIỂN THỊLED ĐƠN.68

1.1. Giới thiệu chung .68

1.2. Mạch nguyên lý.69

CHƯƠNG II HIỂN THỊLED 7 ĐOẠN.70

2.1. Các khái niệm cơbản .70

2.2. Kết nối với vi điều khiển.71

2.3. Giaotiếp vi điều khiển với nhiều led 7 đoạn.72

2.4. Lưu đồgiải thuật.74

2.5.Mạch nguyên lý.75

CHƯƠNG III ĐÈN GIAO THÔNG.76

3.1. Giới thiệu .76

3.2. Sơ đồnguyên lý.77

3.3. Lưu đồgiải thuật.78

CHƯƠNG IV LED MA TRẬN.79

4.1. Hiện thịled ma trận.79

4.1.1. Giới thiệu.79

5.1.2. Led matrận 8x8.79

4.2. Phương pháp hiển thịbằng IC chốt.80

4.2.1. Chốt hàng.81

4.2.2. Chốt cột.81

4.3. Phương pháp dùngthanh ghidịch.82

4.3.1. Quét hàng.82

4.3.1.1. Giới thiệu chung vềphương pháp quét hàng.82

4.3.1.2. Quá trình thực hiện quét hàng.83

4.3.1.3. Ví dụ.83

4.3.2. Quét cột.84

4.3.2.1. Giới thiệu chung vềphương pháp quét cột.84

4.3.2.2. Quá trình thực hiện quét cột.83

4.3.2.3. Ví dụ.84

4.4. Mạch nguyên lý.86

CHƯƠNG V LCD.87

SVTH :Hà Xuân Bình & VũThanh Hưng Trang 7

ĐồÁn Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹLê Đình Kha

5.1. Giới thiệu chung vềLCD .87

5.1.1. Các thanh ghi.89

5.1.2. Cờbáo bận BF.90

5.1.3. Bộ đếm địa chỉAC.90

5.1.4. Vùng RAM hiển thịDDRAM.90

5.1.5. Vùng ROM chứaký tựCGROM.91

5.1.6. Vùng RAM chứaký tự đồhọa CGRAM.92

5.2. Tập lệnh của LCD.94

5.3. Khởi tạo LCD.97

5.3.1. Mạch khởi tạo bên trong chip HD44780.97

5.3.2. Khởi tạo bằng lệnh.97

5.4. Lưu đồgiải thuật.99

5.5. Mạch nguyên lý.100

CHƯƠNG VI ADC.101

6.1. Giới thiệu vềmodule ADC.101

6.1.1. Cơbản vềADC .101

6.1.2. ADC trong PIC 16F877A.102

6.2. Sơ đồnguyên lý.103

CHƯƠNG VII BÀN PHÍM GIAO TIẾP LCD.104

7.1. Keypad và nguyên lý hoạt động .104

7.2. Keypad giao tiếp với LCD.104

7.3. Sơ đồgiải thuật .106

CHƯƠNG VIII GIAO TIẾP I2C.107

8.1. Giới thiệu chung vềI2C .107

8.1.1. Đặc điểm giaotiếp I2C.107

8.1.2. START and STOP conditions.109

8.1.3. Định dạng dữliệu truyền.109

8.1.4. Định dạng địa chỉthiết bị.111

8.1.5. Truyền dữliệu trên bus I2C.112

8.1.6. Chế độMulti-Master.113

8.2. Module I2C Trong Vi Điều Khiển PIC.113

8.2.1. Đặc điểm phần cứng của PIC16F877A.113

8.2.2. Cách thức sửdụng Module I2C trong CCS.114

SVTH :Hà Xuân Bình & VũThanh Hưng Trang 8

ĐồÁn Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹLê Đình Kha

8.2.3. EEPROM 24C04.115

8.2.3.1. Hình dạng.115

8.2.3.2. Sơ đồcấu tạo.115

8.2.3.3. Sơ đồchân .115

8.3. Mạch nguyên lý .117

CHƯƠNG IX ĐO NHIỆT ĐỘDÙNG LM35.118

9.1. Giới thiệu.118

9.2. Một số đặc tính cơbản của LM35.118

9.3. Mạch nguyên lý .119

PHẦN III CÁC BÀI TẬP THỰC HÀNH .120

BÀI 1 HIỂN THỊTRẠNG THÁI PORT TRÊN LED ĐƠN.121

BÀI 2 HIỂN THỊTRẠNG THÁI CÁC PORT VÀ THAY ĐỔI THỜI GIAN

DELAY .123

BÀI 3 HIỂN THỊNGÀY THÁNG NĂM SINH TRÊN LED 7.125

BÀI 4 HIỂN THỊ ĐỒNG HỒTRÊN LED 7.127

BÀI 5 CHƯƠNG TRÌNH ĐÈN GIAO THÔNG.129

BÀI 6 CHẠY CHỮLED MA TRẬN.131

BÀI 7 HIỂN THỊKÝ TỰTRÊN LCD.133

BÀI 8 GIAO TIẾP BÀN PHÍM SỐHEX HIỂN THỊLCD .135

BÀI 9 ĐIỀU CHỈNH ADC HIỂN THỊLED ĐƠN.137

BÀI 10 ĐO NHIỆT ĐỘ.139

PHẦN VI GIẢI CÁC BÀI TẬP THỰC HÀNH .141

BÀI 1 HIỂN THỊTRẠNG THÁI PORT TRÊN LED ĐƠN.142

BÀI 2 HIỂN THỊTRẠNG THÁI CÁC PORT VÀ THAY ĐỔI THỜI GIAN

DELAY .144

BÀI 3 HIỂN THỊNGÀY THÁNG NĂM SINH TRÊN LED 7.146

BÀI 4 HIỂN THỊ ĐỒNG HỒTRÊN LED 7 .149

BÀI 5 CHƯƠNG TRÌNH ĐÈN GIAO THÔNG.151

BÀI 6 CHẠY CHỮLED MA TRẬN.153

BÀI 7 HIỂN THỊKÝ TỰTRÊN LCD.156

BÀI 8 GIAO TIẾP BÀN PHÍM SỐHEX HIỂN THỊLCD .161

BÀI 9 ĐIỀU CHỈNH ADC HIỂN THỊLED ĐƠN.165

SVTH :Hà Xuân Bình & VũThanh Hưng Trang 9

ĐồÁn Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹLê Đình Kha

BÀI 10 ĐO NHIỆT ĐỘ.166

PHẦN VI PHỤLỤC .170

Phụlục 1 : 16F877A .171

Phụlục 2 : DEFS_16F877A .177

pdf180 trang | Chia sẻ: lethao | Lượt xem: 3517 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án Kit thực tập pic 16F877A, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
c logic) hoàn toàn ngược lại, tức là phải đặt vào chân b và c điện áp là 5V (mức 1). Bảng mã hiển thị led 7 đoạn: Phần cứng được kết nối với 1 Port bất kì của Vi điều khiển, để thuận tiện cho việc xử lí về sau phần cứng nên được kết nối như sau: Px.0 nối với chân a, Px.1 nối với chân b, lần lượt theo thứ tự cho đến Px.7 nối với chân h. Dữ liệu xuất có dạng nhị phân như sau : hgfedcba Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Anode chung (các led đơn sáng ở mức 0): Số hiển thị trên led 7 đoạn Mã hiển thị led 7 đoạn dạng nhị phân Mã hiển thị led 7 đoạn dạng thập lục phân h g f e d c b a 0 1 1 0 0 0 0 0 0 C0 1 1 1 1 1 1 0 0 1 F9 2 1 0 1 0 0 1 0 0 A4 3 1 0 1 1 0 0 0 0 B0 4 1 0 0 1 1 0 0 1 99 5 1 0 0 1 0 0 1 0 92 6 1 1 0 0 0 0 1 0 82 7 1 1 1 1 1 0 0 0 F8 8 1 0 0 0 0 0 0 0 80 9 1 0 0 1 0 0 0 0 90 A 1 0 0 0 1 0 0 0 88 B 1 0 0 0 0 0 1 1 83 SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 71 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha C 1 1 0 0 0 1 1 0 C6 D 1 0 1 0 0 0 0 1 A1 E 1 0 0 0 0 1 1 0 86 F 1 0 0 0 1 1 1 0 8E - 1 0 1 1 1 1 1 1 BF Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Cathode chung (các led đơn sáng ở mức 1): Số hiển thị trên led 7 đoạn Mã hiển thị led 7 đoạn dạng nhị phân Mã hiển thị led 7 đoạn dạng thập lục phân 0 0 0 1 1 1 1 1 1 3F 1 0 0 0 0 0 1 1 0 06 2 0 1 0 1 1 0 1 1 5B 3 0 1 0 0 1 1 1 1 4F 4 0 1 1 0 0 1 1 0 66 5 0 1 1 0 1 1 0 1 6D 6 0 1 1 1 1 1 0 1 7D 7 0 0 0 0 0 1 1 1 07 8 0 1 1 1 1 1 1 1 7F 9 0 1 1 0 1 1 1 1 6F A 0 1 1 1 0 1 1 1 77 B 0 1 1 1 1 1 0 0 7C C 0 0 1 1 1 0 0 1 39 D 0 1 0 1 1 1 1 0 5E E 0 1 1 1 1 0 0 1 79 F 0 1 1 1 0 0 0 1 71 - 0 1 0 0 0 0 0 0 40 2.3 Giao Tiếp Vi Điều Khiển Với Nhiều Led 7 Đoạn : Nếu kết nối mỗi một Port của Vi điều khiển với 1 led 7 đoạn thì tối đa kết nối được 4 led 7 đoạn. Mặt khác nếu kết nối như trên sẽ hạn chế khả năng thực hiện các công việc khác của Vi điều khiển. Cho nên cần phải kết nối, điều khiển nhiều led 7 đoạn với số SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 72 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha lượng chân điều khiển từ Vi điều khiển càng ít càng tốt. Có hai giải pháp: một là sử dụng các IC chuyên dụng cho việc hiện thị led 7 đoạn, hai là kết nối nhiều led 7 đoạn vào cùng một đường xuất tín hiệu hiển thị. Nội phần này sẽ đề cập đến cách kết nối nhiều led 7 đoạn theo giải pháp thứ 2. Mắt người có đặc điểm sinh lí là chỉ thu nhận 24 hình/giây để tổng hợp các hình ảnh về thế giới xung quanh. Nếu một tín hiệu ánh sáng có chu kì sáng tắt hơn 24 lần trong 1 giây, mắt người luôn cảm nhận đó là một nguồn sáng liên tục. Để minh họa cho điều này, bạn hãy lấy các chương trình đã thực hiện với led đơn và làm ngắn thời gian delay lại, đến một giá trị nào đó bạn sẽ thấy các led đều sáng liên tục. Để kết nối nhiều led 7 đoạn vào vi điều khiển thực hiện như sau: nối tất cả các chân nhận tín hiệu của tất cả các led 7 đoạn (chân abcdefgh) cần sử dụng vào cùng 1 Port, 6 led 7 đoạn có các chân nhận tín hiệu cùng được được nối với PC. Dùng các ngõ ra còn lại của Vi điều khiển điều khiển on/off cho led 7 đoạn, mỗi ngõ ra điều khiển ON/OFF cho 1 led 7 đoạn, (ON: led 7 đoạn được cấp nguồn để hiển thị, OFF: led 7 đoạn bị ngắt nguồn nên không hiển thị được). Q3 A1015 ge f b 6RN2 330 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Q1 A1015 6LED3 A B C D E F G H VC C VC C Q5 A1015 6RN3 4.7K 123456 7 8 9 10 11 12 ag 6LED5 A B C D E F G H VC C VC C 6LED2 A B C D E F G H VC C VC C h a 6LED1 A B C D E F G H VC C VC C ffb ce eha gcb d h hf hc 60PA 1 2 3 4 5 6 Q4 A1015 c c e da a dc df egf Q2 A1015 cb Q6 A1015 d b bag g e h 6LED4 A B C D E F G H VC C VC C 60PC 1 2 3 4 5 6 7 8 VCC 6LED6 A B C D E F G H VC C VC C b d gde a h f Trong sơ đồ trên, led 7 đoạn được sử dụng là loại có Anode chung, với tất cả các chân nhận tín hiệu được kết nối với Port C đã qua điện trở hạn dòng. Để điều khiển SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 73 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha ON/OFF cho các led 7 đoạn, sử dụng transitor loại PNP, transitor này nhận dòng điều khiển từ một ngõ ra của Vi điều khiển, led 7 đoạn sẽ được ON khi tín hiệu từ vi điều khiển đến transitor ở mức 0. Có thể sử transitor loại A1015hoặc 2N3905 hoặc một transitor PNP khác có thông số phù hợp. Các điện trở 4.7K và điện trở treo 4.7K đảm bảo transitor luôn hoạt động ở chế độ bao hòa .Port A dùng để chọn led 7 đoạn (đảm bảo khi led 7 đoạn đang ở trạng thái OFF sẽ bị tắt hoàn toàn, không bị sáng mờ mờ). Tại mỗi thời điểm, chỉ nên cho Vi điều khiển điều khiển cho 1 led 7 đoạn hoạt động, do đó tại mỗi thời điểm chỉ nên có 1 ngõ ra duy nhất nối với transitor ở mức 0. Tại mỗi thời điểm chỉ có một led 7 đoạn được ON nên sẽ không xảy ra tình trạng quá tải cho tải và quá tải cho vi điều khiển khi điều khiển nhiều led 7 đoạn. Trong sơ đồ kết nối trên, chẳng hạn cần hiển thị số 451, qui ước thứ tự các led 7 được đếm từ phải sang trái, như vậy cần làm cho led 7 đoạn thứ nhất hiển thị số 1, led 7 đoạn thứ hai hiện thị số 5, led 7 đoạn thứ 3 hiện thị số 4, các led còn lại không hiện thị. Đầu tiên OFF tất cả các led 7 đoạn. Kế tiếp xuất mã hiển thị led 7 đoạn để hiển thị số 1, ON led 7 đoạn thứ nhất, lúc này dòng điện chỉ đi qua led 7 đoạn thứ nhất, làm cho led 7 đoạn thứ nhất hiển thị số 1, thời gian ON trong khoảng vài chục µs(1µs=1/10-6s). Kế tiếp xuất mã hiển thị led 7 đoạn hiển thị số 5, OFF led 7 đoạn thứ nhất và đồng thời ON led 7 đoạn thứ 2, lúc này chỉ có led 7 đoạn thứ hai hiển thị và hiển thị số 5. Tiếp theo xuất mã hiển thị led 7 đoạn hiện thị số 4, OFF led 7 đoạn thứ hai và ON led 7 thứ ba, lúc này chỉ duy nhất led 7 đoạn thứ ba hiển thị số 4. Cứ thế lặp lại quá trình trên liên tục. Thời gian ON/OFF chỉ trong khoảng vài chục µs, và tại mỗi thời điểm chỉ có mỗi một led 7 đoạn hiện thị số của chính nó, vì vậy mắt người thấy 3 led 7 đoạn không sáng đứt quãng, mà sáng liên tục, mỗi led hiển thị 1 số riêng của nó. Thực hiện tương tự để mở rộng số lượng led 7 đoạn cần sử dụng. 2.4 Lưu dồ giải thuật: Bắt đầu Quét led 1,2 … Xuất dữ liệu SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 74 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 2.5 Mạch nguyên lý: Q3 A1015 RB LED 5V 330 RC Q1 A1015 ge f b 6RN2 330 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Q1 A1015 6LED3 A B C D E F G H VC C VC C Q5 A1015 6RN3 4.7K 123456 7 8 9 10 11 12 ag 6LED5 A B C D E F G H VC C VC C 6LED2 A B C D E F G H VC C VC C h a 6LED1 A B C D E F G H VC C VC C ffb ce eha gcb d h hf hc 60PA 1 2 3 4 5 6 Q4 A1015 c c e da a dc df egf Q2 A1015 cb Q6 A1015 d b bag g e h 6LED4 A B C D E F G H VC C VC C 60PC 1 2 3 4 5 6 7 8 VCC 6LED6 A B C D E F G H VC C VC C b d gde a h f Một led 7 đoạn do 8 led đơn ghép lại do đó điện trở hạn dòng cho led là 330Ω Để Led sáng bình thường thì: Ic = Iled =10mA. Ic8led =80mA Ta có: IC8 led = ICS = 80mA Chọn β=80 IBS = β CSI = 1 mA ( IB=IBS ) RB = B EBCC I VV − = mA1 8.05 − = 4.2 KΩ Chọn RB = 4.7 KΩ SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 75 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha CHƯƠNG III : ĐÈN GIAO THÔNG 3.1 Giới thiệu: Giao thông là một vấn đề cơ bản của cuộc sống, tuy nhiên với tình hình giao thông như hiện nay ở Việt Nam thì vấn đề này đã trở nên rất bức xúc đối với người tham gia giao thông. Khi tham gia giao thông, chúng ta sẽ phải chấp hành theo tín hiệu đèn giao thông. Vậy bạn có biết hệ thống đèn này hoạt động như thế nào ko? Với mục đích tìm hiểu sự hoạt động của một hệ thống đèn giao thông nhóm chúng em đã cố gắng viết một chương trình đơn giản. Với kiến thức về vi xử lý còn hạn chế, chắc chắn chương trình tôi viết sẽ còn nhiều sai sót, mong nhận được sự góp ý của người đọc. Chân thành cảm ơn! Hoạt động của các đèn như hình: X1 – Đ2 Giản đồ xung: X1 V1 Đ1 X2 V2 Đ2 V1 – Đ2 Đ1 – V2 Đ1 – X2 T1 T4 T3 T2 TT T TT T SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 76 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 3.2 Sơ đồ nguyên lý: SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 77 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 3.3 Lưu đồ giải thuật: BEGIN Xanh 1 = 0, Đỏ 2 = 0 DL 7s Vàng 1 = 0, Đỏ 2 = 0 DL 3s Xanh 2 = 0, Đỏ 1 = 0 DL 7s DL 3s Vàng 2 = 0, Đỏ 1 = 0 S Đ S Đ S Đ S Đ SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 78 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha CHƯƠNG IV : LED MA TRẬN 4.1 Hiển thị led Ma Trận 4.1.1 Giới Thiệu: Led ma trận là một thuật ngữ quen thuộc ngày nay, nhưng ta nên lướt qua sự phát triển và ứng dụng của các dụng cụ này: Silicon carbide là vật liệu đầu tiên được ghi nhận là phát ra ánh sáng “lạnh” – từ “lạnh” ở đây dùng để phân biệt quá trình phát xạ từ sự bức xạ đen mà vật liệu nóng lên khi có dòng điện đi qua. Cho đến gần 1940, người ta nhận thấy miền phát sáng là tiếp xúc p-n. Những công trình trước năm 1950 đã báo cáo là sự phát sáng có từ nhiều vật liệu dùng các diode bán dẫn kim loại tiếp xúc điểm: GaP, GaAs, GaSb, InP và Ge, Si. Rồi đi đến bước kế tiếp dùng bán dẫn hỗn hợp (compound semiconductor) để có được ánh sáng ra nhiều hơn. Các ứng dụng của led ma trận như dùng để chỉ thị, hiển thị, làm nguồn sáng trong các máy in laser, và quan trọng hơn là các led ma trận được sử dụng rộng rãi trong các hệ thống thông tin dựa vào quang sợi. Sự lựa chọn vật liệu quyết định màu của ánh sáng phát ra. Với các hiển thị và bộ chỉ thị thì cần có các led ma trận ánh sáng thấy được, trái lại với thông tin quang sợi cần có mất mát thấp, tán xạ thấp trong sợi và khả dụng các bộ phát hiện thích hợp. Led ma trận được coi là một trong các nguồn quang điện tử, phổ biến nhất. Nó không đắt, tiêu thụ ít công suất, và dễ dàng thích hợp cho các mạch điện tử. 4.1.2 Led Ma Trận 8x8: Led matrix là led ma trận hiển thị bao gồm nhiều led ma trận nhỏ kết hợp lại tạo thành một ma trận gồm m cột và n hàng (led ma trận m×n). Led ma trận 8×8 là led ma trận gồm có 8 cột và 8 hàng. Led ma trận này có hai loại: loại thứ nhất là common cathode (cathode chung – cột cathode, hàng anode), loại thứ hai là common anode (anode chung – cột anode, hàng cathode). U1 matrix 8x8• Sơ đồ chân ra và hình dạng thực tế: 12 19 10 15 187 16 3 6 13 4 21 241 22 9 h1 h7 c1 c5 c6c2 h6 h4 h3 h5 c3 c7 c8c4h8 h2 Hình 4.1 : Hình dạng thực tế và sơ đồ chân led ma trận 8 x 8. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 79 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha (a) (b) Hình 4.2: Sơ đồ cấu trúc bên trong của led ma trận: (a) cathode chung, (b) anode chung. 4.2 Phương Pháp Hiển Thị Dùng IC Chốt: Hiển thị led ma trận bằng phương pháp chốt giúp cho người lập trình thay đổi cách thức quét và hiển thị một cách linh hoạt và nhanh chóng. matrix_3mau 12 9 6 3 13 16 19 22 11852141720231074115182124 c1 c2 c3 c4 c5 c6 c7 c8 hx 1 hx 2 hx 3 hx 4 hx 5 hx 6 hx 7 hx 8 hd 1 hd 2 hd 3 hd 4 hd 5 hd 6 hd 7 hd 8 DM74LS573 2 3 4 5 6 7 8 9 11 1 19 18 17 16 15 14 13 12 D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 LE O E Q 0 Q 1 Q 2 Q 3 Q 4 Q 5 Q 6 Q 7 DM74LS573 2 3 4 5 6 7 8 9 11 1 19 18 17 16 15 14 13 12 D0 D1 D2 D3 D4 D5 D6 D7 LE OE Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 U7 DM74LS573 23456789111 1918171615141312 D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 LEO E Q 0 Q 1 Q 2 Q 3 Q 4 Q 5 Q 6 Q 7 Hình 4.3: Giao tiếp led ma trận dùng phương pháp chốt. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 80 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 4.2.1 Chốt Hàng: Chốt hàng là phương pháp trong một khoảng thời gian xác định chỉ có một cột được tích cực, dữ liệu được đưa ra 8 hàng rồi chốt lại, dữ liệu được hiển thị trên màn hình led ma trận. Sau đó dữ liệu kế tiếp được đưa ra 8 hàng và được chốt lại bởi một IC chốt khác, trong khi đó dữ liệu trước đó vẫn hiện diện tại ngõ ra của IC chốt. Như vậy dữ liệu của hàng nào được đưa ra đúng địa chỉ của hàng đó trong khi các dữ liệu của các hàng khác vẫn hiện diện trên hàng mà không bị mất đi. Việc thực hiện chốt hàng được thể hiện ở lưu đồ như sau: Hình 4.4: Qui trình hiển thị chốt hàng. 4.2.2 Chốt Cột: Chốt cột là phương pháp trong một khoảng thời gian xác định chỉ có một hàng được tích cực, dữ liệu được đưa ra 8 cột rồi chốt lại, dữ liệu được hiển thị trên màn hình Led ma trận. Sau đó dữ liệu được đưa ra 8 cột kế tiếp và được chốt lại bởi một IC chốt khác, trong khi đó dữ liệu trước đó vẫn hiện diện tại ngõ ra của IC chốt (dữ liệu vẫn hiện diện tại các cột). Như vậy dữ liệu của cột nào được đưa ra đúng địa chỉ của cột đó trong khi các dữ liệu của các cột khác vẫn hiện diện trên cột mà không bị mất đi. Việc thực hiện chốt cột được thể hiện ở lưu đồ như sau: Hình 4.5: Qui trình hiển thị chốt cột.. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 81 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha Phương Pháp Hiển Thị Led Ma Trận Sử Dụng IC Chốt: ™ Ưu điểm: • Mở rộng số hàng, số cột của bảng quang báo. • Dữ liệu được truyền đi nhanh. • Chuyển đổi cách quét hàng, cột một cách linh hoạt. ™ Nhược điểm: • Tạo bảng mã khó khăn. • Khó khăn trong việc lập trình xuất dữ liệu ra. 4.3 Phương Pháp Dùng Thanh Ghi Dịch: 4.3.1 Quét Hàng: 4.3.1.1 Giới thiệu chung về phương pháp quét hàng. Phương pháp quét hàng là phương pháp mà trong một khoảng thời gian xác định chỉ cho một hàng được tích cực hiển thị trong khi các hàng khác đều tắt, các hàng được quét (tích cực) tuần tự ở các khoảng thời gian kế tiếp nhau được lặp lại nhiều lần với tốc độ > 25hình/1s sẽ cho ta một hình ảnh liên tục cần hiển thị lên trên màn hình Led ma trận. R3 R R11 R H3 matrix_3mau 12 9 6 3 13 16 19 22 11852141720231074115182124 c1 c2 c3 c4 c5 c6 c7 c8 hx 1 hx 2 hx 3 hx 4 hx 5 hx 6 hx 7 hx 8 hd 1 hd 2 hd 3 hd 4 hd 5 hd 6 hd 7 hd 8 R12 R R5 R Q16HB.4 R15 R R23 R H4 Q5 H2 HB.5 Q4 H1 R25 R Q11 Vdd R34 R Vdd R2 R R39 R R26 R Q15 HB.3 Q6 Q13 Q1 U10 TPIC6B595 3 18 12 13 9 8 4 5 6 7 14 15 16 17 SD I SD O R C LK SR C LK G SR C LR D R AI N 0 D R AI N 1 D R AI N 2 D R AI N 3 D R AI N 4 D R AI N 5 D R AI N 6 D R AI N 7 R38 R R14 R H7 H6 H2 H7 Q10 Vdd U9 TPIC6B595 3 18 121398 456714151617 SD I SD O R C LK SR C LK GSR C LR D R AI N 0 D R AI N 1 D R AI N 2 D R AI N 3 D R AI N 4 D R AI N 5 D R AI N 6 D R AI N 7 R4 R HB.2 Q8 Q17 R13 R R37 R H8 Q7 HB.6 H3 Vdd HB.0 Vdd Vdd R31 R H4 Q3 R33 R Q14 R17 R HB.1 H5 R32 R H5 H8 H1 Vdd H6 R10 R Vdd HB.7 R24 R R36 R Q12 R16 R Q2 Hình 4.6: Sơ đồ mạch thanh ghi. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 82 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 4.3.1.2. Quá trình thực hiện quét hàng: Quét hàng sử dụng thanh ghi dịch là tương đối phức tạp cho người lập trình trong việc đưa dữ liệu ra cột. Dữ liệu lần lượt được đưa vào chân Datain của thanh ghi dịch sau đó tác động xung clock dữ liệu đươc dịch đi. VD: Đưa dữ liệu ra 8 cột được diễn ra như sau. Hình 4.7: Qui trình đưa dữ liệu ra 8 cột cho led ma trận. Dữ liệu của hàng thứ nhất được đưa ra cột sau đó tích cực hàng thứ nhất như vây dữ liệu của hàng thứ nhất được hiển thị trên màn hình Led ma trận, tiếp tục dữ liệu của hàng thứ hai được đưa ra cột sau đó tích cực hàng thứ hai lúc này dữ liệu của hàng thứ hai được hiển thị trên man hình Led ma trận, cứ như vậy cho đến dữ liệu của hàng cuối cùng được đưa ra cột sau đó tích cực hàng cuối cùng. Cứ như thế quá trình trên được lặp đi lặp lại > 25lần/1s, đến đây chúng ta quan sát được một hình ảnh liên tục hiển thị trên màn hình Led ma trận. 4.3.1.3.Ví dụ: Hiển thị chữ B lên màn hình Led ma trận(hàng được tích cực ở mức 1, cột được tích cực ở mức 0). SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 83 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha Hàng 1 Hàng 8 Hình 4.8: Hiển thị chữ B trên led ma trận dùng phương pháp quét hàng. Cột 8 Dữ liệu thứ nhất có gía trị: 11111111 được đưa ra cột tích cực hàng thứ nhất (điều khiển hàng thứ nhất cho ra giá trị là 1); dữ liệu thứ hai có giá trị: 00001111 đưa ra cột, tích cực hàng thứ hai; dữ liệu thứ 3 có giá trị: 01110111 đưa ra cột, tích cực hàng thứ 3; dữ liệu thứ 4 có giá trị: 01110111 đưa ra cột, tích cực hàng thứ 4; tiếp tục dữ liệu hàng thứ 5 có giá trị: 00001111 đưa ra cột, tích cực hàng thứ 5; kế tiếp là dữ liệu của hàng thứ 6 có giá trị: 01110111 được đưa ra cột, tích cực hàng thứ 6 ; dữ liệu của hàng thứ 7 có giá trị: 01110111 đưa ra cột, tích cực hàng thứ 7; dữ liệu thứ 8 có giá trị: 00001111 đưa ra cột, tích cực hàng thứ 8. Như vậy toàn bộ dữ liệu của chữ B đã được đưa ra hiển thị trên màn hình Led ma trận. Quá trình trên được diễn ra rất nhanh > 24lần/ 1s nên chúng ta có cảm giác nó diễn ra một cách đồng thời nhờ đó mà chúng ta quan sát được trên màn hình Led ma trận là một chữ B liên tục. 4.3.2 Quét Cột: 4.3.2.1 Giới thiệu chung về phương pháp quét cột. Phương pháp quét cột là phương pháp mà trong một khoảng thời gian xác định chỉ cho một cột được tích cực hiển thị trong khi các cột khác đều tắt, các cột được quét (tích cực) tuần tự ở các khoảng thời gian kế tiếp nhau được lặp lại nhiều lần với tốc độ > 25hình/1s sẽ cho ta một hình ảnh liên tục cần hiển thị lên trên màn hình Led ma trận. 4.3.2.2 Quá trình thực hiện quét cột. Dữ liệu của cột thứ nhất được đưa ra hàng sau đó tích cực cột thứ nhất như vây dữ liệu của cột thứ nhất được hiển thị trên màn hình Led ma trận, tiếp tục dữ liệu của cột thứ hai được đưa ra hàng sau đó tích cực cột thứ hai lúc này dữ liệu của hàng thứ hai được hiển thị trên màn hình Led ma trận, cứ như vậy cho đến dữ liệu của cột cuối cùng được đưa ra hàng sau đó tích cực cột cuối cùng. Cứ như thế quá trình trên được lặp đi lặp lại > 24lần/1s, đến đây chúng sát được một hình ảnh liê iển thị trên màn hình Led ma trận. 4.3.2.3.Ví dụ: Hiển thị chữ B lên màn hình Led ma trận (hàng được tích cực ở mức1, cột được tích cực ở mức 0). SVTH :Hà Xuân Bình & V ta quanũ Thanh Hưng n tục h Trang 84 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha Hàng 1 Hàng 8 Cột 8 Hình 4.9: Hiển thị chữ B trên led ma trận dùng phương pháp quét cột. Cột 1 Dữ liệu thứ nhất có gía trị: 11111110 được đưa ra hàng, tích cực cột thứ nhất (điều khiển cột thứ nhất cho ra giá trị là 0); dữ liệu thứ hai có giá trị: 10010010 đưa ra hàng, tích cực cột thứ hai; dữ liệu thứ 3 có giá trị: 10010010 đưa ra hàng, tích cực cột thứ 3; dữ liệu thứ 4 có giá trị: 10010010 đưa ra hàng, tích cực cột thứ 4; tiếp tục đữ liệu hàng thứ 5 có giá trị: 01101100 đưa ra hàng, tích cực cột thứ 5; kế tiếp là dữ liệu của cột thứ 6 có giá trị: 00000000 được đưa ra hàng, tích cực côt thứ 6 ; dữ liệu của cột thứ 7 có giá trị: 00000000 đưa ra hàng, tích cực cột thứ 7; dữ liệu thứ 8 có giá trị: 00000000 đưa ra hàng, tích cực cột thứ 8. Như vậy toàn bộ dữ liệu của chữ B đã được đưa ra hiển thị trên màn hình Led ma trận. Quá trình trên được diễn ra rất nhanh > 24lần/ 1s nên chúng ta có cảm giác nó diễn ra một cách đồng thời, nhờ đó chúng ta quan sát được trên màn hình Led ma trậnlà một chữ B liên tục. Phương pháp hiển thị Led ma trận sử dụng thanh ghi dịch: ™ Ưu điểm: • Tiết kiệm đường truyền, hiệu quả kinh tế. • Tiết kiệm chân PORT. • Truyền dữ liệu đi xa hơn. • Mở rộng bảng Ma trận lên một cách dễ dàng. • Lập trình dễ dàng trong phương pháp quét cột. ™ Nhược điểm: • Tốn thời gian để thực hiện việc truyền dữ liệu đến các cột. • Chuyển đổi không linh hoạt bằng sử dụng phương pháp chốt. • Lập trình khó khăn hơn khi sử dụng phương pháp quét hàng. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 85 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 4.4 Mạch nguyên lý: h5 h6 h3 b4 Q 8 A1 01 5 Q 16 A1 01 5 b3 c8 90 PB 12345678 h2 b1 0 b9 Q 11 A1 01 5 c4 h4 c1 3 Q 7 A1 01 5 h5 b9 b1 b5 b1 5 b1 5 c3 h7 c8 c1 5 M TR AN 1 1615 14 13 12 1110 9 8 7 6 5 43 2 1 Q 4 A1 01 5 h7 c4 c1 0 c2 Q 12 A1 01 5 b1 3 VC C h1 b1 6 c1 0 b4 c1 4 Q 6 A1 01 5 b1 3 h8 c9 h7 c1 5 b6 h1 h8 c1 c3 b1 2 VC C h3 b1 1 c1 3Q 13 A1 01 5 b6 9R N 3 33 0 1 2 3 4 5 6 7 8 910111213141516 Q 14 A1 01 5 h4 9R N 4k 7 1 2 3 4 5 6 7 8 910111213141516 M TR AN 2 1615 14 13 12 1110 9 8 7 6 5 43 2 1 h1 h3 c1 4 c1 6 90 PC 12345678 b3 c9 h6 c5 c7 b8 Q 1 A1 01 5 Q 9 A1 01 5 h2 b7 b8 Q 2 A1 01 5 9R N 2 4k 7 1 2 3 4 5 6 7 8 910111213141516 h8 b1 1 h2 c1 6 c1 1 c6 c7 c6 c1 2 c5 h4 b1 4 Q 10 A1 01 5 Q 15 A1 01 5 b1 2 90 PD 12345678 b1 b1 6 b7 b2 c1 b1 4 c1 2 b1 0 Q 5 A1 01 5 h6 c1 1Q 3 A1 01 5 b2 h5 b5 c2 SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 86 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha CHƯƠNG V : LCD (Liquid Crystal Display) 5.1 Giới Thiệu Chung Về LCD Có rất nhiều loại LCD với nhiều hình dáng và kích thước khác nhau, trên hình 1 là hai loại LCD thông dụng. Hình 1 : Hình dáng của hai loại LCD thông dụng Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển (như HD44780) bên trong lớp vỏ và chỉ đưa các chân giao tiếp cần thiết. Các chân này được đánh số thứ tự và đặt tên như hình 2 : Hình 2 : Sơ đồ chân của LCD 2> Chức năng các chân : Tên Chân Và Chức Năng Chân Số Tên Chức Năng 1 VSS Chân nối đất cho LCD. 2 VDD Chân cấp nguồn cho LCD. 3 Vee Chân này dùng để điều chỉnh độ tương phản của LCD 4 RS Chân chọn thanh ghi (Register select). Nối chân RS với logic “0” (GND) hoặc logic “1” (VCC) để chọn thanh ghi. + Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi”-write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read). + Logic “1”: Bus DB0-DB7 sẽ nối với thanh SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 87 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha ghi dữ liệu DR bên trong LCD. 5 R/W Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc. 6 E Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E. + Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào (chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition) của tín hiệu chân E. + Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (lowto-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp. 7-14 DB0- DB7 Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2 chế độ sử dụng 8 đường bus này : + Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7. + Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7 . Bảng 1 : Chức năng các chân của LCD * Ghi chú : Ở chế độ “đọc”, nghĩa là MPU sẽ đọc thông tin từ LCD thông qua các chân DBx.Còn khi ở chế độ “ghi”, nghĩa là MPU xuất thông tin điều khiển cho LCD thông qua các chân DBx. SVTH :Hà Xuân Bình & Vũ Thanh Hưng Trang 88 Đồ Án Tốt Nghiệp Khóa 2005 – 2008 GVHD:Thạc sỹ Lê Đình Kha 3> Sơ đồ khối của HD44780: Hình 3 : Sơ đồ khối của HD44780 5.1.1 Các thanh ghi : Chíp HD44780 có 2 thanh ghi 8 bit quan trọng : Thanh ghi lệnh IR (Instructor Register) và thanh ghi dữ liệu DR (Data Register) - Thanh ghi IR : Để điều khiển LCD, người dùng phải “ra lệnh” thông qua tám đường bus DB0-DB7. Mỗi lệnh được nhà sản xuất LCD đánh địa chỉ rõ ràng. Người dùng chỉ việc cung cấp địa chỉ lệnh bằng cách nạp vào thanh ghi IR. Nghĩa là, khi ta nạp vào thanh ghi IR một chuỗi 8 bit, chíp HD44780 sẽ tra bảng mã lệnh tại địa chỉ mà IR cung cấp và thực hiện lệnh đó. VD : Lệnh “hiển thị màn hình” có địa chỉ lệnh là 00001100 (DB7…DB0) Lệnh “hiển thị màn hình và con trỏ” có mã lệnh là 00001110 - Thanh ghi DR : Thanh ghi DR dùng để chứa dữ liệu 8 bit để ghi vào vùng RAM DDRAM hoặc CGRAM (ở chế độ ghi) hoặc dùng để chứa dữ liệu từ 2 vùng RAM này gởi ra cho MPU (ở chế độ đọc). Nghĩa là, khi MPU ghi thông tin vào DR, mạch nội bên trong chíp sẽ tự động ghi thông tin này vào DDRAM hoặc CGRAM. Hoặc khi th

Các file đính kèm theo tài liệu này:

  • pdfvan ban hoan chinh.pdf
  • jpgBIA.jpg
  • pdfBIA.pdf
  • docluu do giai thuat.doc
  • pdfNHAN XET.pdf
  • docso do mach.doc