THIẾT KẾ MÔ HÌNH AMPEMET ĐIỆN TỬ HIỂN THỊ BẰNG LED 7 THANH

13 668 9
THIẾT KẾ MÔ HÌNH AMPEMET ĐIỆN TỬ HIỂN THỊ BẰNG LED 7 THANH

Đ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

1 . Lí thuyết cơ bản 1.1 Vi điều khiển AT89C51 AT89C51 là phiên bản 8051 có ROM trên chip là bộ nhớ Flash. Phiên bản này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ FLASH có thể được xoá trong vài giây. Tất nhiên là để dùng AT89C51 cần phải có thiết bị lập trình PROM hổ trợ bộ nhớ Flash nhưng không cần đến thiết bị xoá ROM vì bộ nhớ Flash được xoá bằng thiết bị lập trình PROM. Để tiện cho việc sử dụng, hiện nay hãng Atmel đang nghiên cứu một phiên bản của AT89C51 cò thể lập trình qua cổng COM của máy tính PC và như vậy sẽ không cần đến thiết bị lập trình PROM. a. Một số nét đặc trưng: Tương thích với sản phẩm MCS51 Bộ nhớ chương trình bên trong: 4KB (ROM) Bộ nhớ dữ liệu bên trong: 128 KB (RAM) Port xuất nhập (IO port) :32 2 bộ định thời 16 bit Ngắt :6 Nguồn cấp :Vcc =5V 3 vị trí khoá bộ nhớ chương trình. Mạch giao tiếp nối tiếp. Hoạt động tĩnh: từ 0 Hz đến 24 MHz Chạy không nguồn thấp và chế độ giảm nguồn. Số chân IC :40

BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC KỸ THUẬT CƠNG NGHIỆP BÁO CÁO ĐỒ ÁN THIẾT KẾ MƠ HÌNH AMPEMET ĐIỆN TỬ HIỂN THỊ BẰNG LED THANH GIÁO VIÊN HƯỚNG DẪN TS HỒNG XN BÌNH SINH VIÊN THỰC HIỆN Hoàng Sĩ Linh Thiều Quang Nam Trần Trung Kiên HÀ NỘI-2014 NỘI DUNG Lí thuyết 1.1 Vi điều khiển AT89C51 AT89C51 phiên 8051 có ROM chip nhớ Flash Phiên thích hợp cho ứng dụng nhanh nhớ FLASH xố vài giây Tất nhiên để dùng AT89C51 cần phải có thiết bị lập trình PROM hổ trợ nhớ Flash khơng cần đến thiết bị xố ROM nhớ Flash xố thiết bị lập trình PROM Để tiện cho việc sử dụng, hãng Atmel nghiên cứu phiên AT89C51 cò thể lập trình qua cổng COM máy tính PC khơng cần đến thiết bị lập trình PROM a Một số nét đặc trưng: - Tương thích với sản phẩm MCS-51 - Bộ nhớ chương trình bên trong: 4KB (ROM) - Bộ nhớ liệu bên trong: 128 KB (RAM) - Port xuất nhập (I/O port) :32 - định thời 16 bit - Ngắt :6 - Nguồn cấp :Vcc =5V - vị trí khố nhớ chương trình - Mạch giao tiếp nối tiếp - Hoạt động tĩnh: từ Hz đến 24 MHz - Chạy không nguồn thấp chế độ giảm nguồn - Số chân IC :40 b Sơ đồ khối chip AT89C51 c Sơ đồ chân chức chân vi điều khiển AT89C51 U 1 1 1 1 1 2 9 P VC C P 1 P 0 /A D P P /A D P P /A D P P /A D P P /A D P P /A D P P /A D R ST P /A D P /R XD E A /V P P P /T XD A L E /P R O G P /IN T PSEN P 3 /IN T P /A P /T P /A P /T P /A P /W R P /A P /R D P /A 1 XTA L2 P 2 /A XTA L1 P /A G N D P /A AT89C 51 3 3 3 3 3 2 2 2 2 9  Vcc:nguồn cấp (chân số 40)  GND: Nối đất (chân số 20 )  Port 0: − Port (P0.0 – P0.7) có số chân từ 32- 39 − Port port xuất nhập 8bit chiều Port định hình làm bus địa (byte thấp) làm bus liệu đa hợp truy xuất nhớ liệu nhớ chương trình ngồi Port nhận byte mã lập trình cho Flash xuất byte mã kiểm tra chương trình  Port : − Port (P1.0 – P1.7) có số chân từ – − Port port xuất nhập 8bit có điện trở kéo lên bên trong.khi logic đặt lên chân port 1, chân kéo lên mức cao điện trở kéo lên bên sử dụng ngõ vào Khi thực port nhập, chân port kéo xuống mức thấp tác động bên ngồi cấp dịng cho điện trở kéo lên bên  Port : − Port (P2.0 – P2.7) có số chân từ 21 -28 − Port port xuất nhập 8bit chiều có điện trở kéo lên bên Khi logic đặt lên chân port 2, chân sử dụng ngõ vào Khi thực chức port nhập, chân port kéo xuống mức thấp tác động bên ngồi cấp dịng có điện trở kéo lên bên Port tạo byte cao bus địa thời gian tìm nạp lệnh từ nhớchương trình ngồi thời gian truy xuất nhớ liệu sử dụng địa 16 bit  Port : − Port (P3.0 - P3.7) có số chân từ 10 – 17 − Port port xuất nhập bit chiều có điện trở kéo lên bên Khi logic đặt lên chân port chân đưa lê mức cao điện trở kéo lên bên sử dụng ngõ vào Khi làm chức port nhập, chân port kéo xuống mức thấp tác động bên ngồi cấp dịng có điện trở kéo lên bên Port sử dụnglàm chức khác AT89C51 Chức chân mô tả qua bảng sau : Bit Tên P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RxD TxD INTO\ INT1\ T0 T1 WR\ RD\ Địa bit B0H B1H B2H B3H B4H B5H B6H B7H Chức Chân nhận liệu port nối tiếp Chân phát liệu port nối tiếp Ngõ vào ngắt Ngõ vào ngắt Ngõ vào định thời/đếm Ngõ vào định thời/đếm Điều khiển ghi vào RAM Điều khiển đọc từ RAM  RST : Thiết lập lại ( chân 9) Mức cao chân chu kì máy dao động hoạt động Reset AT89C51 Mạch Reset tự động khởi động máy Ở thực Reset cách nối chân 8951 với nguồn 5V  Chân ALE (Address Latch Enable) / PROG : chân số Là xung ngõ cho phép chốt địa chỉ, cho phép chốt byte thấp địa thời gian truy xuất nhớ Chân dùng làm ngõ vào xung lập trình ( PROG ) thời gian lập trình cho Flash Khi hoạt động bình thường, xung ngõ ALE ln ln có tần số 1/6 tần số mạchdao động chip, sử dụng cho mục đích định thời từ bên ngồi tạo xung Clock Tuy nhiên cần lưu ý xung ALE bị bỏ qua chu kì truy xuất nhớ liệu Khi cần hoạt động cho phép chốt byte thấp địa vơ hiệu hố cách set bit ghi chức đặc biệt (SFR) có địa byte 8EH Khi bit set, ALE tích cực thời gian thực lệnh MOVX MOVC Ngược lại chân đưa lên mức cao Việc set bit không cho phép hoạt động chốt byte thấp địa khơng có tác dụng điều khiển chế độ thực thi chương trình ngồi  Chân PSEN (Program Store Enable):cho phép đọc nhớ chương trình, chân số 29 Khi 8951 thực thi mã từ nhớ chương trình ngồi, PSEN hoạt động lần chu kỳ máy ngoại trừ hoạt PSEN bỏ qua nhớ liệu  Chân EA / Vpp (External Access): truy xuất , chân số 31 EA phải đươc nối với GND cho phép xuất mã từ vị trí nhớ chương trình ngồi bắt đầu 0000H đến FFFFH Chú ý:cho dù nào, khoá bit lập trình, EA chốt bên lúc Reset EA nối Vcc để thực chương trình bên Chân nhận điện áp cho phép lập trình 12V (Vpp) lập trình Flash  Chân XTAL (Crysral), hân 18) Ngõ vào mạch khuếch đại đảo mạch dao động ngõ vào mạch tạo xung Clock bên chip  Chân XTAL 2(chân 19) Ngõ mạch khuếch đại đảo mạch dao động Để tạo dao động cho vi điều khiển AT89C51 hoạt động, chúng em chọn mạch dao động hình vẽ sau với giá trị linh kiện: C1= C2=33pF Sơ đồ nguyên lý mạch in MACH RESET MACH TAO DAO DONG KHOI HIEN THI KHOI ADC KHOI PHAN AP DAU VAO MACH DO KHOI XU LY TRUNG TAM (VI DIEU KHIEN 89S52) Chương trình: #include #include #define LED_DATA P0 //Port xuat du lieu led #define LED_CTRL P2 //P4 unsigned char CTRL[] = {0xfe, 0xfd, 0xfb, 0xf7}; //Bang ma Led A chung unsigned char M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; unsigned char DATA[4]={0}; unsigned char i, LedId; int ADvalue, congdon; #define AD_IN sbit INTR_AD sbit WR_AD P1 = = P3^2; P3^6; sbit sbit = = P3^0; P3^1; SW1 SW2 void delay(unsigned long int d) { int n; for (n=0;n

Ngày đăng: 16/08/2014, 12:50

Từ khóa liên quan

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

Tài liệu liên quan