Giáo trình Hướng dẫn lắp ráp các mạch vi xử lý
MỤC LỤC
Lời Nói Đầu
Vấn đề 1:
KHÁI LƯỢC VỀ HỌ ATMEL AT80C51
PHẦN 1: HƯỚNG DẪN LẮP RÁP CÁC LOẠI MẠCH NẠP VI XỬ LÝ
Vấn đề 2:
MẠCH NẠP :
AT89C51 - QUA CỔNG COM
Vấn đề 3:
MẠCH NẠP :
AT89C2051 - QUA CỔNG COM
Vấn đề 4:
MẠCH NẠP:
AT89C2051 QUA CỔNG MÁY IN
PHẦN 2: HƯỚNG DẪN LÀM BO MẠCH IN CHẤT LƯỢNG CAO
Vấn đề 6:
HƯỚNG DẪN THIẾT KẾ MẠCH IN TRÊN MÁY TÍNH
BẰNG PHẦN MỀM : Eagle 4.01
Vấn đề 7:
PHƯƠNG PHÁP IN BẢN VẼ LÊN BO ĐỒNG
PHẦN 3: HƯỚNG DẪN SỬ DỤNG CÁC PHẦN MỀM VI XỬ LÝ
Vấn đề 8:
MỘT SỐ PHẦN MỀM LẬP TRÌNH / SOẠN THẢO ASSEMBLY
Vấn đề 9:
PHẦN MỀM BIÊN DỊCH RA FILE HEX : ASM / TASM
Vấn đề 10 :
CÁC PHẦN MỀM MÔ PHỎNG VI XỬ LÝ
Vấn đề 11 :
HƯỚNG DẪN SỬ DỤNG Ezdl4.0 CHO CÁC MẠCH NẠP
PHẦN 4: CÁC MẠCH ĐIỆN VI XỬ LÝ - LÝ THÚ- ĐƠN GIẢN
CHO NGƯỜI MỚI BẮT ĐẦU HỌC LẬP TRÌNH CÙNG VI XỬ LÝ
Vấn đề 12:
HÃY LÀM MẠCH ĐÈN CHỚP VỚI 89C51
Vấn đề 13:
HÃY LÀM BỘ ĐIỀU KHIỂN NHÚNG ĐƠN GIẢN
Vấn đề 14:
LÀM CÒI HỤ VỚI HAI MỨC ÂM ĐIỆU KHÁC NHAU
Vấn đề 15 :
LÀM ĐỒNG HỒ BÁO GIỜI ĐIỆN TƯ- Lập trình C
Vấn đề 16 :
LÀM ĐỒNG HỒ BÁO GIỜI ĐIỆN TỬ- Lập trình bằng
Vấn đề 17 :
GIAO TIẾP 89C51 VỚI MA TRẬN PHÍM 4X4
VÀ HIỂN THỊ TRÊN LED 7 SEG
VẤN ĐỀ 18:
GIAO TIẾP ADC0809
LÀM BỘ ĐO ĐIỆN ÁP: 0 5V
LỜI KẾT.
PHEP ;--- INT1_T0_INT0 MOV TMOD,#11H MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 LAP: CALL HIEN_THI CALL TEST_PHIM CALL KIEM_TRA1S SJMP LAP ;********************************************** HIEN_THI: JNB FL_HOR_TEM,HIEN_THI_GIO ;IF FL_HOR_TEM=0 THEN "HIEN THI GIO" LJMP HIEN_THI_TEM ;ELSE FL_HOR_TEM=1 THEN "HIEN THI NHIET DO" HIEN_THI_GIO: ;----HIEN THI DATA LEN CAC LED----------- MOV DPTR,#BANG_MA_LED ;LED1 MOV P0,#11111110B www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 81 - MOV A,17H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh; Chong nhieu ;LED2 MOV P0,#11111101B MOV A,16H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ; Chong Nhieu ;LED3 MOV P0,#11111011B MOV A,15H MOVC A,@A+DPTR ANL A,#10111111B MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED4 MOV P0,#11110111B MOV A,14H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED5 MOV P0,#11101111B MOV A,13H MOVC A,@A+DPTR ANL A,#10111111B MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED6 MOV P0,#11011111B MOV A,12H ;KIEM TRA -DE TAT MO LED CH CJNE A,#0,MOLED_CH ; Neu CH khac 0 thi Nhay den MOLED_CH ; Neu CH la 0 thi tat led CH MOV P2,#0ffh ; Xoa Led CH khi no la so:"0" LCALL DELAY1 MOV P2,#0ffh ;Chong Nhieu LJMP THOAT_HIENTHI ;---- MOLED_CH-------- MOLED_CH: MOVC A,@A+DPTR www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 82 - MOV P2,A LCALL DELAY1 MOV P2,#0FFH ;Chong Nhieu LJMP THOAT_HIENTHI ;============================================================= HIEN_THI_TEM: ;-------------------------HIEN THI NHIET DO---------------------------------- ;---BEFOR DISPLAY VALUE TEMPRATURE WE MUST CONVECTER ANALOG TO DISGITAL------ INC R5 PUSH ACC MOV A,R5 CJNE A,#100,CHUA_CAP_NHAT ;----CAP NHAT LAI TEM VALUE------ CALL CON_ADC MOV R5,#0 CHUA_CAP_NHAT: POP ACC ;-------------------------------- ; ghcbaFed ; : 10000000B ; : 11110000B ;CHU C ; : 01100011B ;SO 0 NHO MOV P0,#11111110B MOV P2,#11110000B ;CHU C LCALL DELAY1 mov p2,#0ffh; Chong nhieu LCALL DELAY1 MOV P0,#11111101B MOV P2,#01100011B ;SO 0 NHO LCALL DELAY1 mov p2,#0ffh; Chong nhieu LCALL DELAY1 ;--------HIENTHI GIA TRIN TEM----------- MOV P0,#11111011B MOV A,22H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ; Chong Nhieu LCALL DELAY1 MOV P0,#11110111B MOV A,21H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 83 - mov p2,#0ffh ;Chong Nhieu LCALL DELAY1 MOV P0,#11101111B MOV A,20H CJNE A,#00,HIENTHI_TEM_100 LJMP THOAT_HIENTHI HIENTHI_TEM_100: MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu LCALL DELAY1 THOAT_HIENTHI: RET ;**************************************************** KIEM_TRA1S: ;-----KIEM TRA XEM DU 1s CHUA ?------------- CJNE R2,#100,KET_THUC MOV R2,#00H ;------------------------PROCESS TEMPRATURE------------------------------------------------- INC R0 CJNE R0,#10,R0_BY_13 ; IF R010 THEN JUMPER TO TEST IT BY 13 ? SETB FL_HOR_TEM ; ELSE R0=10 THEN SET FLAG=1 FOR HTHI TEMPRATURE LJMP CONT_UPDATE_NO_HT ; TIEP TUC CAP NHAT NHUNG KHONG HIEN THI GIA TRI GIO R0_BY_13: CJNE R0,#13,CONT_UPDATE_NO_HT ; IF R0=13 THAT MEAN IS "TEMPRATURE DISPLAY IN 3S" CLR FL_HOR_TEM ; AFTER 3S IT WILL RE_DISPLAY VALUE OF HOUR ; SO WE MUST RESET VALUE OF FLAG = 0 MOV R0,#0 ;--------------------------------------------------------------------------------------- CONT_UPDATE_NO_HT: INC 17H MOV A,17H CJNE A,#10,KET_THUC MOV 17H,#00 INC 16H MOV A,16H CJNE A,#6,KET_THUC MOV 16H,#00 INC 15H MOV A,15H CJNE A,#10,KET_THUC www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 84 - MOV 15H,#00 INC 14H MOV A,14H CJNE A,#6,KET_THUC MOV 14H,#00 INC 13H MOV A,13H CJNE A,#03,TANG_DVH_LEN_10 ;--NEU LA 3 THI KTRA TIEP---- MOV A,12H CJNE A,#01,KET_THUC ; DUNG DVH LA 3 VA CH KHONG LA 1 THI NHAY TOI CP DE CP=0 MOV 12H,#00H MOV 13H,#01H LJMP KET_THUC ;----TANG DVH LEN 10 KHI NO KHONG PHAI LA S0 3---------- TANG_DVH_LEN_10: CJNE A,#10,KET_THUC MOV 13H,#00 INC 12H KET_THUC: RET ;*************************************************************** ;----- DELAY---------- DELAY1: MOV R7,#10H DJNZ R7,$ RET ;*************************************************************** ;CHUONG TRINH CON NGAT TIMER0 NGAT_TIMER0: INC R2 ;tre 1us MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 RETI ;******************************************************* ; TEST_PHIM: JB P3.3,PHIM2 CALL NGAT_PHUT www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 85 - LJMP THOAT_PHIM1 ;******************************************************* PHIM2: JB P3.2,THOAT_TEST_PHIM CALL NGAT_GIO LJMP THOAT_PHIM2 ;-------------------------------------- THOAT_PHIM1: TT_KT1: JNB P3.3,HIEN_THI_T1 LJMP THOAT_TEST_PHIM HIEN_THI_T1: CALL HIEN_THI LJMP TT_KT1 THOAT_PHIM2: TT_KT2: JNB P3.2,HIEN_THI_T2 LJMP THOAT_TEST_PHIM HIEN_THI_T2: CALL HIEN_THI LJMP TT_KT2 THOAT_TEST_PHIM: RET ;*************************************************************** ;CHUONG TRINH CON NGAT INTO NGAT_PHUT: ;---CAM BAO NHIET CLR FL_HOR_TEM MOV R0,#0 INC 15H MOV A,15H CJNE A,#10,THOAT1 MOV 15H,#0H INC 14H MOV A,14H CJNE A,#6,THOAT1 MOV 14H,#0H THOAT1: RET ;CHUONG TRINH CON NGAT INT1 NGAT_GIO: www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 86 - CLR FL_HOR_TEM ;---CAM BAO NHIET CLR FL_HOR_TEM MOV R0,#0 INC 13H MOV A,13H CJNE A,#03,NGAT_11 MOV A,12H CJNE A,#1,THOAT2 MOV 12H,#0H MOV 13H,#1 LJMP THOAT2 NGAT_11: CJNE A,#10,THOAT2 MOV 13H,#0 MOV 12H,#1 SJMP THOAT2 THOAT2: RET ;********************************************* CON_ADC: ;*********************** CHON_NGO_VAO: CLR P3.4 CLR P3.5 CLR P3.6 BATDAU_ADC: ACALL START ACALL LAYDATA ACALL CHUYEN_DOI RET ;============================================================== ;QUA TRINH BIEN DOI BAT DAU KHI CO CANH XUONG O TREN CHAN START START: SETB P3.7 NOP NOP NOP CLR P3.7 ;DOI 100US DE QUA TRINH BIEN DOI XONG CALL DELAY120US RET www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 87 - ;============================================================== LAYDATA: MOV A,P1 RET ;============================================================== CHUYEN_DOI: MOV B,#51 DIV AB ; ------LUU HANG TRAM------- MOV 20H,A MOV A,B ;CHIA TIEP MOV B,#10 DIV AB ;-------LUU CHUC------------- MOV 21H,A ;-------LUU TRAM-------------- MOV 22H,B ; ;20H = SE GIU GIA TRI HANG TRAM ;21H = SE GIU GIA TRI HANG CHUC ;22H = GIU GIA TRI HANG DON VI ;========================== RET ;******************************************************************* DELAY120US: MOV TH1,#HIGH(-120) MOV TL1,#LOW(-120) SETB TR1 JNB TF1,$ CLR TR1 CLR TF1 RET ;********************************************* BANG_MA_LED: DB 11000000B;0 DB 11001111B DB 01100100B DB 01000110B DB 01001011B DB 01010010B DB 01010000B DB 11000111B DB 01000000B DB 01000010B;9 END www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Tái bản lần thứ 2 - 88 - Lời kết : Quyển sách cuối cùng đã hoàn thành đúng vào lúc các bạn đang học về vi xử lý . Như vậy sau gần hơn một tháng biên sạan-kể từ lúc khởi thảo , trong thời gian ngắn ấy , tập sách chỉ chú trọng phần nhiều vào mặt thực hành , không đề cặp quá sâu vào lý thuyết . Mục đích mà tôi viết quyển sách này không mong gì hơn là nó sẽ góp phần phục vụ cho các bạn trong việc học vi xử lý đạt được nhiều lợi ích và đam mê hơn bởi sự kết hợp hài hoà giữa lý thuyết và thực hành ! Trong quá trình tự lắp ráp , nếu các bạn gặp sự cố thì hãy liên hệ với chúng tôi, bằng kinh nghiệm đã từng lắp ráp loại này tôi nghĩ sẽ có những lời phúc đáp rất thiết thực , ngõ hầu sẽ đemlại niềm vui cho các bạn , địa chỉ liên hệ : duyphi@yahoo.com Các bạn cũng có thể xem nội dung của quyển sách này , cùng các tài liệu khác không những về vi xử lý , mà còn nhiều môn khác như điện tử , kỹ thuật số , điện công nghiệp , điện tử cơ bản .tại địa chỉ website sau của tôi : www.microduyphi.com Dĩ nhiên đây là lần đầu tôi làm công việc này , nên sai xótvà nhiều khyếm khuyết là điều sẽ có thể xảy ra , tôi xin trân trọng lắng nghe sự đóng góp ý kiến của các bạn cùng của các sư huynh và của thầy co trên tinh thần góp ý , sửa chữa để ngày một cùng nhau hoàn thiện hơn ! Trên tinh thần ấy tôi xin vô cùng cám ơn quý vị , và tôi sẽ cố gắng hơn nữa để sớm giớ thiệu với bạn đọc tập 2: “Hướng dẫn giao tiếp vi xử lý với máy tính bằng Visual Basic” Cuối cùng tôi xin có lời tri ơn sâu sắc đến các bạn trong trường , các sư huynh cùng quý thầy cô đã có lời động viên , có lời góp ý trong suốt thời gian tôi viết quyển sách này . Một lần nữa tôi xin chân thành cám ơn các bạn đã đọc quyển sàch này ! Xin chúc các bạn luôn vui vẻ và gặt hái được nhiều thành công từ quyển sách nhỏ này! Thực hiện: Lê Duy Phi 10-05-2005 - Nha Trang
File đính kèm:
- giao_trinh_huong_dan_lap_rap_cac_mach_vi_xu_ly.pdf