1. Trang chủ
  2. » Thể loại khác

+Kỹ Thuật Vi Xử Lý sv cong nghe thuc pham 8051

44 161 0

Đ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

+Kỹ Thuật Vi Xử Lý sv cong nghe thuc pham 8051 tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về t...

1 Giới thiệu vi xử 8051 Vào năm 1980 Intel công bố chip 8051, vi điều khiển họ vi điều khiển MCS –51 Chip 8051 chứa 60000 transistor bao gồm 4k byte Rom,128byte Ram, 32 đường xuất nhập,1 port nối tiếp hai định thời 16 bit.Tập đoàn Siemens, nguồn sản xuất thứ hai vi điều khiển thuộc họ MCS-51 cung cấp chip SAB 80515, cải tiến 8051chứa 1vỏ có 68 chân, port xuất nhập bit, 13 nguồn tạo ngắt biến đổi A/D bit với kênh ngõ vào Họ 8051 vi điều khiển bit mạnh linh hoạt trở thành vi điều khiển hàng đầu năm gần Bộ vi điều khiển 8051 có CPU giống hầu hết CPU khác, CPU họ 8051 bổ xử bit, bao gồm ba phần: + Khối logic toán học ALU + Khối đếm định thời T/C + Tập hợp ghi + Khối ALU thiết kế để thực phép trao đổi liệu toán học, giả dụ phép cộng (Add), trừ (Sub), nhân (Mul), chia (Div) phép toán logic And, Or Khối ALU đựơc trực tiếp đìêu khiển từ CPU mà khơng nằm kiểm sốt người lập trình + Khối T/C thiết kế với mục đích đồng nguồn liệu vào khỏi CPU, phối hợp di chuyểncủa liệu vào vi điều khiển + Tập hợp ghi phần CPU mà chụi can thiệp người lập trình Các ghi byte dùng để lưu trữ thao tác liệu Tập ghi hâù hết họ vi xử bao gồm ghi tích luỹ A(Accumulator), trỏ liệu ghi khác Với 8051, ghi tạo từ hai nhóm, nhóm ghi có chức đặc biệt SFR nhóm băng ghi Ba phần làm nên CPU họ 8051, CPU phần vi điều khiển, bên cạnh khối Ram số lượng ngoại nằm 8051 Tất tích hợp chip Bộ vi điều khiển 8051 sản phẩm giới thiệu hãng Intel họ vi điều khiển Họ vi điều khiển dùng bit điều khiển có khả địa hố 64K nhớ liệu độc lập Họ vi điều khiển 8051 có 128 bytes nhớ truy cập ngẫu nhiên (internal Ram ), với hai đếm / định thời, cổng truyền thông nối tiếp, bốn cổng truyền thông nối tiếp, bốn cổng vào song song cổng điều khiển ngắt với nguồn ngắt Bên cạnh RAM trong, 8051 có nhiều ghi chức đặc biệt SFR (Special Function Registers) ghi điều khiển ghi điều khiển ghi liệu chip Các SFR bao gồm ghi tích luỹ (A), ghi B, từ trạng thái chương trình PSW (Program status Word), PSW có chứa cờ CPU Cơng việc lập trình với phần cứng có bên 8051 đạt cách đặt từ điều khiển thích hợp vào SFR tương ứng Các SFR điểm then chốt kiến trúc họ 8051 Tất ghi xử thông thường ghi chức đặc biệt SFR Hiểu theo nghĩa khác, ghi A SFR, ngoại vi điều khiển thông qua SFR, trỏ liệu SFR cổng SFR Điều khiển tất phần bên 8051 thông qua SFR Con trỏ liệu DPTR dùng cho phần bên ngồi 8051 địa hố 64K nhớ liệu ngồi 64K nhớ chương trình ngồi Chúng chia thành khối nhớ, khối nhớ làm việc với vi điều khiển lên đến 128K Các khối nhớ tách biệt liệu chương trình gọi cấu trúc cứng (Hardware architecture) Họ 8051 có hai tín hiệu đọc độc lập, RD# PSEN# RD kích hoạt byte đọc từ nhớ chương trình ngồi Cả hai tín hiệu kích hoạt mức thấp Tất mã chương trình ngồi thực nhớ chương trình ngồi vạch sẵn Các byte từ nhớ chương trình ngồi đọc thị đọc đặc biệt, dụ thị MOVE Cũng có số thị độc lập phục vụ cho côngviệc đọc liệu từ nhớ liệu ngoài, thị Movx Khi xác định khối địa hố, kích hoạt tương ứng tín hiệu nào, PSEN# RD# sử dụng chu kỳ đọc Một khối nhớ đơn giản sử dụng khối nhớ liệu khối nhớ chương trình Để tiến hành đọc từ khối nhớ vậy, RD# PSEN# sử dụng chu kỳ đọc Một khối nhớ đơn giản sử dụng khối nhớ liệu khối nhớ chương trình Để tiến hành đọc từ khối nhớ vậy, RD# PSEN# tổ hợp vào cổng AND cổng AND thấp hai đầu vào thấp Sự thuận lợi kiến trúc Havard không đơn giản khả hai khối nhớ tích hợp vào chíp Dữ liệuvà chương trình độc lập làm tăng độ tin cậy vi điều khiển khơng cần đến tín hiệu ghi vào chương trình ngồi, khối Rom tưởng dùng nhớ chương trình ngồi 1.1 Kiến trúc BUS 8051 Các I/O 8051 cổng vào song song với 8bít, cổng vào từ P0 tới P3 Tuy nhiên, chức phân định sẵn cho cổng làm giảm số lượng cổng sử dụng cổng vào dụ, cổng số P3 có chức khác phân định sẵn cho bit Sử dụng nhớ liệu nhớ chương trình ngồi làm giảm số lượng cổng I/O dụ cổng PO P2 sử dụng cổng liệu địa Các đường địa bao gồm 16 bit địa chỉ, bit liệu với bit điều khiển bit thấp bus địa phép kênh với bit liệu bus Chân cho phép chốt địa (ALE-Address Latch Enable) sử dụng để giải ghép kênh lấy đường địa Lúc 16 bit địa hoàn toàn ổn định mà liệu hồn tất cơng việc truyền bit liệu Các Bus T/C (Time/counter) dùng để điều khiển luồng liệu bên hệ thống Các chân /RD /WR điều khiển đọc ghi tới từ nhớ liệu cách tương tự /PSEN dùng để điều khiển luồng liệu từ nhớ chương trình ngồi 1.2 Cấu tạo vi điều khiển 1.2.1 Cấu trúc MCS51 chức INT1 INT0 Timer1 Timer2 Port nèi tiÕp C¸c ghi khác Đ iều khiển ngắt ROM 4k - 8051 128 byte RAM Timer1 T1 Timer0 T0 CPU M¹ch dao động Các Port xuất/nhập Đ iều khiển Bus EA RST Port nối tiếp ALE PSEN P0 P2 Đ ịa chỉ/dữliệu P1 P3 TXD RXD Hình : Sơ đồ khối họ chip 8051 CPU bit 4KB Rom nhớ chương trình 128 Byte Ram liệu Bộ định thời timer 0,1 cổng nối tiếp (Seral port) cổng xuất nhập P0 - P3 (I/O port)8 bit Mạch giao tiếp nối tiếp Không gian nhớ chương trình ngồI 64K 210 vị trí nhớ định địa , vị trí bit Bộ xử bit (thao tác bit riêng lẻ ) Một điều khiển ngắt:Interruptcontrol Một mạch dao động bên điều khiển Bus 40 30pF 19 VCC XTAL1 12MHz 18 30pF XTAL2 8051 29 30 31 RD WR T1 T0 INT1 INT0 TXD RXD 17 16 15 14 13 12 11 10 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 PSEN ALE EA RST P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 32 P0.7 AD7 33 P0.6 AD6 34 P0.5 AD5 35 P0.4 AD4 36 P0.3 AD3 37 P0.2 AD2 38 P0.1 AD1 39 P0.0 AD0 VSS 28 P2.7 A15 27 P2.6 A14 26 P2.5 A13 25 P2.4 A12 24 P2.3 A11 23 P2.2 A10 22 P2.1 A9 21 P2.0 A8 20 Hình : Sơ đồ chân chip 8051 Các cổng P0-P3 cổng vào hai chiều Ngoài P0 P2 xử dụng để truy cập nhớ ngồi với chương trình ứng dụng cổng P0 đưa địa Byte thấp P2 đưa địa cao Cổng port có hai cơng dụng : Khi hoạt động chế độ xuất nhập cổng P3 có chức riêng RxD : chân nhập liệu cổng nối tiếp TxD : phát liệu cổng nối tiếp INT : ngắt ngồi INT1 : Ngõ ngồi định thời khơng ngõ vào định thời OE : ( outront enable) cho phép đọc byte lệnh thời gian lấy lệnh Trong thời gian lấy lệnh tín hiệu PSEN=0 Trong thời gian thực lệnh PSEN=1 ALE (address lacht Enable): tín hiệu để chốt địa EA : truy xuất bên 8051 thực chương trình Rom nội Ngồi EA dùng chân nhận điện áp 21V cho việc lập trình Eprom RST : (reset) chân dùng thiết lập trạng thái ban đầu cho hệ thống WR : tín hiệu đIều khiển ghi nhớ ngồi RD : tín hiệu đIều khiển đọc nhớ PSEN : (Program store Enable) tín hiệu điều khiển cho phép truy xuất nhớ ngồi , tín hiệu nối với OE Chức chân : Vcc : chân cấp điện Vss : Chân nối đất (0 V) 32 chân số 40 chân 8051cơng dụng xuất/nhập, nhiên 24 32 đường có mục đích (cơng dụng) Mỗi đường hoạt động xuất/nhập hoạt động đường địa chỉ/dữ liệu bus địa chỉ/dữ liệu đa hợp 32 chân nêu hình thành port 8-bit Với thiết kế yêu cầu mức tối thiểu nhớ thành phần bên ngồi khác, ta sử dụng port làm nhiệm vụ xuất/nhập đường cho port xử đơn vị giao tiếp với thiết bị song song máy in, biến đổi D-A v.v đường hoạt động độc lập giao tiếp với thiết bị đơn bit chuyển mạch, LED, BJT, FET, cuộn dây, động cơ, loa, Port : Port ( chân từ 32 đến 39 8051 ) có hai cơng dụng Trong thiết kế có tối thiểu thành phần, port sử dụng làm nhiệm vụ xuất/nhập Trong thiết kế lớn có nhớ ngoài, port trở thành bus địa bus liệu đa hợp ( byte thấp bus địa chỉ) Port : Port1 có cơng dụng xuất/nhập ( chân từ đến 8051 ) Các chân port ký hiệu P1.0, P1.1, , P1.7 dùng để giao tiếp với thiết bị bên ngồi có u cầu Khơng có chức gán cho chân port 1, nghĩa chúng sử dụng để giao tiếp với thiết bị ngoại vi Port : Port ( chân từ 21 đến 28 8051 ) có cơng dụng, làm nhiệm vụ xuất/nhập byte địa cao bus địa 16 bit cho thiết kế có nhớ chương trình ngồi thiết kế có nhiều 256 bytes nhớ liệu ngồi Port : Port ( chân từ 10 đến 17 8051 ) có cơng dụng Khi không hoạt động xuất/nhập, chân port có nhiều chức riêng ( chân có chức riêng liên quan đến đặc trưng cụ thể 8051 ) Bảng sau cho ta chức chân port : Bit Tên Địa bit Chức P3.0 RxD B0H Chân nhận liệu port nối tiếp P3.1 TxD B1H Chân phát liệu port nối tiếp P3.2 INT0 B2H Ngõ vào ngắt P3.3 INT1 B3H Ngõ vào ngắt P3.4 T0 B4H Ngõ vào định thời/đếm P3.5 T1 B5H Ngõ vào định thời/đếm P3.6 WR B6H Điều khiển ghi nhớ liệu P3.7 RD B7H Điều khiển đọc nhớ liệu Chân cho phép nhớ chương trình PSEN : 8051 cung cấp cho ta tín hiệu điều khiển bus Tín hiệu cho phép nhớ chương trình PSEN ( program store enable) tín hiệu xuất chân 29 Đây tín hiệu điều khiển cho phép ta truy xuất nhớ chương trình ngồi Chân thường nối với chân cho phép xuất OE ( output enable ) EPROM ( ROM ) phép đọc file lệnh Tín hiệu PSEN logic suốt thời gian tìm nạp lệnh Các mã nhị phân chương trinh hay opcode ( mã thao tác ) đọc từ EPROM, qua bus liệu chốt vào ghi lệnh IR 8051 để giải mã Khi thực thi chương trình chứa ROM nội , PSEN trì logic khơng tích cực ( logic ) Chân cho phép chốt địa ALE : 8051 sử dụng chân 30, chân xuất tín hiệu cho phép chốt địa ALE ( address latch enable ) để giải đa hợp ( demultiplexing ) bus liệu bus địa Khi port sử dụng làm bus địa chỉ/dữ liệu đa hợp, chân ALE xuất tín hiệu để chốt địa ( byte thấp địa 16 bit) vào ghi suốt nửa đầu chu kỳ nhớ ( memory cycle ) Sau điều thực hiên, chân port xuất/nhập liệu hợp lệ suốt nửa thứ hai chu kỳ nhớ Tín hiệu ALE có tần số 1/6 tần số mạch dao động bên chip vi điều khiển dùng làm xung clock cho phần lại hệ thống Nừu mạch dao động có tần số 12 MHz, tín hiệu ALE có tần số MHz Ngoại lệ thời gian thực thi lệnh MOVX, xung ALE bị bỏ qua Chân ALE dùng để nhận xung ngõ vào lập trình cho EPROM chip phiên có EPROM Chân truy xuất ngồi EA Ngõ vào ( chân 31 ) nối với V ( logic ) với GND ( logic ) Nếu chân nối lên V, 8051 thực thi chương trình ROM nội ( chương trình nhỏ 4K ) Nếu chân nối với GND ( chân PSEN logic ), chương trình cần thực thi chứa nhớ Nếu chân EA logic , ROM nội bên chip vơ hiệu hố chương trình cần thực thi chứa EPROM bên ngồi Chân RESET ( RST ) Ngõ vào RST ( chân ) ngõ vào xố ( master reset ) 8051 dùng để thiết lập lại trạng thái ban đầu cho hệ thống hay gọi tắt reset hệ thống Khi ngõ vào treo logic tối thiểu chu kỳ máy, ghi bên 8051 nạp giá trị thích hợp cho việc khởi động lại hệ thống Các chân XTAL1 XTAL2 Mạch dao động bên chip 8051 ghép với thạch anh bên hai chân XTAL1 XTAL2 ( chân 18 19 ) Tần số danh định thạch anh 12 MHz cho hầu hết chip họ MCS-51 XTAL1 : Ngõ vào đến mạch khuếch đại đảo mạch dao động XTAL2 : Ngõ từ mạch khuếch đại đảo mạch dao động 1.2.2 Cấu trúc cổng vào - Việc ghi đến chân port nạp liệu Chu kú bé nhí chốt điều khiển port,ngõ Q chốt A0 - A15 Đ ịa iu khin ca mt transitor trng transitor nối D0 - D7 với chân port Khả fanout port 1,2,3 tải Dữliệu Không đa hợ p vi mch TTL loi schottky Chu kú bé nhí cơng suất thấp port tải loại LS A8 - A15 Lưu ý: in tr kộo lờn s Đ ịa khơng có port ( trừ AD0 - AD7 port làm nhiêm vụ bus địa /dữ liu a hp ) Do Dữliệu Đ ịa Đ a hỵ p điên trở kéo lên bên ngồi phải cần đến Gía trị địên trở phụ thuộc vào đặc tính ngõ vào thành phần ghép nối với chân port 1.3 Tổ chức nhớ Hầu hết vi xử (CPU) có khơng gian nhớ chung cho liệu chương trình Điều hợp chương trình thường lưu đĩa nạp vào RAM để thực thi : hai liệu chương trình lưu trú RAM Các chip vi điều khiển sử dụng giống CPU hệ máy tính, thay vào chúng dùng làm thành phần trung tâm thiết kế hướng điều khiển, nhớ có dung lượng giới hạn, khơng có ổ đĩa hệ điều hành Chương trình điều khiển phải thường trú ROM Do trên, 8051 có khơng gian nhớ riêng cho chương trình liệu Như ta thấy hình nhớ chương trình liệu đặt bên chip, nhiên ta mở rộng nhớ chương trình nhớ liệu cách sử dụng chip nhớ bên với dung lượng tối đa 64K cho nhớ chương trình (hay nhớ mã) 64K cho nhớ liệu Bộ nhớ nội chip bao gồm ROM Ram chip bao gồm vùng RAM đa chức năng, vùng RAM với bit định địa (gọi tắt vùng RAM định địa bit), dãy (bank) ghi ghi chức đặc biệt SFR (special function register) Hai đặc tính đáng lưu ý : (a) ghi port xuất/nhập định địa theo kiểu ánh xạ nhớ (memory mapped) truy xuất vị trí nhớ nhớ (b) vùng stack thường trú RAM chip (RAM nội) thay RAM ngồi vi xử 1.3.1 Vùng RAM đa mục đích Vùng RAM đa mục đích có 80 byte đặt địa từ 30H đến 7FH, bên vùng từ địa 00H đến 2FH vùng nhớ sử dụng tương tự Bất kỳ vị trí nhớ vùng Ram đa mục đích truy xuất tự cách sử dụng kiểu định địa chhỉ trực tiếp gián tiếp dụ để đọc nội dung địa 5FH RAM nội vào chứa A, ta dùng lệnh sau : MOV A, 5FH Lệnh di chuyển byte liệu cách dùng kiểu định địa trực tiếp để xác định vị trí nguồn (nghĩa địa 5FH) Dích liệu xác định rõ ràng opcode lệnh chứa A Vùng RAM đa mục đích dược truy xuất cách dùng kiểu định địa gián tiếp qua ghi R0, R1 dụ lệnh sau thực công việc lệnh dụ : MOV R0, #5FH MOV A, @R0 Lệnh sử dụng kiểu định địa tức thời di chuyển giá trị 5FH vào ghi R0, lệnh sử dụng kiểu định địa gián tiếp di chuyển liệu trỏ R0 vào chứa A 1.3.2 Vùng RAM định địa bit 8051 chứa 210 vị trí bit định địa 128 bit chứa byte địa từ 20H đến 2FH (16 byte x bit = 128 bit) phần lại chứa ghi đặc biệt Ngồi 8051 có port xuất/nhập định địa bit, đIều làm đơn giản việc giao tiếp phần mềm với thiết bị xuất/nhập đơn bit 10 Khi trình phục vụ ngắt trỏ tới, cờ gây ngắt tự động xoá phần cứng Các ngoại lệ bao gồm cờ RI TI ngắt port nối tiếp 2.4.4 Các ngắt port nối tiếp Các ngắt port nối tiếp xuất cờ ngắt phát TI cờ ngắt thu RI set Một ngắt phát xuất việc phát ký tự ghi vào SBUF hoàn tất Một ngắt thu xuât ký tự thu nhận đầy đủ SBUF để chờ đọc Như ngắt phát xảy đệm phát SBUF rỗng, ngắt thu xảy đệm thu SBUF đầy 2.4.5 Các ngắt Ngắt xảy có mức thấp có cạnh âm chân INT0 INT1 8051 Thực tế cờ tạo ngắt bit IE0 IE1 ghi TCON Khi ngắt tạo ra, cờ tạo ngắt xoá phần cứng CPU trỏ đến trình phục vụ ngắt ngắt thuộc loại tác động cạnh Nếu ngắt thuộc loại tác động mức, nguyên nhân ngắt điều khiển mức thay phần cứng chip 2.5 Lập trình hợp ngữ 8051 CPU tính toán số nhị phân với tốc độ cao Tuy nhiên người, phải lập trình với số nhị phân thật nhàm chán chậm chạp Chương trình gồm số trình ngơn ngữ máy Hợp ngữ thay mã nhị phân ngôn ngữ máy mã gợi nhớ giúp dễ nhớ dễ lập trình Một chương trình viết hợp ngữ thực thi trực tiếp máy tính Sau viết xong, chương trình phải trải qua q trình dịch thành ngơn ngữ máy Trình dịch hợp ngữ chương trình dùng để dịch chương trình hợp ngữ thành chương trình ngơn ngữ máy 2.5.1 Trình dịch hợp ngữ Có nhiều trình dịch hợp ngữ nhiều chương trình hỗ trợ khác cho phép ta dễ dàng phát triển uứng dụng chíp vi đIũu khiển 8051 Trình dịch hợp ngữ họ MCS-51 Intel (ASM51) dùng làm chuẩn để so sánh với trình dịch hợp ngữ khác ASM51 trình 30 dịch hợp ngữ mạnh, hoạt động tốt hệ thống Intel họ máy tính IBM-PC 2.5.2 Khn dạng chương trình hợp ngữ Các chương trình hợp ngữ chứa : - Các lệnh vi xử , vi điều khiển - Các dẫn trình dịch hợp ngữ - Các điều khiển trình dịch hợp ngữ - Các thích Các lệnh mã gợi nhớ quen thuộc lệnh thực thi (như ANL) Các dẫn trình dịch hợp ngữ lệnh trình dịch hợp ngữ dùng để định nghĩa cấu trúc chương trình, ký hiệu, liệu, số ( ORG) Các điều khiển trình dịch hợp ngữ thiết lập chế độ trình dịch hợp ngữ luồng hợp dịch trực tiếp Các thích giúp cho chương trình dễ đọc cách đưa giải thích mục đích hoạt động chuỗi lệnh Lệnh hợp ngữ có trường sau : [nhãn: ] [từ gợi nhớ] [các toán hạng ] [ ; thích ] dấu ngoặc vng tuỳ chọn , , khơng phải dòng lệnh có đủ trường 2.5.2.1 Trường nhãn Nhãn biểu thị địa lệnh ( liệu ) theo sau Khi có rẽ nhánh đến lệnh này, nhãn dùng trường toán hạng lệnh rẽ nhánh nhảy ( SJMP KIP) Nhãn loại ký hiệu nhận dạng dấu : (kết thúc nhãn ) 2.5.2.2 Trường mã gợi nhớ Mã gợi nhớ lệnh dẫn trình dịch hợp ngữ theo sau trường nhãn Các dụ mã gợi nhớ lệnh AND, MOV, DIV, INC Các dụ mã gợi nhớ dẫn ORG, EQU, DB 2.5.2.3 Trường toán hạng 31 Trường toán hạng theo sau trường mã gợi nhớ Trường chứa địa liệu mà lệnh sử dụng Một nhãn dùng để biểu thị địa liệu ký hiệu dùng để biểu thị liệu Các khả trường tốn hạng phụ thuộc vào thao tác Có thao tác khơng có tốn hạng (ví dụ lệnh RET) thao tác khác cho phép nhiều toán hạng cách dấu phẩy 2.5.2.4 Trường thích Các ghi để làm rõ chương trình đặt trường thích cuối dòng lệnh Các thích cần phải bắt đầu dấu chấm phẩy (;) Các thích chiếm nhiều dòng riêng phải bắt đầu dấu chấm phẩy Thiết kế 3.1 Sơ đồ nguyên 3.2 Phần cứng Từ sơ đồ nguyên thấy mạch điều khiển hiển thị đồng hồ chip vi điều khiển AT89C51 bao gồm linh kiện sau : Chip vi điều khiển AT89C51 Đồng hồ thời gian thực DS12887 Đèn LED Các linh kiện khác tinh thể thạch anh 12MHz, tụ giấy, tụ hóa, điện trở 3.2.1 Chip vi điều khiển AT89C51 Chip vi điều khiển AT89C51 hãng Atmel phiên họ 8051 có ROM chip nhớ Flash Chip 89C51 thích hợp cho ứng dụng nhanh nhớ Flash xóa vài giây (chứ không 20 phút 8751) AT89C51 đóng vỏ 40 chân có : - 4Kb ROM - 128 Byte Ram - 32 chân I/O - định thời - ngắt 32 - Vcc : 5V Cấu hình chân chip 89C51 Chức chân Vcc : chân cung cấp điện GND : chân nối đất ( 0V ) Port Port port xuất nhập bit hai chiều cực D hở Khi làm nhiệm vụ port xuất, chân port hút dòng ngõ vào TTL Khi logic ghi vào chân port 0, chân sử dụng làm ngõ vào tổng trở cao Port cấu hình làm bus địa (byte thấp) bus liệu đa hợp truy xuất nhớ liệu ngồi nhớ chương trình ngồi Trong chế độ đa hợp port có điện trở kéo lên bên Port nhận byte mã lập trình Flash xuất byte mã kiểm tra chương trình Sơ đồ khối 89C51 Port Port port xuất nhập bit hai chiều có điện trở kéo lên bên Các đệm xuất port hút cấp dòng với ngõ vào TTL Khi logic ghi 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 làm nhiệm vụ 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 nhận byte địa thấp thời gian lập trình cho Flash kiểm tra chương trình Port 33 Port port xuất nhập bit hai chiều có điện trở kéo lên bên Các đệm xuất port hút cấp dòng với ngõ vào TTL Khi logic ghi lên chân port 2, 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 làm nhiệm vụ 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 ( MOVX @DPTR) Trong ứng dụng này, port sử dụng điện trở kéo lên bên phát bit Trong thời gian truy xuất nhớ liệu sử dụng địa bit (MOVX @Ri), port phát nội dung ghi chức đặc biệt Port nhận bit địa cao vài tín hiệu điều khiển thời gian lập trình cho Flash kiểm tra chương trình Port Port port xuất nhập bit hai chiều có điện trở kéo lên bên Các đệm xuất nhập port hút cấp dòng với ngõ vào TTL Khi logic ghi lên chân port 3, 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 làm nhiệm vụ port nhập, chân port kéo xuống mức thấp tác động bên cấp dòng có điện trở kéo lên bên Port sử dụng làm chức khác AT89C51 Các chức sau : Bit Tên Chức P3.0 RxD Chân nhận liệu port nối tiếp P3.1 TxD Chân phát liệu port nối tiếp P3.2 INT0 Ngõ vào ngắt P3.3 INT1 Ngõ vào ngắt P3.4 T0 Ngõ vào định thời/đếm P3.5 T1 Ngõ vào định thời/đếm P3.6 WR Điều khiển ghi nhớ liệu P3.7 RD Điều khiển đọc nhớ liệu 34 Port nhận vài tín hiệu điều khiển cho việc lập trình Flash kiểm tra chương trình RST Ngõ vào reset Mức cao chân chu kỳ máy dao động hoạt động reset AT89C51 ALE / PROG Xung ngõ cho phép chốt địa ALE (address latch enable) 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 trinh 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ạch doa động chip, sử dụng cho mục đích định thời từ bên 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óa cách set bit ghi chức đặc biệt có địa byte 8EH Khi bit set, ALE tích cực thời gian thực thi lệnh MOVX MOVC Ngược lại chân kéo 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 vi điều khiển chế độ thực thi chương trình ngồi PSEN Chân cho phép nhớ chương trình PSEN (program store enable) điều khiển truy xuất nhớ chương trình ngồi Khi AT89C51 thực thi chương trình nhớ chương trình ngồi, PSEN tích cực lần chu kỳ máy, ngoại trừ trường hợp tác động PSEN bị bỏ qua cho lần truy xuất nhớ liệu EA / Vpp Chân cho phép truy xuất nhớ EA (external access enable) phải nối với GND phép chip vi điều khiển tìm nạp lệnh từ vị trí nhớ nhớ chương trình 35 ngồi, địa 0000H FFFFH Tuy nhiên cần lưu ý bit khóa (lock bit 1) lập trình, EA chốt bên reset EA nên nối với Vcc để thực thi chương trình bên chip Chân EA / Vpp nhân điện áp cho phép lập trình Vpp thời gian lập trình cho Flash, điện áp cấp cho phận có yêu cầu điện áp 12V XTAL1 Ngox vào đến mạch khuếch đại đảo mạch dao động ngõ vào đến mạch tạo xung clock bên chip XTAL2 Ngõ từ mạch khuếch đại đảo mạch dao động 3.2.2 Đồng hồ thời gian thực DS12887 * Giới thiệu sơ lược DS12887 : Đồng hồ thời gian thực (real time clock - RTC) DS12887 sản xuất hãng Dallas Với nguồn lượng lithium, tinh thể thạch anh, khả bảo vệ ghi tất đóng gói chip 24 chân xếp thành hàng (như hình vẽ đây) DS12887 có chức hoạt động không cần nguồn nuôi từ bên ngồi, đặt chế độ báo thức, lịch 100 năm, có khả lập trình ngắt, phát xung vng, với 114 bytes Ram - Đóng vỏ 24 chân - Bên có chứa pin lithium, thạch anh nên hoạt động 10 năm khơng cần nguồn nuôi - Đếm giây, phút, giờ, ngày, ngày tuần, ngày tháng, tháng, năm - Hiển thị số nhị phân BCD thòi gian, lịch, hẹn - Có hai chế độ 12 ( dùng AM PM) 24 - Giao tiếp với phần mềm 128 Bytes Ram (bên trong) + 14 bytes đồng hồ ghi điều khiển + 114 bytes Ram dùng cho mục đích - Có khả lập trình phát xung vng - Có thể đặt hẹn v.v 36 Cấu hình chân DS12887 DA0 – AD7 : Các bus địa / liệu N.C : Không sử dụng MOT : Chân lựa chọn BUS CS (Chip select) : Chọn chip AS : Address Strobe R/W : Đầu vào Đọc/Ghi DS : Data Strobe RESET : Đầu vào reset IRQ : Đầu ngắt SQW : Đầu phát xung vuông Vcc : Chân cấp nguồn (+5V) GND : Chân nối đất * Hoạt động : Sơ đồ khối DS12887 Đồng hồ thời gian thực (RTC) hoạt động liên tục, tất Ram, thời gian, lịch, hẹn vị trí nhớ lại khơng thay đổi cho dù nguồn cung cấp vào (Vcc) thay đổi Khi nguồn (Vcc) đưa vào DS12887 đạt tới mức lớn 4,25V, thiết bị tiếp cận sau 200ms, cung cấp cho máy phát xung hoạt động Cùng lúc cho phép hệ thống trở nên ổn định sau nguồn đưa vào Khi nguồn (Vcc) giảm xuống 4,25V, đầu vào chọn chip có lực bên làm cho trở mức không hoạt động giá trị chân CS DS12887 chuyển sang chế độ chống ghi Khi DS12887 chế độ chống ghi tất tín hiệu vào bị ngăn đầu mức trở kháng cao Khi Vcc giảm tới mức xấp xỉ 3V, nguồn cung cấp từ ngồi bị đóng lại, nguồn lượng bên (pin lithium) cấp cho RTC nhớ Ram * Chức chân : GND, Vcc Nguồn chiều + 5Vđược cung cấp cho thiết bị thông qua chân 24 Khi nguồn 5V cung cấp ta đọc ghi liệu thiết bị Khi nguồn vào thấp 4,25V 37 việc đọc ghi liệu bị ngăn cấm Tuy nhiên thiết bị hoạt động không phụ thuộc vào nguồn vào Khi mà nguồn vào thấp 3V lúc thiết bị sử dụng nguồn pin lithium bên để trì hoạt động Độ xác DS12887 -+1 phút/1 tháng 250C MOT (Mode Select) Chân MOT sử dụng để lựa chon hai loại bus Khi nối với Vcc, chế độ thời gian bus Motorola chọn Khi nối với GND khơng nối chế độ thời gian bus Intel chọn Chân có điện trở kéo bên cỡ 20K SQW (Square-Wave Output) Chân SQW tạo tín hiệu Tần số tín hiệu phát từ chân SQW thay đổi cách lập trình ghi A (ở bảng đây) Tín hiệu SQW bật tắt cách sử dụng bit SQWE ghi B Tins hiệu SQW khơng có Vcc nhỏ 4,25V Tần số xung SQW phát 38 AD0-AD7 Bus địa liệu Thông tin địa thông tin liệu thời gian chia sẻ cung đường tín hiệu Địa suốt phần đầu chu kỳ bus, chân đường tín hiệu sử dụng cho liệu phần chu kỳ bus AS (Address Strobe Input) Khi mức cao AS kéo bú giải đa hợp Khi sườn xng AS/ALE nguyên nhân địa chốt bên DS12887 sườn lên bus AS xóa địa DS (Data Strobe or Read Input) Chân DS/RD có hai chế độ hoạt động dựa vào chế dộ chân MOT Khi chân MOT nối với Vcc (chế độ thời gian bus Motorola chọn) chế đô DS kéo mức cao suốt phần cuối chu kỳ bus gọi Data Strobe Trong suốt chu kỳ đọc DS biểu thị thời gian mà DS12887 điều khiển đường bus trực tiếp Trong chu kỳ ghi DS12887 chốt liệu ghi Khi chân MOT nối với GND (chế độ thời gian bus Intel chọn) Trong chế độ chân DS gọi chân Đọc (RD) RD xác định phần thời gian DS12887 điều khiển bus với liệu đọc R/W (Read/Write Input) Chân R/W có hai chế độ hoạt động Khi chân MOT nối với Vcc, R/W mức thị mà không cần biết chu kỳ đọc hay ghi Chu kỳ đọc thị với R/W DS mức cao Chu kỳ ghi thị R/W thấp qua DS Khi chân MOT nối với GND, tín hiệu R/W tín hiệu kích hoạt thấp gọi WR Trong chế độ chân R/W có ý nghĩa chân cho phép ghi (write enable-WE) CS (Chip Select Input) Tín hiệu chọn chip phải mức thấp chu kỳ bus DS12887 truy nhập CS phả giữ cho hoạt động DS AS chế độ thời gian Motorola RD WR chế độ thời gian Intel Khi Vcc < 4,25V DS12887 cấm truy nhập chu kỳ 39 cách vơ hiệu hóa chân CS Hoạt động giúp bảo vệ liệu thời gian liệu Ram nguồn ngừng hoạt động IRQ (Interrupt Request Output) Chân IRQ kích hoạt mức thấp đầu DS12887 sử dụng đầu vào ngắt vi xử Để xóa chân IRQ, vi xử dùng chương trình đọc ghi C Chân Reset xóa gửi ngắt RESET (Reset Input) Chân Reset không ảnh hưởng đến đồng hồ, lịch, Ram Khi mức lượng cao, chân Reset giữ mức thấp khoảng thời gian nguồn cấp vào ổn định Khoảng thời gian giữ mức thấp dựa vào ứng dụng Tuy nhiên Reset sử dụng, thời gian Reset mức thấp nên lớn 200ms để chắn định thời bên điều khiển DS12887 Khi Reset mức thấp Vcc > 4,25V trường hợp sau xảy : A) Periodic Interrupt Enable (PEI) bit bị xóa = B) Alarm Interrupt Enable (AIE) bit bị xóa = C) Update Ended Interrupt Flag (UF) bit bị xóa = D) Interrupt Request Status Flag (IRQF) bit bị xóa = E) Periodic Interrupt Flag (PF) bit bị xóa = F) Thiết bị không truy nhập RESET trở lại mức cao G) Alarm Interrupt Flag (AF) bit bị xóa = H) Chân IRQ mức trở kháng cao I) Square-Wave Output Enable (SQWE ) bit bị xóa = J) Update Ended Interrupt Enable (UIE) bị xóa = Bản đồ địa (Address Map) Bản đồ địa DS12887 hình Bản đồ địa bao gồm 114 bytes Ram người sử dụng; 10 bytes Ram chứa RTC thời gian, lịch, liệu hện giờ; 40 bytes sử dụng để điều khiển thơng báo tình trạng Tất 128 bytes đọc ghi trực tiếp trừ trường hợp sau : - Thanh ghi C D phép đọc - Bit ghi A phép đọc - The high-order bit of the seconds byte is read-only Bản đồ địa DS12887 00H : Giây 01H : Giây báo thức 02H : Phút 03H : Phút báo thức 04H : Giờ 05H : Giớ báo thức 06H : Ngày tuần 07H : Ngày tháng 08H : Tháng 09H : Năm 41 0AH : Thanh ghi A 0BH : Thanh ghi B 0CH : Thanh ghi C 0DH : Thanh ghi D Thời gian, lịch, báo thức Thơng tin thời gian, lịch, có cách đọc byte đặc biệt Thời gian, lịch, báo thức đặt cách ghi lên byte Ram đặc biệt Nội dung 10 byte chứa thời gian, lịch, báo thức mã nhị phân mã BCD Trước ghi thời gian, lịch báo thức lên ghi nội, bit SET ghi B phải đặt lên mức logic để ngăn không cập nhật từ kiện xảy truy xuất thử Thêm vào đó, để ghi lên 10 ghi thời gian, lịch, báo thức định dạng chọn (nhị phân BCD), bit chế độ liệu (data mode-DM) ghi B phải đặt lên mức logic đặc biệt Tất 10 byte thời gian, lịch, báo thức phải sử dụng chế độ liệu Bit SET ghi B bị xóa sau bit chế độ liệu ghi cho pép RTC cập nhật byte thời gian byte lịch RTC cập nhật toàn chế độ chọn, chế độ liệu thay đổi không bắt đầu lại 10 byte liệu Bảng mã nhị phân mã BCD 10 vị trí thời gian, lịch, báo thức Bit 24-12 thay đổi khơng bắt đầu lại vị trí Khi định dạng 12 chọn, bit cao byte biểu diễn ký hiệu PM mức logic Các byte thời gian, lịch, báo thức luôn truy xuất chúng nhớ liệu đôi 10 byte tăng lên môt giây giây kiểm tra điều kiện báo thức Nếu đọc liệu thời gian, lịch xảy suốt cập nhật vấn đề xảy khimà giờ, phút, giây khơng liên hệ với Khả đọc khơng xác thời gian lịch thấp Một vài phương pháp để tránh việc đọc sai thời gian lịch bảo vệ sau ký tự byte báo thức sử dụng theo cách Thứ thời gian báo thức ghi lên vị trí báo thức giờ, phút, giây,ngắt báo thức bắt đầu thời điểm đặc biệt ngày bit cho phép báo thức mức cao Thứ hai dùng điều kiện chèn “don’t care” vào nhiều byte báo thức Mã “don’t care” số thập lục phân có giá trị từ C0 đến FF bit quan trọng byte đặt điều kiện “don’t care” mức logic Báo thức phát mà bit “don’t care” đạt byte Tương tự báo thức phát phút với mã “don’t care” ghi 42 byte byte phút báo thức Mã “don’t care” ghi lên byte báo thức tạo ngắt giây Chế độ liệu thời gian, lịch, báo thức 3.2.3 Đèn LED Đèn Led đóng vỏ bề mặt màu đen có 10 chân hình vẽ 10 chân xếp thành hàng Ta có sơ đồ chân đèn Led sau : Chú thích : 43 e d A (K) c DP b a A (K) f 10 g 44 ... lệnh xử lý bit Bộ xử lý 8051 chứa xử lý logic bít cho phép ta thực phép tốn đơn bít RAM nội chứa 128 bít định địa không gian SFR hỗ trợ thêm đến 128 bít định địa Tất đường port có địa bít đường xử. .. nhớ Hầu hết vi xử lý (CPU) có khơng gian nhớ chung cho liệu chương trình Điều hợp lý chương trình thường lưu đĩa nạp vào RAM để thực thi : hai liệu chương trình lưu trú RAM Các chip vi điều khiển... PSW có chứa cờ CPU Cơng vi c lập trình với phần cứng có bên 8051 đạt cách đặt từ điều khiển thích hợp vào SFR tương ứng Các SFR điểm then chốt kiến trúc họ 8051 Tất ghi xử lý thông thường ghi chức

Ngày đăng: 21/01/2018, 15:48

Xem thêm:

TỪ KHÓA LIÊN QUAN

Mục lục

    1.3.1. Vùng RAM đa mục đích

    1.3.2. Vùng RAM định địa chỉ bit

    1.3.3. Các dãy thanh ghi

    1.3.4. Các thanh ghi chức năng đặc biệt (SFR)

    1.3.4.1. Từ trạng thái chương trình

    1.3.4.4. Con trỏ dữ liệu DPTR

    1.3.4.5. Các thanh ghi port

    1.3.4.6. Các thanh ghi định thời

    1.3.4.7. Các thanh ghi của port nối tiếp

    1.3.4.8. Các thanh ghi ngắt

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w