Đề tài: Led matrix ppsx

12 277 2
Đề tài: Led matrix ppsx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÁO CÁO THỰC TẬP Đề tài Led matrix MỤC LỤC I.ic 89s51 2 1.1 đặc điểm 2 1.2 sơ đồ chân 2 1.3 cấu trúc bên trong vi điều khiển 6 1.4 bộ nhớ ngoài 9 II.ic 595 9 1.5 đặc điểm 9 1.6 sơ đồ chân 9 1.7 nguyên tắc hoat động 10 III. transictor a1015 10 3.1 đặc điểm 10 3.2 sơ đồ chân 10 3.3 nguyên tắc hoạt động 10 IV ic 7805 10 4.1 đặc điểm 10 4.2 sơ đồ chân 10 4.3 nguyên tắc hoạt động 10 V. thạch anh 11 VI. tụ 11 VII. trở 11 VIII. led 11 IX. trở kéo 11 X. nguồn (sạc điện thoại) 11 I.Tìm hiểu về IC89S51 AT89S51 là một vi điều khiển của hãng Atmel, là phiên bản khác của 8051 có 4KB ROM trên chíp là bộ nhớ Flash. AT89S51 thích hợp cho các ứng dụng nhanh vì có bộ nhớ Flash có thể xóa được trong vài giây. AT89S51 có chế độ nạp nối tiếp với mạch nạp đơn giản có khả năng thao tác ngay trên bo mạch mà không cần tháo chíp vi điều khiển sang mạch khác để nạp chương trình. 1. IC AT89S51 có các đặc điểm: - Bộ nhớ chương trình bên trong: 4KB (ROM) - Bộ nhớ dữ liệu bên trong: 128byte (RAM) - Bộ nhớ chương trình bên ngoài: 64KB (ROM) - Bộ nhớ dữ liệu bên ngoài: 64KB (RAM) - 4 port xuất nhập( I/O port) - Giao tiếp nối tiếp - 2 bộ định thời 16 bit - Bộ xử lý bit( thao tác trên các bít riêng lẽ) - 210 vị trí nhớ được định địa chỉ bit 2.Khảo sát sơ đồ chân Hình dạng thực tế và sơ đồ chân AT 89S51 có nhiều kiểu đóng vỏ khác nhau, chẳng hạn như hai hàng chân DIP (Dual In-Line Pakage) dạng vỏ dẹt vuông QFP (Quad Flat Pakage) và dạng chíp không có chân đỡ LLC (Leadless Chip Carrier) đều có 40 chân có các chức năng khác nhau như xuất nhập dữ liêu, định địa chỉ Tuy nhiên, ở đây em chi trình bày về loại hai hàng chân DIP như hình trên. Sơ đồ khối: VCC: chân cung cấp điện áp GND: chân nối đất 2.1. Port 0 Port 0 (P0.0- P0.7) có số chân từ 32-39. Port 0 là port xuất nhập dữ liệu 8bit hai chiều, khi đóng vai trò là port xuất mỗi chân có thể nhận dòng của 8 ngõ vào TTL. Các chân của Port 0 được ghi mức logic 1 thì chúng có thể sư dụng như là trở kháng cao của ngõ vào. Port 0 có thể làm bus địa chỉ byte thấp/bus dữ liệu đa hợp khi truy xuất bộ nhớ chương trình và bộ nhớ dữ liệu bên ngoài. Trong chế độ này Port0 có các điện trở kéo lên bên trong. 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. Các điện trở kéo lên bên ngoài được sử dụng khi kiểm tra chương trình. 2.2. Port 1 Port 1 (P1.0-P1.7) có số chân từ 1-8. Port 1 là port xuất nhập 8 bit hai chiều có sử dụng điện trở kéo lên bên trong. Port 1 có các bộ đệm xuất có thể nhận/cấp dòng cho 4 ngõ vào TTL. Khi các chân của Port 1 được ghi mức logic 1 các chân này được kéo lên mức cao và có thể sử dụng như những ngõ vào. Trong các ngõ vào, các chân của Port 1 được kéo xuống mức thấp với dòng cấp (Iil) vì có điện trở kéo lên bên trong. Port 1 đóng vai trò ngõ vào địa chỉ byte thấp khi lập trình Flash và kiểm tra chương trình. P1.5-MOSI; P1.6-MISO; P1.7-SCK 2.3. Port 2 Port 2 (P2.0-P2.7) có số chân từ 21-28. Port 2 là port xuất nhập 8bit hai chiều có sử dụng điện trở kéo lên bên trong. Port 2 có các bộ đệm xuất có thể nhận/cấp dòng cho 4 ngõ vào TTL. Khi các chân của Port 2 được ghi mức logic 1 các chân này được kéo lên mức cao và có thể sử dụng như những ngõ vào. Trong các ngõ vào, các chân của Port 2 được kéo xuống mức thấp với dòng cấp (Iil) vì có điện trở kéo lên bên trong. Port 2 xuất ra các địa chỉ byte cao trong thời gian nạp từ bộ nhớ chương trình bên ngoài và trong thời gian truy xuất bộ nhớ dữ liệu bên ngoài sử dụng 16bit địa chỉ (MOVX@ DPTR) . Trong ứng dụng này port 2 sử dụng các điện trở kéo lên bên trong khi xuất ra bit1. Trong khi truy xuất đến bộ nhớ dữ liệu bên ngoài nó sử dụng 8bit địa chỉ (MOVX@ Ri), Port 2 xuất ra nội dung của thanh ghi có chức năng đặc biệt P2. Port 2 đóng vai trò ngõ vào địa chỉ bit cao và một vài tín hiệu điều khiển khi lập trình Flash và kiểm tra chương trình. 2.4. Port 3 Port 3 (P3.0-P3.7) có số chân từ 10-17. Port 3 là port xuất nhập 8bit hai chiều có sử dụng điện trở kéo lên bên trong. Port 3 có các bộ đệm xuất có thể nhận/cấp dòng cho 4 ngõ vào TTL. Khi các chân của Port 3 được ghi mức logic 1 các chân này được kéo lên mức cao và có thể sử dụng như những ngõ vào. Trong các ngõ vào, các chân của Port 3 được kéo xuống mức thấp với dòng cấp (Iil) vì có điện trở kéo lên bên trong. Port 3 đóng vai trò là ngõ vào của các tín hiệu điều khiển khi lập trình Flash và kiểm tra chương trình. Chức năng các chân của Port 3: 2.5. PSEN PSEN( Program Store Enable) là chân cho phép truy xuất bộ nhớ chương trình ngoài, là tín hiệu xuất tích cực mức thấp. Chân số 29. PSEN\=0: trong thời gian CPU tìm- nạp lệnh từ ROM ngoài. PSEN\=1: khi CPU sử dụng ROM trong. Khi sử dụng bộ nhớ chương trình bên ngoài chân PSEN\ thường nối với chân OE\ của ROM ngoài để cho phép đọc mã lệnh từ ROM ngoài. 2.6. ALE ALE (Address Latch Enable) chân 30, là xung của ngõ ra cho phép chốt địa chỉ để thực hiện giải đa hợp cho bus địa chỉ byte thấp và bus dữ liệu đa hợp(AD0-AD7), là tín hiệu xuất tích cực mức cao. ALE=0: trong thời gian AD0-AD7 đóng vai trò là bus D0- D7. ALE=1: trong thời gian AD0-AD7 đóng vai trò là bus A0- A7. Khi lập trình ROM trong chip thì chân này đóng vai trò là ngõ vào của xung lập trình (PROG\). Khi hoạt động bình thường tần số xung tại chân ALE bằng 1/6 tần số dao động trên chip (tần số thạch anh) và có thể sử dụng cho việc định thời từ bên ngoài hoặc dùng làm xung clock cho các mạch khác. Khi lệnh lấy dữ liệu từ RAM ngoài(MOVX) được thực hiện thì một xung ALE bị bỏ qua. Hoạt động của ALE sẽ bị vô hiệu hóa bởi việc set bit 0 của thanh ghi có chức năng đặc biệt có địa chỉ byte là 8EH. Khi set bit này ALE chỉ tích cực trong thời gian thực thi lệnh MOVC hoặc MOVX, ngược lại chân này sẽ được kéo lên mức cao. Việc set bit không cho phép ALE hoạt động sẽ không có tác dụng nếu bộ vi điều khiển đang ở chế độ chạy chương trình bên ngoài. 2.7. EA\ EA( External Access) chân 31, cho phép truy xuất bộ nhớ chương trình (ROM) ngoài, là một tín hiệu nhập tích cực mức thấp. EA\=0: chip sử dụng chương trình của ROM ngoài. EA\=1: chip sử dụng chương trình của ROM trong. Khi lập trình cho ROM trong chip thì chân EA đóng vai trò là ngõ vào của điện áp lập trình. Lưu ý: nếu sử dụng chương trình của ROM trong thì chân EA\ phải được nối lên Vcc hoặc sử dụng chương trình của ROM ngoài thì phải nối xuống GND, không bao giờ được bỏ trống chân này. 2.8. XTAL1, XTAL2 XTAL(Crystal): tinh thể thạch anh, dùng để nối với thạch anh hoặc mạch dao động tạo xung clock cho chip hoạt động XTAL1: chân 18 ngõ vào mạch tạo xung clock trong chip. XTAL2: chân 19 ngõ ra mạch tạo xung clock trong chip. Kết nối thạch anh, với Thạch anh 2MHz đến 33MHz 2.9. RST RST(Reset) chân số 9, là tín hiệu cho phép lặp lại trạng thái ban đầu cho hệ thống, là tín hiệu nhập tích cực mức cao. RST=0: chip AT89S51 hoạt động bình thường. RST=1: chip AT89S51 được thiết lập lại trạng thái ban đầu. 2.10. Vcc,GND Vcc,GND: cung cấp nguồn điện cho AT89S51 hoạt động, chân số 40 và 20. 3. Cấu trúc bên trong của vi điều khiển AT89S51. 3.1. Bộ nhớ chương trình(ROM) Bộ nhớ ROM dùng để lưu trữ chương trình điều khiển cho chip 89S51 hoạt động do người lập trình nạp vào vi điều khiển. Bộ nhớ bên trong vi điều khiển 89S51 có 4KB là bộ nhớ Flash ROM cho phép xóa bộ nhớ ROM bằng điện và nạp vào chương trình mới cũng bằng điện, có thể nạp xóa nhiều lần. Bộ nhớ ROM được định địa chỉ bắt đầu từ 0000H. Ngoài ra 89S51 còn có khả năng mở rộng bộ nhớ ROM với việc giao tiếp với bộ nhớ ROM bên ngoài lên đến 64KB(địa chỉ từ 0000H-FFFFH). 3.2. Bộ nhớ dữ liệu(RAM) Bộ nhớ RAM dùng để lưu trữ dữ liệu, các kết quả trung gian và kết quả cuối cùng của phép toán, xử lý thông tin. AT89S51 có 128byte RAM trong, địa chỉ truy xuất 00H-7FH và được chia ra thành các vùng: các dãy thanh ghi, RAM đa chức năng, RAM định địa chỉ bit. • Vùng các dãy thanh ghi: có địa chỉ bit 00H-1FH gồm 4 dãy và 8 thanh ghi, tại mỗi thời điểm chỉ có một dãy thanh ghi được truy xuất với các thanh ghi từ R0-R7 để thay đổi việc truy xuất các thanh ghi trên các dãy thanh ghi người ta phải thay đổi các bit chọn dãy trong thanh ghi trạng thái PSW bằng các câu lệnh trong chương trình. Các dãy thanh ghi cho phép truy xuất dữ liệu nhanh, lệnh truy xuất đơn giản và ngăn gọn nên người viết chương trình thường sử dụng các thanh ghi này. • Vùng RAM định địa chỉ bit: có 210 ô nhớ bit được định địa chỉ, cho phép xử lý từng bit dữ liệu riêng lẻ mà không ảnh hưởng đến các bit khác trong cả byte. Trong đó có 128 bit nằm trong các ô nhớ có địa chỉ byte 20H-2FH, các bit nhớ còn lại nằm trong nhóm thanh ghi có chức năng đặc biệt. • Vùng RAM đa chức năng: có địa chỉ byte 30H-7FH dùng để lưu trữ dữ liệu và được truy xuất theo từng byte. • Các thanh ghi có chức năng đặc biệt: Các thanh ghi này được định địa chỉ byte, một số được định thêm địa chỉ bit, có địa chỉ của các thanh ghi này nằm trong khoảng 80H đến FFH. Các thanh ghi đặc biệt này này được dùng để xác lập trạng thái hoạt động cần thiết cho Vi điều khiển. 3.3. Các thanh ghi có chức năng đặc biệt. - Thanh ghi A: Thanh ghi A là thanh ghi quan trọng, dùng để lưu trữ các toán hạng và kết quả của phép tính. Thanh ghi A có độ dài 8 bits, có địa chỉ là E0H. - Thanh ghi B: Thanh ghi B ở địa chỉ F0H, được dùng với thanh ghi A để thực hiện các phép toán số học. Khi thực hiện lệnh chia với thanh ghi A, số dư được lưu trữ ở thanh ghi B. Ngoài ra thanh ghi B còn được dùng như một thanh ghi đệm có nhiều chức năng. - Thanh ghi trạng thái chương trình PSW: địa chỉ byte D0H, địa chỉ bit D0H-D7H, cho biết trạng thái làm việc của CPU, mỗi bit của PSW có một chức năng. Chức năng từng bit trong thanh trạng thái PSW: * Cờ nhớ CY: địa chỉ bit D7H, cờ nhớ báo có nhớ/mượn tại bit 7 trong các lệnh toán học CY=0 nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7. CY=1 nếu có nhớ từ bit 7 hoặc có mượn cho bit 7. * Cờ nhớ phụ AC: địa chỉ bit D6H, cờ nhớ báo có nhớ/mượn tại bit 3 trong các lệnh toán học. AC=0 nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3. AC=1 nếu có nhớ từ bit 3 hoặc có mượn cho bit 3. * Cờ F0 hay cờ nhớ Z: địa chỉ bit D5H F0=0 khi thanh ghi A có giá trị khác 0 F0=1 khi thanh ghi A có giá trị là 0 *Các bit chọn dãy thanh ghi: địa chỉ bit D3H và D4H, hai thanh ghi RS0 và RS1 dùng để xác lập dãy thanh ghi được sử dụng. *Cờ tràn OV: địa chỉ bit D2H, được sử dụng trong các phép toán cộng có dấu, với các phép toán cộng không dấu cờ tràn OV được bỏ qua, không cần quan tâm đến OV. Nếu: Phép cộng hai số có dấu lớn hơn +127 thì OV=1 Hoặc phép trừ hai số có dấu nhỏ hơn -127 thì OV=1. Các trường hợp còn lại OV=0. *Cờ chẵn lẻ: địa chỉ bit D0H, cờ chẵn lẻ P tự động được đặt bằng 1 hoặc 0 sao cho tổng số bit mang giá trị 1 trên thanh ghi A với cờ P luôn là một số chẵn. Cờ chẵn lẻ được dùng để xử lí dữ liệu trước khi truyền đi theo kiểu nối tiếp hoặc xử lí dữ liệu trước khi nhận vào theo kiểu nối tiếp( hạn chế lỗi phát sinh trong quá trình truyền). - Thanh ghi SP( Stack Pointer) Con trỏ ngăn xếp SP là một thanh ghi có địa chỉ 81H, giá trị của nó được tăng,giảm tự động khi thực hiện các lệnh PUSH, CALL,POP con trỏ SP dùng quản lí và xử lí các nhóm dữ liệu liên tục.Giá trị mặc định của SP là 07H. - Thanh ghi DPTR: Con trỏ dữ liệu DPTR là thanh ghi 16 bit duy nhất của Vi điều khiển được tạo thành từ hai thanh ghi DPL (byte thấp-địa chỉ byte 82H) và DPH (byte cao-địa chỉ byte 83H). Hai thanh ghi DPL và DPT có thể truy xuất độc lập bởi người sử dụng. Con trỏ dữ liệu DPTR thường được sử dụng khi truy xuất dữ liệu từ bộ nhớ ROM hoặc bộ nhớ từ bên ngoài. - Thanh ghi port xuất nhập: địa chỉ byte 80H(P0), 90H(P1), A0H(P2), B0H(P3) dùng để chứa dữ liệu hiện tại trên các port xuất nhập. - Thanh ghi SBUF(Serial Buffer) bộ đệm port nối tiếp địa chỉ byte 99H. Sử dụng để chứa dữ liệu cần truyền ra bên ngoài hay dữ liệu nhận được từ bên ngoài vào dưới dạng nối tiếp. - Thanh ghi SCON(Serial Control) địa chỉ byte 98H, báo trạng thái và điều khiển quá trình hoạt động của port nối tiếp. - Thanh ghi TIMER 0:bộ định thời 0, địa chỉ byte 8CH(TH0) và 8AH(TL0) là thanh ghi bộ định thời 16bit(TH0+TL0) chứa giá trị hiện tại của bộ định thời 0. -Thanh ghi TIMER 1: địa chỉ byte 8DH(TH1) và 8BH(TL1) là thanh ghi bộ định thời 16bit(TH1+TL1) chứa giá trị hiện tại của bộ định thời1. - Thanh ghi TMOD (Timer Mode) địa chỉ byte 89H quy định chế độ hoạt động cho cả hai bộ định thời T0 và T1. - Thanh ghi TCON (timer control) địa chỉ 88H, dùng để báo trạng thái và điều khiển quá trình hoạt động của hai bộ định thời T0 và T1. - Thanh ghi IE (Interrupt Enable) địa chỉ byte A8H, địa chỉ bit A8H-AFH, dùng để cho phép hoặc không cho phép các ngắt hoạt động (từng ngắt riêng rẽ hoặc tất cả các ngắt). - Thanh ghi IP (Interrupt Priority) địa chỉ byte B8H, địa chỉ bit B8H-BCH, dùng thiết lập mức ưu tiên cho các ngắt ( ưu tiên thấp hoặc ưu tiên cao). - Thanh ghi PCON (Power control) địa chỉ byte 87H, để điều khiển tốc độ baud của port nối tiếp, điều khiển chế độ nguồn giảm và chế độ nghỉ của chip. Trong đó: + Bit SMOD: Serial Mode cho phép tăng gấp đôi tốc độ truyền dữ liệu nối tiếp khi SMOD=1. + Bit GF1,GF0: General Function + Bit PD: Power Down dùng để quy định chế độ nguồn giảm. + Bit IDL: Idle dùng để quy định chế độ nghỉ. • Chế độ nguồn giảm(PD=1) mạch dao động trên chip ngưng hoạt động mọi chức năng ngưng hoạt động nhưng nội dung của RAM trên chip vẫn được duy trì, các chân port duy trì mức logic của chúng. ALE=0; PSEN\=0; Vcc=2V. Để thoát khỏi chế độ này bằng cách Reset hệ thống. Lưu ý hệ thống phải phục hồi Vcc về trạng thái bình thường trước khi Reset hệ thống. • Chế độ nghỉ (IDL=1) mạch dao động trên chip ngưng hoạt động; các mức ngắt, định thời và port nối tiếp còn hoạt động. Nội dung của RAM trên chip được duy trì, các chân port duy trì mức logic của chúng. ALE=1; PSEN\=1; Vcc=5V. Để thoát khỏi chế độ này bằng cách Reset hoặc bằng cách cho phép ngắt 1.4. Bộ nhớ ngoài AT89S51 có khả năng mở rộng bộ nhớ ngoài chip: - Bộ nhớ chương trình lên đến 64KB. - Bộ nhớ dữ liệu lên đến 64 KB. Khi AT89S51 sử dụng bộ nhớ ngoài: - Port 0 có vai trò là bus địa chỉ byte thấp và bus dữ liệu đa hợp(AD0-AD7) - Port 2 có vai trò là bus địa chỉ byte cao (A8-A15) - Port 3 có vai trò là các tín hiệu điều khiển (WR\, RD\) II.ic 74595 2.1 Đặc điểm Là IC ghi dịch dữ liệu 2.2 Sơ đồ chân 2.3 Nguyên lý hoạt động 74595 có các chân và hoạt tác dụng của chúng như sau: - 8 chân xuất dữ liệu, chân reset (10), cho phép chip (13): Mấy chân này chắc ko phải nói j rồi. - Một chân nhận dữ liệu vào nối tiếp (14): Bạn muốn dịch bit 0 hay 1 thì tác động vào đây. - Một chân xung clock (11): Cứ mỗi xung tác động vào chân này thì bit logic tại chân nhận dữ liệu (14) sẽ đc dịch vào một lần. - Một chân chốt dữ liệu (12): Mỗi lần có xung tác động vào chân này thì dữ liệu đc xuất ra một lần - Còn chân 9: Thì cứ có 8 xung tác động vào chân clock nó lại xuất ra một xung. [...]... A1015 được điều khiển bằng chân B chân C nối vào led , chân E nối nguồn IV ic 7805 4.1 Đặc điểm Dùng làm ổn áp nguồn 5v 4.2 Sơ đồ chân 4.3 Nguyên tắc hoạt động ổn định điện áp đầu ra 5v V.Thạch anh Dùng để tạo dao động với tần số 24Mhz cung cấp cho vi điều khiển VI.Tụ Dùng để lọc nhiểu từ nguồn VII trở Dùng để đảm bảo ổn định cho mạch reset VIII led Sử dụng led 5li màu xanh lá cây IX trở kéo Dùng để gắn . BÁO CÁO THỰC TẬP Đề tài Led matrix MỤC LỤC I.ic 89s51 2 1.1 đặc điểm 2 1.2 sơ đồ chân 2 1.3 cấu trúc bên trong vi điều. khiển VI.Tụ Dùng để lọc nhiểu từ nguồn VII . trở Dùng để đảm bảo ổn định cho mạch reset VIII. led Sử dụng led 5li màu xanh lá cây IX. trở kéo Dùng để gắn vào đầu ra của port P0 , giúp port P0 họat. vỏ dẹt vuông QFP (Quad Flat Pakage) và dạng chíp không có chân đỡ LLC (Leadless Chip Carrier) đều có 40 chân có các chức năng khác nhau như xuất nhập dữ liêu, định địa chỉ Tuy nhiên, ở đây

Ngày đăng: 07/08/2014, 01:22

Tài liệu cùng người dùng

Tài liệu liên quan