Ứng dụng họ vi điều khiển 8051 ghép nối 4 led 7 thanh dể hiển thị số đo tốc độ động cơ dùng encoder

37 383 0
Ứng dụng họ vi điều khiển 8051 ghép nối 4 led 7 thanh dể hiển thị số đo tốc độ động cơ dùng encoder

Đ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ài tập lớn: Vi xử lí ĐL ĐK Mục lục Nội dung Nội dung .1 Lời nói đầu CHƯƠNG I: SỞ LÝ THUYẾT Giới thiệu tổng quan họ Vi điều khiển 8051 Giới thiệu tổng quan encoder .11 Giới thiều số linh kiện khác 18 3.1 lược led .18 CHƯƠNG II NỘI DUNG 26 – Lưu đồ thuật tốn chương trình 26 – Phần lập trình mơ .28 CHƯƠNG III KẾT LUẬN 36 Ưu điểm 36 Nhược điểm .36 Page Bài tập lớn: Vi xử lí ĐL ĐK Lời nói đầu Ngày nay, với ứng dụng khoa học kỹ thuật tiên tiến, giới ngày thay đổi, văn minh đại Sự phát triển kỹ thuật điện tử tạo hàng loạt thiết bị với đặc điểm bật xác cao, tốc độ nhanh, gọn nhẹ yếu tố cần thiết góp phần cho hoạt động người đạt hiệu cao Các điều khiển sử dụng vi điều khiển đơn giản để vận hành sử dụng lại điều phức tạp Các vi điều khiển theo thời gian với phát triển công nghệ bán dẫn tiến triển nhanh, từ vi điều khiển bit đơn giản đến vi điều khiển 32 bit, sau 64 bit Điện tử trở thành ngành khoa học đa nhiệm vụ Điện tử đáp ứng đòi hỏi khơng ngừng từ lĩnh vực công – nông – lâm – ngư nghiệp nhu cầu cần thiết hoạt động đời sống ngày Một ứng dụng thiết thực ứng dụng đo hiển thị tốc độ động Đây ứng dụng quan trọng áp dụng nhiều lĩnh vực dây chuyền sản xuất Tốc độ động hiển thị hình nhờ led thanh, Từ giám sát tốc độ động rùi định điều khiển cho phù hợp với yêu cầu thế, với môn học Vi điều khiển này, em định nhận làm tập lớn đo tốc độ động dùng 8051 Cụ thể tập này, chúng em ghép nối vi điều khiển 89C51RD2 với led để hiển thị tốc độ động cơ, sử dụng encoder 100(xung/vòng) Chúng em xin trình bày nội dụng cụ thể Page Bài tập lớn: Vi xử lí ĐL ĐK tập lớn sau Kính mong thầy - xem cho nhận xét, đánh giá để tập lớn đầy đủ Chúng em xin chân thành cảm ơn! Hà Nội, Ngày 03/12/2017 Page Bài tập lớn: Vi xử lí ĐL ĐK Đề tài: Ứng dụng họ vi điều khiển 8051 ghép nối led dể hiển thị số đo tốc độ động dùng encoder YÊU CẦU: Xây dựng mạch nguyên lí? Xây dựng thuật tốn? Viết chương trình ? Page Bài tập lớn: Vi xử lí ĐL ĐK CHƯƠNG I: SỞ LÝ THUYẾT Giới thiệu tổng quan họ Vi điều khiển 8051 AT89C51 vi điều khiển bit, chế tạo theo công nghệ CMOS chất lượng cao, công suất thấp với KB PEROM (Flash Programeable and erasable read only memory) Các đặc điểm 8951 tóm tắt sau: - 4KB nhớ, lập trình lại nhanh, khả ghi xóa tới 1000 chu kỳ - Tần số hoat động từ Hz đến 24 MHz - mức khóa nhớ lập trình - Timer/Counter 16 bit - 128 Byte RAM nội - Port xuất/nhập (I/O) bit - Giao tiếp nối tiếp - 64 KB vùng nhớ mã - 64 KB vùng nhớ liệu - Xử lý Boolean (hoạt động bit đơn) - 210 vị trí nhớ định vị bit - 4μs cho hoạt động nhân chia Page Bài tập lớn: Vi xử lí ĐL ĐK a – đồ khối đồ chân AT89C51 INT1\ INT0\ SERIAL PORT TEMER0 TEMER1 TEMER2 8032\8052 128 byte RAM 8032\8052 INTERRUPT CONTROL OTHER REGISTER 128 byte RAM ROM 0K: 8031\8032 TEMER2 8032\8052 TEMER1 TEMER1 4K:8951 CPU 8K:8052 BUS CONTROL I/O PORT OSCILATOR EA\ RST ALE\ PSEN\ P0 P1 P2 P3 SERIAL PORT TXD RXD Address\Data Hình – đồ khối AT89C51 Page Bài tập lớn: Vi xử lí ĐL ĐK Hình – đồ chân AT89C51 b – Chức chân AT89C51 + Port (P0.0 – P0.7 hay chân 32 – 39): Ngoài chức xuất nhập ra, port bus đa hợp liệu địa (AD0 – AD7), chức sử dụng AT89C51 giao tiếp với thiết bị ngồi kiến trúc bus Hình – Port Page Bài tập lớn: Vi xử lí ĐL ĐK + Port (P1.0 – P1.7 hay chân – 8): chức xuất nhập theo bit byte Ngoài ra, chân P1.5, P1.6, P1.7 dùng để nạp ROM theo chuẩn ISP, chân P1.0 P1.1 dùng cho Timer Hình – Port + Port (P2.0 – P2.7 hay chân 21 – 28): port cơng dụng kép Là đường xuất nhập byte cao bus địa thiết kế dùng nhớ mở rộng Hình – Port Page Bài tập lớn: Vi xử lí ĐL ĐK + Port (P3.0 – P3.7 hay chân 10 – 17): chân port chức xuất nhập số chức đặc biệt sau: Bit Tên Chức chuyển đổi P3.0 RXD Dữ liệu nhận cho port nối tiếp P3.1 TXD Dữ liệu truyền cho port nối tiếp P3.2 INT0 Ngắt bên P3.3 INT1 Ngắt bên P3.4 T0 Ngõ vào Timer/Counter P3.5 T1 Ngõ vào Timer/Counter P3.6 WR Xung ghi nhớ liệu P3.7 RD Xung đọc nhớ liệu ngồi Hình – Port Page Bài tập lớn: Vi xử lí ĐL ĐK + RST (Reset – chân 9): mức tích cực chân mức 1, để reset ta phải đưa mức (5V) đến chân với thời gian tối thiểu chu kỳ máy (tương đương 2µs thạch anh 12MHz.) + XTAL 1, XTAL 2: AT89S52 dao động chip, thường nối với dao động thạch anh tần số lớn 33MHz, thơn thường 12MHz Hình minh hoạ + EA (External Access): EA thường mắc lên mức cao (+5V) mức thấp (GND) Nếu mức cao, vi điều khiển thi hành chương trình từ ROM nội Nếu mức thấp, chương trình thi hành từ nhớ mở rộng + ALE (Address Latch Enable): ALE tín hiệu để chốt địa vào ghi bên nửa đầu chu kỳ nhớ Sau đường port dùng để xuất nhập liệu nửa chu kỳ sau nhớ + PSEN (Program Store Enable): PSEN điều khiển phép nhớ chương trình mở rộng thường nối với đến chân /OE (Output Enable) EPROM phép đọc bytes mã lệnh PSEN mức Page 10 Bài tập lớn: Vi xử lí ĐL ĐK hai tụ dung dịch hay chất điện mơi cách điện điện dung C Đặc điểm tụ cho dòng điện xoay chiều qua, ngăn cản dòng điện chiều Khi tụ nạp điện tụ bắt đầu nạp điện từ điện áp 0V tăng dần đến điện áp UDC theo hàm số mũ thời gian t Điện áp tức thời hai đầu tụ tụ tính theo cơng thức: Uc (t) = UDC(1-e-t/τ) Khi tụ xả điện điện áp tụ từ trị số VDC giảm dần đến 0V theo hàm số mũ thời gian t Điện áp hai đầu tụ xả tình theo cơng thức: Uc (t)= UDC.e-t/τ Trong đó: t: thời gian tụ nạp, đơn vị giây (s) e = 2,71828 τ =RC (đơn vị –s) Công thức tính điện dung tụ: C = ε.S/d ε: số điện mơi s: điện tích bề mặt tụ m2 d: bề giày chất điện môi 3.3 Điện trở Page 23 Bài tập lớn: Vi xử lí ĐL ĐK Điện trở linh kiện thụ động tác dụng cản trở dòng áp.Điện trở đựơc sử dụng nhiều mạch điện tử Điện trở dây dẫn trị số điện trở lớn hay nhỏ tùy thuộc vào vật liệu làm dây, tỉ lệ thuận với chiều dài tỉ lệ nghịch với tiết diện dây dẫn Cơng thức tính: R =ρℓ/S R=U/I Trong : ρ: điện trở suất vật liệu, Ωm hay Ωmm2/m S: tiết diện dây, m2 hay mm2 ℓ : chiều dài dây (m) R : điện trở, Ohm (Ω) Điện trở đơn vị tính Ohm, viết tắt Ω 3.4 Thạch anh dao động Hình dạng thực tế thạch anh dao động Page 24 Bài tập lớn: Vi xử lí ĐL ĐK Thạch anh dao động nhiệm vụ tạo xung điều khiển thích hợp phục vụ cho vi điều khiển sử dụng thạch anh dao động loại 12 MHZ 3.5 Điện trở treo Các điện trở treo thay điển trở chân, sử dụng điện trở giúp việc thiết kế mạch đơn giản hơn, điện trở chân thực chất điện trở giá trị với đầu điện trở nối với đầu chung đưa ngồi chân Khi nhìn điện trở thanh, phía đầu dấu chấm tròn, chân ngồi phía chân chung Thông thường chân chung thường nối với nguồn Vcc Hình dạng thực tế đồ chân điện trở treo Điện trở treo nhiệm vụ tạo điện áp mức theo yêu cầu theo giá trị đặt chân Page 25 Bài tập lớn: Vi xử lí ĐL ĐK CHƯƠNG II NỘI DUNG – Lưu đồ thuật toán chương trình Page 26 Bài tập lớn: Vi xử lí ĐL ĐK Page 27 Bài tập lớn: Vi xử lí ĐL ĐK – Phần lập trình mơ a – Phần lập trình #include #define Outled P0 #define true #define false #define THx 15536/256 #define TLx 15536%256 sbit E0 = P1^0; sbit E1 = P1^1; sbit E2 = P1^2; sbit E3 = P1^3; sbit L0 = P2^0; sbit L1 = P2^1; sbit L2 = P2^2; sbit L3 = P2^3; sbit L4 = P2^1; sbit L5 = P2^2; sbit L6 = P2^3; sbit L7 = P2^7; sbit Sp = P1^5; bit chuki=false; unsigned char k; unsigned int Soxung,Demxung,Vong,n; unsigned char time=0; unsigned char CharCode[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//for number 0->9 void Sys_init(); void Display(unsigned int dem); /************************************************************** Page 28 Bài tập lớn: Vi xử lí ĐL ĐK **************** Chuong trinh ngat INT0 ************************************************************** ****************/ void NGAT0(void) interrupt { Demxung++; //L7=!L7; } /************************************************************** **************** Chuong trinh ngat timer1 thoi gian tran 0.05s ************************************************************** ****************/ void ngat_time1(void) interrupt { time++ ;//tang bien dem thoi gian if(Demxung>0) L7=!L7; else if(Demxung==0) {L7=1;chuki=true;} if(time==80)//TIME = 4s chuan { TR1=0; //dung bo dinh thoi chuki=true; //bao het thoi gian dem xung time=0; } TH1=THx;TL1=TLx;//dat cho lan sau } /************************************************************** **************** Chuong trinh tre ************************************************************** ****************/ void delay_us(unsigned long int d) { for(n=0;n=9999)//hien thi so gia tri hien thi > 9999 { dem=9999; L0=L1=L2=L3=0; E0=0; Outled=CharCode[dem/1000]; delay_us(1); E0=1; P0=0XFF; E1=0; Outled=CharCode[(dem%1000)/100]; delay_us(1); E1=1; P0=0XFF; E2=0; Outled=CharCode[(dem%100)/10]; delay_us(1); E2=1; P0=0XFF; E3=0; Outled=CharCode[dem%10]; delay_us(1); E3=1; P0=0XFF; Page 30 Bài tập lớn: Vi xử lí ĐL ĐK } else if((dem99)) //hien thi so gia tri hien thi

Ngày đăng: 15/12/2017, 09:17

Mục lục

    CHƯƠNG I: CƠ SỞ LÝ THUYẾT

    1. Giới thiệu tổng quan về họ Vi điều khiển 8051

    2. Giới thiệu tổng quan về encoder

    3.1 Sơ lược về led 7 thanh

    1 – Lưu đồ thuật toán chương trình

    2 – Phần lập trình và mô phỏng

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

Tài liệu liên quan