Danh mục

Bài tập ôn về Kỹ thuật vi điều khiển

Số trang: 21      Loại file: ppt      Dung lượng: 922.00 KB      Lượt xem: 15      Lượt tải: 0    
Jamona

Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

+ Kết nối trực tiếpLED được kết nối trực tiếp với AT89C51theo hai chế độ là hút dòng và xả dòng.Nguyên lý kết nối như sau :
Nội dung trích xuất từ tài liệu:
Bài tập ôn về Kỹ thuật vi điều khiển-Ghép nối với bàn phím: Ghép nối vi điều khiển với led đơn:- + Kết nối trực tiếp LED được kết nối trực tiếp với AT89C51 theo hai chế độ là hút dòng và xả dòng. Nguyên lý kết nối như sau :Ở chế độ xả dòng thì LED sẽ không sáng được hết công suất vì đầu radòng của chân vi xử lý thường thấpỞ chế độ hút dòng thì LED sẽ sáng được hết công suất nhưng sẽ làmhại vi xử lý nếu LED có công suất lớn vì dòng qua vi xử lý quá mức chophép. Trong các mạch ghép nối với LED có dòng tiêu thụ thấp thì ngườita sẽ dùng kiểu ghép hút dòng này.+ Kết nối thông qua IC đệmĐối với kiểu này thì LED được kết nối thông qua các ICđệm như transitor, các IC đệm dòng chuyên dụng nhưULN2803...Đối với kiểu này thì LED được mắc như sau:Đối với kiểu ghép này đảm bảo cho vi xử lý không bịquá tải và cho LED sáng nhất. Với kiểu ghép này thìcó thể chạy được LED công suất lớn. Ngoài transitorcòn có các loại IC đệm dòng tương đối như (500mAULN2803)....-Ghép nối vi điều khiển với led 7 đoạn: Để ghép nối với LED7 có thể có nhiềucách, nhưng phải đảm bảo sao có thể điềukhiển tắt mở riêng từng LED đơn trong đó đểtạo ra các số và các ký tự mong muốn.CácICs điều khiển đều khó khả năng sinh dòngkém tức là dòng đầu ra của các chân ICs nhỏhơn khả năng nuốt dòng. Do vậy, nếu ghépnối trực tiếp các net với các chân cổng IC thìloại Anode chung là thích hợp hơn cả. Cầnphải chú ý dòng dồn về ICs quá mức chịuđược thì cũng không được vì làm nóng và deiICs điều khiển* 2 cách ghép nối thường dùng:+ Cách 1 : Dùng trực tiếp các chân điều khiển (vixử lý) Đối với cách này thì nhìn thì rất tốn chân của vi xử lý. Vàdòng của LED sẽ dồn tất cả về vi xử lý. Nếu một h ệ thống lớnthì cách này không ổn vì ảnh hưởng đến vi xử lý và nhiềudòng dồn về vi xử lý sẽ làm vi xử lý nóng và dẫn tới chết( chúng ta tưởng tượng xem nếu mà hệ thống nhiều phầnđiều khiển từ các chân vi xử lý mà tất cả các tải điều khiểndồn trực tiếp dòng về vi xử lý thì lúc đó dòng trong 1 th ời đi ểmkhá lớn vượt quá ngưỡng cho phép của vi xử lý. Dòng mà vi xử lý chịu đựng được cũng khá nhỏ đâu dưới100mA ). Các này chỉ dùng được hệ thống điều khiển ít, mạchdùng vi xử lý khá đơn giản như hiện thị LED, đếm số t ừ 0 đến9 ... chả hạn+ Cách 2 : Dùng IC giải mã BCD sang LED 7 thanhSử dụng IC giải mã 7447 để giả mã từ mã BCD sang mãLED7. Đối với cách này thì trông rất ổn. Vừa tiếp kiệmđược chân vi xử lý và tránh được dòng dồn về vi xử lý(dòng ở đây được dồn về 7447). Đây là cách mà ngườithiết kế thường dùng trong các hệ thống cần đến hiện th ị.Thông thường các thiết kế, LED 7 thanh được dùng đểhiện thị các giá trị các giá trị số từ 0 đến 9 và đôi khi cầnphải hiện thị các kí tự đơn giản như A đến F trong h ệthống để báo trạng thái của hệ thống. Các giá trị hiện th ịbao gồm nhiều chữ số tức là chúng ta phải dùng đếnnhiều LED7 ghép lại thì mới hiện thị được nhiều số. Ví d ụnhư muốn hiện thị số 123 chả hạn thì chúng ta ph ải dùngđến 3 LED 7 thanh ghép lại.ORG 000H ; khai bao dia chi de bat dau chuong trinh tren Rom Tudau: Mov P1,#1B ;==>>lam 1 led noi P1 sang LCall Delay ;===>>>> goi chuong trinh con Delay Mov P1,#0 ;===>>>> lam 1 led noi P1 tat LCall Delay Sjmp Tudau ;===>>>> nhay ve thuc hien tu dau ;>>>>chương trình con tạo độDelay: trễ 1s PUSH 00HPUSH 01HMOV R1,#5Here:MOV R0,#250DJNZ R0,$DJNZ R1,herePOP 01HPOP 00HRETend;/////>>>>>Chữ “HELLO” chạy từ phải sang trái:ORG: 00HMain: ;nạp địa chỉ vùng mã hiển Mov DISP,#CODEDISP thịMIP: ;>>>biến lặp-thời gian của 1 trạng thái Mov R0,#20 màn hìnhSTATICDISP:LCALL DISP7SEGMUL ;hiển thị chuỗi lý tự ;giảm biến lặpDJNZ r0,STATICDISP ;dịch chuỗi đi 1 mã ký tựINC DPTRMov A,DPL ; kiểm tra hiển thịCJNE A,#LOW(CODEDISP+16),Mp1 xong chuỗiSJMP MAIN DISP7SEGMUL: ;cất tạm thời giá trị các thanh ghi PUSH ACC PUSH 00H PUSH 01H Mov R0,#7FH ;mã quét Mov R1,#00H ;vị trí của dữ liệu trong vùng nhớDPTR SETB C DISP: Mov A,R1 ;lấy mã hiện thị Mov A,@A+DPTR ;Xuất mã hiển thị Mov P0,A ;xuất mã quét MOV P1, R0 LCALL DELAYLEDMOV P1,#0FFH ;lấy mã hiển thị kế tiếpINC R1 ;Lấy mã quyets kế tiếpMOV A,R0 ;quay phải A qua cờ CRRC AMOV R0,A ;kiểm tra mã quét xong(C=0)JC DISPPOP 01H ;phục hồi giá trị cho các thanh ghiPOP 00HPOP ACC ;>>>>chương trình con tạo độ trễ 1sRETDelay: PUSH 00HPUSH 01HMOV R1,#5Here:MOV R0,#250DJNZ R0,$DJNZ R1,herePOP 01HPOP 00HRET ...

Tài liệu được xem nhiều: