Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 39 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
39
Dung lượng
782,5 KB
Nội dung
ĐIỀUKHIỂNĐỘNGCƠBƯỚC MỤC LỤC LỜI NÓI ĐẦU 1 ĐIỀUKHIỂNĐỘNGCƠBƯỚC 1 MỤC LỤC 2 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 6 CHƯƠNG I : 7 KHÁI QUÁT CHUNG VỀ VI ĐIỀUKHIỂN 89C51 7 1.1 Cấu trúc phần cứng của MSC-51 7 1.2 Khảo sát sơ đồ chân tín hiệu của 89C51 8 1.2.1 Sơ đồ chân 8 1.2.2 Chức năng các chân tín hiệu 8 1.3 Chức năng thanh ghi đặc biệt của 89C51 9 1.3.1 Thanh ghi ACC 10 1.3.2 Thanh ghi B 11 1.3.3 Thanh ghi SP 11 1.3.4 Thanh ghi DPTR 11 1.3.5 Ports 0 to 3 11 1.3.6 Thanh ghi SBUF 11 1.3.7 Các thanh ghi Timer 12 1.3.8 Các thanh ghi điềukhiển 12 1.3.9 Thanh ghi PSW 12 1.3.10. Thanh ghi PCON ( Thanh ghi điềukhiển nguồn ) 13 1.3.11 Thanh ghi IE (Thanh ghi cho phép ngắt) 13 1.3.15 Thanh ghi SCON 15 1.4.Cấu trúc và tổ chức bộ nhớ 16 1.4.1 Bộ nhớ chương trình và bộ nhớ dữ liệu nội trú 16 1.4.1.2 Bộ nhớ dữ liệu nội trú 17 1.4.2. Bộ nhớ chương trình và bộ nhớ dữ liệu ngoại trú 19 1.4.3. Bộ nhớ chương trình ngoại trú 20 1.4.4 Bộ nhớ dữ liệu ngoại trú 21 1.5. Khối tạo thời gian và bộ đếm (Timer/Counter) 23 1.5.1 Giới thiệu chung 23 1.5.2 Khối tạo thời gian và bộ đếm 23 2.2 Sơ đồ khối: 27 2.3 Chức năng các khối 28 2.3.1 Khối nguồn: 28 2.3.4 Động cơ: 31 2.4 Độngcơbước 31 2.3.2 ULN2803 34 Chương trình điều khiển: 35 $INCLUDE(REG51.INC) 35 ORG 0000H 35 TURN_OFF: 35 MOV P3,#0FFH 35 MOV P0,#00H 35 MOV 30H,#10 35 35 JNB P3.1,RIGHT 35 35 JNB P3.2,LEFT 35 35 JMP TURN_OFF 35 35 ;=======QUAY PHAI ========= 35 RIGHT: 35 MOV R5,#8 35 MOV DPTR,#CODE1 35 MOV R0,#1 35 CLR P3.6 35 SETB P3.7 35 35 36 ;K1: JNB P3.2,LEFT 36 JMP QUAY 36 ;=========QUAY TRAI========= 36 LEFT: 36 MOV R5,#8 36 MOV DPTR,#CODE2 36 MOV R0,#0 36 CLR P3.7 36 SETB P3.6 36 ;K2: JNB P3.1,RIGHT 36 36 JMP QUAY 36 ;========CHUONG TRINH QUAY====== 36 QUAY: 36 MOV R4,30H 36 JNB P3.0,STOP 36 CLR A 36 MOVC A,@A+DPTR 36 MOV P0,A 36 CALL DELAY 36 INC DPTR 36 JNB P3.3,TANG_TOC 36 JNB P3.4,GIAM_TOC 36 K8: CJNE R0,#0,K3 36 CJNE R0,#1,K4 37 K3: ;DJNZ R5,K1 37 DJNZ R5,QUAY 37 JMP RIGHT 37 K4: ;DJNZ R5,K2 37 DJNZ R5,QUAY 37 JMP LEFT 37 ;==========DUNG DONG CO========== 37 STOP: JMP TURN_OFF 37 ;==========TANG TOC============== 37 TANG_TOC: 37 CJNE R4,#5,K7 37 JMP K8 37 K7: 37 DEC 30H 37 JMP K8 37 ;===========GIAM TOC============= 37 GIAM_TOC: 37 CJNE R4,#20,K9 37 JMP K8 37 K9: 37 INC 30H 37 INC 30H 37 JMP K8 37 ;=========== CHUONG TRINH TRE==== 37 DELAY: 37 MOV R1,30H 38 LOOP2: MOV R2,#5 38 LOOP1: MOV R3,#100 38 DJNZ R3,$ 38 DJNZ R2,LOOP1 38 DJNZ R1,LOOP2 38 RET 38 ;=========BANG MA================ 38 CODE1: 38 DB 0F1H,0F3H,0F2H,0F6H,0F4H,0FCH,0F8H,0F9H 38 CODE2: 38 DB 0F9H,0F8H,0FCH,0F4H,0F6H,0F2H,0F3H,0F1H 38 END 38 38 38 38 38 38 38 38 38 KẾT LUẬN 39 39 39 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN CHƯƠNG I : KHÁI QUÁT CHUNG VỀ VI ĐIỀUKHIỂN 89C51 1.1 Cấu trúc phần cứng của MSC-51 Đặc điểm chung của họ vi điềukhiển 8051: - 4 Kb ROM - 128 byte RAM - 4port I/0 8bit - 2 bộ định thời 16bit - Giao tiếp nối tiếp - 64KB không gian bộ nhớ chương trình mở rộng - 64 KB không gian bộ nhớ dữ liệu mở rộng - Một bộ xử lý thao tác trên các bit đơn 1.2 Khảo sát sơ đồ chân tín hiệu của 89C51 1.2.1 Sơ đồ chân Hình 1. IC 80C51/AT89C51 1.2.2 Chức năng các chân tín hiệu - P0.0 đến P0.7 là các chân của cổng 0. - P1.0 đến P1.7 là các chân của cổng 1. - P2.0 đến P2.7 là các chân của cổng 2 - P3.0 đến P3.7 là các chân của cổng 3 - RxD: Nhận tín hiệu kiểu nối tiếp. - TxD: Truyền tín hiệu kiểu nối tiếp. - /INT0: Ngắt ngoài 0. - /INT1: Ngắt ngoài 1. - T0: Chân vào 0 của bộ Timer/Counter 0. - T1: Chân vào 1 của bộ Timer/Counter 1. - /Wr: Ghi dữ liệu vào bộ nhớ ngoài. - /Rd: Đọc dữ liệu từ bộ nhớ ngoài. - RST: Chân vào Reset, tích cực ở mức logic cao trong khoảng 2 chu kỳ máy. - XTAL1: Chân vào mạch khuyếch đaị dao động - XTAL2: Chân ra từ mạch khuyếch đaị dao động. - /PSEN : Chân cho phép đọc bộ nhớ chương trình ngoài (ROM ngoài). - ALE (/PROG): Chân tín hiệu cho phép chốt địa chỉ để truy cập bộ nhớ ngoài, khi On-chip xuất ra byte thấp của địa chỉ. Tín hiệu chốt được kích hoạt ở mức cao, tần số xung chốt = 1/6 tần số dao động của bộ VĐK. Nó có thể được dùng cho các bộ Timer ngoài hoặc cho mục đích tạo xung Clock. Đây cũng là chân nhận xung vào để nạp chương trình cho Flash (hoặc EEPROM) bên trong On-chip khi nó ở mức thấp. - /EA/Vpp: Cho phép On-chip truy cập bộ nhớ chương trình ngoài khi /EA=0, nếu /EA=1 thì On-chip sẽ làm việc với bộ nhớ chương trình nội trú. Khi chân này được cấp nguồn điện áp 12V (Vpp) thì On-chip đảm nhận chức năng nạp chương trình cho Flash bên trong nó. - Vcc: Cung cấp dương nguồn cho On-chip (+ 5V). - GND: nối mát. 1.3 Chức năng thanh ghi đặc biệt của 89C51 SFR đảm nhiệm các chức năng khác nhau trong On-chip. Chúng nằm ở RAM bên trong On-chip, chiếm vùng không gian nhớ 128 Byte được định địa chỉ từ 80h đến FFh. Cấu trúc của SFR bao gồm các chức năng thể hiện ở bảng 1 và bảng 2. Thanh ghi MSB Nội dung LSB IE EA - ET2 ES ET1 EX1 ET0 EX0 IP - - PT2 PS PT1 PX1 PT0 PX0 PSW CY AC FO RS1 RS0 OV - P TMOD GAT E C/(/T) M1 M0 GATE C/(/T) M1 M0 TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 SCON SM0 SM1 SM2 REN TB8 RB8 TI RI PCON SMO D - - - GF1 GF0 PD IDL P1 T2 T2EX /SS MOSI MI SO SCK P3 RXD TXD /INT0 /INT1 T0 T1 / WR /RD Bảng 1. Chức năng riêng của từng thanh ghi trong SFR Symbol Name Address Reset Values * ACC Thanh ghi tích luỹ 0E0h 00000000b * B Thanh ghi B 0F0h 00000000b * PSW Từ trạng thái chương trình 0D0h 00000000b SP Con trỏ ngăn xếp 81h 00000111b DP0L Byte cao của con trỏ dữ liệu 0 82h 00000000b DP0H Byte thấp của con trỏ dữ liệu 0 83h 00000000b * P0 Cổng 0 80h 11111111b * P1 Cổng 1 90h 11111111b Symbol Name Address Reset Values * P2 Cổng 2 0A0h 11111111b * P3 Cổng 3 0B0h 11111111b * IP TG điềukhiển ngắt ưu tiên 0B8h xxx00000b * IE TG điềukhiển cho phép ngắt 0A8h 0xx00000b TMOD Điềukhiển kiểu Timer/Counter 89h 00000000b * TCON TG điềukhiển Timer/Counter 88h 00000000b TH0 Byte cao của Timer/Counter 0 8Ch 00000000b TL0 Byte thấp của Timer/Counter 0 8Ah 00000000b TH1 Byte cao của Timer/Counter 1 8Dh 00000000b TL1 Byte thấp của Timer/Counter 1 8Bh 00000000b * SCON Serial Control 98h 00000000b SBUF Serial Data Buffer 99h indeterminate PCON Power Control 87h 0xxx0000b * : có thể định địa chỉ bit, x: không định nghĩa Bảng 2. Địa chỉ, ý nghĩa và giá trị của các SFR sau khi Reset 1.3.1 Thanh ghi ACC ACC là thanh ghi tích luỹ, dùng để lưu trữ các toán hạng và kết quả của phép tính. Thanh ghi ACC dài 8 bits. Trong các tập lệnh của On-chip, nó thường được quy ước đơn giản là A. [...]... khối công suất để điều khiểnđộngcơ Khi lập trình ta không sử dụng đến chương trình ngắt nên ta treo chân 31 lên +5V 2.3.3 Khối công suất: * Sơ đồ nguyên lý: * Nguyên lý hoạt động: Khuếch đại tín hiệu điềukhiển từ khối điềukhiển rồi đưa tới độngcơ 2.3.4 Động cơ: * Nguyên lý hoạt động: Nhận tín hiệu điềukhiển và thực hiện các lệnh như đã được lập trình 2.4 Động cơbướcĐộngcơbước là một thiết... với độngcơbước Cácbước ghép nối 89C51 với độngcơbước như sau: + Bước 1: Dùng ôm kế đo trở kháng của các đầu dây nhằm xác định đầu dây chung COM để nối với nhau + Bước 2: Các đầu dây chung được nối tới điện áp dương của nguồn cấp cho độngcơ Nhiều độngcơ thường dùng +5V + Bước 3: Bốn đầu của cuộn dây stator được 4 bit cổng P1 (P1.0-P1.3) của 89C51 điềukhiển Tuy nhiên, vì 89C51 không đủ dòng để điều. .. nguồn được cấp đến mỗi cuộn dây stato thì độngcơ sẽ quay Hình dạng và cấu tạo động cơ: Hình dạng thật A B A',B',C',D' C D Cấu tạo của độngcơbước Nguyên lý hoạt động: Động cơbước không quay theo cơ chế thông thường, chúng quay theo từng bước nên có độ chính xác rất cao về mặt điềukhiển học Chúng làm việc nhờ các bộ chuyển mạch điện tử đưa các tín hiệu điềukhiển vào starto theo thứ tự và một tần... bị sử dụng rộng rãi để chuyển các xung điện thành chuyển độngcơ học Trong các ứng dụng chẳng hạn như bộ điềukhiển đĩa, các máy in kim ma trận và các máy robot thì độngcơbước được dùng dể điềukhiển chuyển động Mỗi độngcơbước đều có phần quay roto là nam châm vĩnh cửu được bao bọc xung quanh là một đứng yên gọi stato Hầu hết các độngcơbước đều có chung có 4 stato mà các cuộn dây của chúng được... chuyển đổi *Phương pháp điều khiểnđộngcơbước Các cuộn dây được cấp dòng theo vòng Mỗi khi vòng dây được cấp thì độngcơ được gọi là quay 1 bước A A' B B' t C' t D D' t t Hoạt động của từng cuộn dây trong độngcơbước Các cuộn dây ABCD được nạp theo chu trình : “ABCD”= “1001” “1100” “0110” “0011” Lúc đó độngcơ sẽ quay ngược chiều kim đồng hồ được 1 vòng Muốn độngcơ quay thuận chiều kim... nhiêu thì tốc độ độngcơ sẽ thay đổi bấy nhiêu Tốc độ của độngcơ tỷ nghịch với hàm trễ Ứng dụng: Độngcơbướccó rất nhiều ứng dụng trong kỹ thuật, đặc biệt là trong điềukhiển kỹ thuật số, các dây truền công nghệ hiện đại hiện nay hầu hết đề khai thác sử dụng loại độngcơ này Ngoài ra độngcơ còn được dùng để chế tạo robot 2.3.2 ULN2803 Sơ đồ mạch giao tiêp giữa 89c51 với đôngcơbướccó sử dung... làULN2803 Trong trường hợp các port xuất nhập của vi điềukhiển cần phải điềukhiển những thiết bị công suất lớn hoăc cùng lúc phải điềukhiển nhiều thiêt bị trên 1 port.Lúc này cần đòi hỏi có các bộ khuếch đại dòng điện ngõ ra tại các port xuất nhập của vi điềukhiển thì nó mới có thể đáp ứng được công việc điềukhiển nêu trên.Trên mạch điều khiểnđộngcơbước thiết kế sẵn bộ đếm dữ liệu có chức năng khuyếch... khối: KHỐI NGUỒN KHỐI ĐIỀUKHIỂN KHỐI CÔNG SUẤT ĐỘNGCƠ 2.3 Chức năng các khối 2.3.1 Khối nguồn: KB688:khuyếch đại dòng để điềukhiển cho độngcơ làm việc IC 7812 : ổn định điện áp dương có giá trị 12VDC IC7805: ổn định điện áp dương có giá trị 05VDC Tụ điện :lọc nhiễu Led : đèn báo 2.3.2 Khối điềukhiển ∗ Sơ đồ nguyên lý: *Nguyên lý hoạt động: Khối sử lý trung tâm dùng vi điềukhiển AT89C51 Chức năng... với điểm giữa chung (hình vẽ), kiểu độngcơbước này nhìn chung còn được coi như là độngcơbước 4 pha Điểm giữa cho phép một sự thay đổi của của hướng dòng của một trong hai lõi khi một cuộn dây được nối đất tạo ra sự thay đổi cực của stato Trục của độngcơ chuyển động theo một độ tăng cố định lặp lai để cho phép ta chuyển dịch nó đến một vị trí chính xác Chuyển độngcố định lặp lại này có được là... M1=1, M0=0: 8 bit Auto reload Các thanh ghi tự động nạp lại mỗi khi bị tràn Khi bộ Timer bị tràn, THx dài 8 bit được giữ nguyên giá trị, còn giá trị nạp lại được đưa vào TLx - M1=1, M0=1: Kiểu phân chia bộ Timer TL0 là 1 bộ Timer/Counter 8 bit, được điềukhiển bằng các bit điềukhiển bộ Timer 0, Còn TH0 chỉ là bộ Timer 8 bit, được điềukhiển bằng các bit điềukhiển Timer 1 - M1=1, M0=1: Timer/Counter 1 . ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC MỤC LỤC LỜI NÓI ĐẦU 1 ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC 1 MỤC LỤC 2 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 6 CHƯƠNG I : 7 KHÁI QUÁT CHUNG VỀ VI ĐIỀU KHIỂN 89C51 7 1.1. 11111111b * IP TG điều khiển ngắt ưu tiên 0B8h xxx00000b * IE TG điều khiển cho phép ngắt 0A8h 0xx00000b TMOD Điều khiển kiểu Timer/Counter 89h 00000000b * TCON TG điều khiển Timer/Counter. Timer. TL0 là 1 bộ Timer/Counter 8 bit, được điều khiển bằng các bit điều khiển bộ Timer 0, Còn TH0 chỉ là bộ Timer 8 bit, được điều khiển bằng các bit điều khiển Timer 1. - M1=1, M0=1: Timer/Counter