1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx

130 1,3K 2
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nghiên cứu về vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên led 7 thanh
Tác giả Trần Thị Cảnh
Trường học Trường ĐHCN Hà Nội
Chuyên ngành Khoa điện tử
Thể loại Đề tài
Thành phố Hà Nội
Định dạng
Số trang 130
Dung lượng 2,65 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nội dung của đề tài bao gồm 3 chương: - Chương 1: Tổng quan về họ Vi điều khiển 8051 - Chương 2: Các linh kiện liên quan - Chương 3: Thiết kế mô hình Do kiến thức và trình độ năng lực

Trang 1



ĐỀ TÀI

“ Nghiên cứu về Vi điều khiển 8051 Thiết kế

mô hình đồng hồ thời gian thực hiển thị trên

Led 7 thanh”

Trang 2

MỤC LỤC

LỜI NÓI ĐẦU 5

CHƯƠNG 1 TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN 8051 6

1.1 Tóm tắt về lịch sử của 8051 6

1.2 Sơ đồ khối chung của họ 8051 7

1.3 Các thành viên khác của 8051 8

1.3.1 Bộ vi điều khiển 8052 8

1.3.2 Bộ vi điều khiển 8031 8

1.4 Các phiên bản của 8051 8

1.4.1 Bộ vi điều khiển 8751 9

1.4.2 Bộ vi điều khiển AT8951 từ Atmel Corporation 9

1.4.3 Bộ vi điều khiển DS5000 từ hãng Dalas Semiconductor 11

1.4.4 Phiên bản OTP của 8051 12

1.4.5 Họ 8051 từ hãng Philips 12

1.5 Kiến trúc phần cứng của họ Vi điều khiển 8051 13

1.5.1 Sơ đồ khối của 8051/8052/ AT89S52 13

1.5.2 Chức năng các khối của 8051/8052/AT89S52 13

1.5.2.1 CPU 13

1.5.2.2 Bộ nhớ chương trình (bộ nhớ Rom) 14

1.5.2.3 Bộ nhớ dữ liệu (bộ nhớ Ram) 14

1.5.2.4 Bộ UART (Universal Ansynchronous Receiver and Transmitter) 14

1.5.2.5 Ba bộ Timer/Counter 16 bit 14

1.5.2.6 WDM (Watch Dog Timer) 14

1.5.2.7 Điều khiển ngắt 15

1.5.2.8 Bộ lập trình (ghi chương trình lên Flash Rom) 16

1.5.2.9 Bộ chia tần số 16

1.5.2.10 Bốn cổng xuất nhập 16

1.6 Tổ chức bộ nhớ bên trong của 8051 16

1.7 Hoạt động định thời 21

1.7.1 Giới thiệu 21

1.7.2 Các thanh ghi của bộ định thời 21

1.7.2.1 Các thanh ghi của Timer 0, Timer 1 21

1.7.2.2 Các thanh ghi của Timer 2 24

Trang 3

1.7.3 Các chế độ của bộ định thời 27

1.7.4 Các nguồn xung Clock 30

1.8 Cổng nối tiếp 31

1.8.1 Giới thiệu 31

1.8.2 Các thanh ghi của cổng nối tiếp 32

1.8.3 Các chế độ hoạt động 34

1.8.4 Tốc độ baud của Port nối tiếp 37

1.9 Ngắt và xử lý ngắt 38

1.9.1 Giới thiệu 38

1.9.2 Tổ chức ngắt 39

1.9.3 Xử lý ngắt 41

CHƯƠNG 2 CÁC LINH KIỆN LIÊN QUAN 43

2.1 Tìm hiểu về IC thời gian thực DS1307 43

2.1.1 Giới thiệu 43

2.1.2 Sơ đồ và chức năng các chân 43

2.1.3 Tài nguyên và cách xuất nhập dữ liệu vào DS1307 44

2.1.4 Thuật toán giao tiếp I2C với Vi điều khiển AT89S52 48

2.1.4.1 Điều kiện Start và Stop 48

2.1.4.2 Chế độ hoạt động 50

2.1.4.3 Cách thức giao tiếp với DS1307 51

2.1.4.4 Thuật toán thiết kế phần mềm 52

2.2 Bộ biến đổi tương tự sang số (ADC0804) 55

2.2.1 Giới thiệu 55

2.2.2 Sơ đồ và chức năng các chân ADC0804 56

2.2.2.1 Sơ đồ chân 56

2.2.2.2 Chức năng các chân 56

2.3 Vi điều khiển AT89S52 58

2.3.1 Giới thiệu 58

2.3.2 Sơ đồ chân và chức năng các chân của AT89S52 59

2.3.2.1 Sơ đồ chân của AT89S52 59

2.3.2.2 Chức năng các chân của AT89S52 60

2.4 IC ghi dịch 74HC595 64

2.4.1 Giới thiệu 64

2.4.2 Sơ đồ chân và chức năng các chân 64

Trang 4

2.4.2.1 Sơ đồ chân 64

2.4.2.2 Chức năng các chân 65

2.5 Led 7 đoạn 65

2.5.1 Giới thiệu 65

2.5.2 Kết nối với vi điều khiển 66

2.5.3 Bảng mã của Led Anode chung (các led đơn sáng ở mức 0) 67

2.5.4 Bảng mã của Led Cathode chung (các led đơn sáng ở mức 1) 69

2.5.5 Giao tiếp Vi điều khiển với led 7 đoạn (minh họa và thực hành với 8 led 7 đoạn) 69

CHƯƠNG 3 THIẾT KẾ MÔ HÌNH 72

3.1 Sơ đồ nguyên lý 72

3.2 Sơ đồ mạch in 76

3.3 Mô hình thực tế 79

3.4 Ứng dụng 79

KẾT LUẬN 80

TÀI LIỆU THAM KHẢO 81

PHỤ LỤC 82

Trang 5

DANH SÁCH HÌNH VẼ

Hình 1.1 Bố trí bên trong của họ 8051 7

Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52 13

Hình 1.3 Hoạt động của Timer 0 và Timer 1 ở chế độ 0 27

Hình 1.4 Hoạt động của Timer0 và Timer1 ở chế độ 1 27

Hình 1.5 Hoạt động của Timer0 và Timer1 ở chế độ 2 28

Hình 1.6 Hoạt động của Timer0 ở chế độ 3 29

Hình 1.7 Sơ đồ khối cổng nối tiếp của 8051 32

Hình 1.8 Giản đồ truyền nhận dữ liệu ở chế độ 0 34

Hình 1.9 Tốc độ baud ở chế độ 0 34

Hình 1.10 Giản đồ truyền nhận dữ liệu của chế độ 1 35

Hình 1.11 Dùng Timer 1 và Timer 2 cung cấp tốc độ baud cho cổng nối tiếp 35

Hình 1.12 Tốc độ baud ở chế độ 1 36

Hình 1.13 Tốc độ baud ở chế độ 2 36

Hình 1.14 Tốc độ baud ở chế độ 3 37

Hình 1.15 Chương trình trước (a) và sau (b) khi có ngắt xảy ra 39

Hình 2.1 Các dạng đóng gói của chip DS1307 43

Hình 2.2 Sơ đồ chân của DS1307 43

Hình 2.3 Sơ đồ mắc cơ bản của DS1307 44

Hình 2.4 Sơ đồ cấu trúc của các thanh ghi trong DS1307 45

Hình 2.5 Cách cập nhật dữ liệu cho DS1307 46

Hình 2.6 Tổ chức theo bit của các thanh ghi 46

Hình 2.7 Sơ đồ cấu trúc bên trong của DS1307 48

Hình 2.8 Điều kiện Start và Stop 49

Hình 2.9 Quá trình đọc và ghi dữ liệu của DS1307 50

Hình 2.10 Sơ đồ tổng quát của đồng hồ 52

Hình 2.11 Thuật toán giao tiếp của DS1307 với Vi Điều Khiển 52

Hình 2.12 Quá trình đọc dữ liệu từ DS1307 được lưu vào Ram AT89S52 53

Hình 2.13 Thuật toán cài đặt giờ 54

Hình 2.14 Thuật toán cập nhật dữ liệu cho DS1307 55

Trang 6

Hình 2.15 Sơ đồ chân thực tế của ADC0804 56

Hình 2.16 Cách mắc tạo xung đồng hồ cho chíp ADC0804 57

Hình 2.17 Sơ đồ chân của AT89S52 59

Hình 2.18 Cấu trúc của các chân trên Port0 60

Hình 2.19 Cấu trúc của các chân trên Port 1 và Port 3 61

Hình 2.20 Cấu trúc của các chân trên Port2 61

Hình 2.21 Mạch reset AT89S52 63

Hình 2.22 Mạch tạo dao động 63

Hình 2.23 Mạch tạo xung cho Vi điều khiển 64

Hình 2.24 Sơ đồ chân thực tế 74HC595 64

Hình 2.25 Sơ đồ chân 7 SEG-COM-ANODE và hình ảnh minh họa 66

Hình 3.1 Mạch điều khiển 72

Hình 3.2 Mạch đo nhiệt độ 73

Hình 3.3 Mạch hiển thị 73

Hình 3.4 Mạch hiển thị 1 74

Hình 3.5 Mạch nguồn 5V 74

Hình 3.6 Mạch quét phím 75

Hình 3.7 Mạch điều khiển 76

Hình 3.8 Mạch đo nhiệt độ 76

Hình 3.9 Mạch hiển thị 77

Hình 3.10 Mạch hiển thị 1 77

Hình 3.11 Mạch nguồn 5V 78

Hình 3.12 Mạch quét phím 78

Hình 3.13 Mô hình đồng hồ thực tế 79

Trang 7

DANH SÁCH CÁC BẢNG BIỂU

Bảng 1.1 Các đặc tính của 8051 đầu tiên 6

Bảng 1.2 So sánh các đặc tính của các thành viên họ 8051 8

Bảng 1.3 Các phiên bản của 8051 do hãng Atmel cung cấp (Flash Rom) 10

Bảng 1.4 Các phiên bản 8051 từ hãng Dalas Semiconductor 11

Bảng 1.5 Một số thành viên của họ 8051 12

Bảng 1.6 Số chu kì máy WDT đếm tùy theo giá trị S0, S1, S2 15

Bảng 1.7 Thời gian tràn của WDT 15

Bảng 1.8 Các thanh ghi trạng thái chương trình (PSW: Program Status Word) 19

Bảng 1.9 Thanh ghi chức năng TMOD 22

Bảng 1.10 Thanh ghi chức năng TCON 23

Bảng 1.11 Thanh ghi chức năng T2CON 25

Bảng 1.12 Thanh ghi chức năng T2MOD 26

Bảng 1.13 Vị trí và ý nghĩa các bit của thanh ghi SCON 33

Bảng 1.14 Các chế độ của cổng nối tiếp phụ thuộc SM1, SM0 33

Bảng 1.15 Bảng tốc độ baud khác nhau 35

Bảng 1.16 Các giá trị của thanh ghi TH1 tạo tốc độ baud 38

Bảng 1.17 Vị trí và công dụng các bit của thanh ghi IE 40

Bảng 1.18 Vị trí và công dụng các bit của thanh ghi IP 40

Bảng 1.19 Các cờ gây ngắt 41

Bảng 1.20 Các Vector ngắt 42

Bảng 2.1 Bảng so sánh điện áp 58

Bảng 2.2 Tên chân và chức năng các chân của Port 3 62

Bảng 2.3 Bảng mã cho Led Anode chung (a là MSB, dp là LSB) 67

Bảng 2.4 Bảng mã cho Led Anode chung (a là LSB, dp là MSB) 68

Bảng 2.5 Bảng mã của Led Cathode chung 69

Trang 8

S

Trang 9

LỜI CAM ĐOAN

Trong quá trình thực hiện đề tài tốt nghiệp này, em xin đảm bảo bài báo cáo tốt nghiệp này là do chính em thực hiện, không có sự sao chép nguyên văn của bất

kì tài liệu nào Nếu sai em xin chịu mọi hình thức kỷ luật của nhà trường

Hà Nội, Ngày 13 tháng 6 năm 2012

Người cam đoan (Ký, ghi rõ họ tên)

Trần Thị Cảnh

Trang 10

LỜI NÓI ĐẦU

Ngày nay ngành kỹ thuật điện tử có vai trò rất quan trọng trong cuộc sống của con người Các hệ thống điện tử ngày nay rất đa dạng và đang thay thế các công việc hàng ngày của con người từ những công việc đơn giản đến phức tạp như điều khiển tín hiệu đèn giao thông, các biển quảng cáo, đo tốc độ động cơ hay các đồng

hồ số… Các hệ thống này có thể thiết kế theo hệ thống tương tự, hệ thống số hay là dùng vi điều khiển Tuy nhiên trong các hệ thống điện tử thông minh hiện nay người ta thường sử dụng vi điều khiển hơn là các hệ thống tương tự hay hệ thống số bởi một số ưu điểm vượt trội mà vi điều khiển mang lại đó là: độ tin cậy cao, giá thành thấp, dễ dàng thiết kế, lắp đặt và vận hành… Để làm được điều đó chúng ta phải có kiến thức về vi điều khiển, hiểu được cấu trúc và chức năng của nó

Sau gần 3 năm học tập và nghiên cứu tại trường, với sự giảng dạy của các thầy,

cô giáo trong trường cùng với sự hướng dẫn tận tình của thầy Hoàng Văn Quang, em đã

chọn đề tài: “ Nghiên cứu về Vi điều khiển 8051 Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” để làm đồ án tốt nghiệp với mong muốn áp dụng

những kiến thức đã học vào thực tế phục vụ nhu cầu đời sống con người Nội dung của

đề tài bao gồm 3 chương:

- Chương 1: Tổng quan về họ Vi điều khiển 8051

- Chương 2: Các linh kiện liên quan

- Chương 3: Thiết kế mô hình

Do kiến thức và trình độ năng lực còn hạn hẹp nên việc thực hiện đề tài này không thể tránh được thiếu sót, kính mong nhận được sự thông cảm và góp ý của tất cả các thầy, cô giáo và các bạn để đồ án này được hoàn thiện hơn

Em xin chân thành cảm ơn

Trang 11

CHƯƠNG 1 TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN 8051

1.1 Tóm tắt về lịch sử của 8051

Năm 1981, hãng Intel giới thiệu bộ vi điều khiển 8051 Bộ vi điều khiển này chứa trên 60.000 transistor bao gồm 128 byte Ram, 4 kbyte Rom, 2 bộ định thời, một cổng nối tiếp và bốn cổng vào/ra song song (độ rộng 8 bit) tất cả đều được đặt trên một chip 8051 là bộ xử lý 8 bit, có nghĩa là CPU chỉ có thể làm việc được 8 bit dữ liệu tại một thời điểm

Dữ liệu lớn hơn 8 bit được chia thành các dữ liệu 8 bit để xử lý, 8051 đã trở lên phổ biến sau khi Intel cho phép các nhà sản xuất khác sản xuất và bán các biến thể của

8051 Điều này dẫn đến sự ra đời nhiều phiên bản 8051 với tốc độ khác nhau và dung lượng Rom trên chíp khác nhau, nhưng các lệnh đều tương thích với 8051 ban đầu Như vậy, nếu ta viết chương trình cho một phiên bản của 8051 thì cũng chạy được với mọi phiên bản khác không phụ thuộc vào hãng sản xuất

Vi điều khiển 8051 là loại vi điều khiển 8 bit, công suất tiêu thụ thấp nhưng tính năng tương đối mạnh và trở thành bộ vi điều khiển hàng đầu trong những năm gần đây

Bảng 1.1 Các đặc tính của 8051 đầu tiên

Ngoài ra 8051 còn có các thông số đặc tính sau:

+ Không gian nhớ chương trình (mã) ngoài 64 kbyte

+ Không gian nhớ dữ liệu ngoài 64 kbyte

Trang 12

+ Bộ nhớ xử lý bit (thao tác trên các bit riêng rẽ)

+ 210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit

+ Nhân/chia trong 4µs

1.2 Sơ đồ khối chung của họ 8051

- Interrupt Control: điều khiển ngắt

- Other Register: các thanh ghi khác

- 128 byte Ram

- Bộ định thời: 0, 1, 2

- CPU: đơn vị điều khiển trung tâm

- Oscillator: mạch dao động

- Bus Control: điều khiển Bus

- Input/output: các chân vào ra

- Serial port: cổng nối tiếp

- INT1/INT0: các ngắt 1/0

Hình 1.1 Bố trí bên trong của họ 8051

Trang 13

1.3 Các thành viên khác của 8051

Có hai bộ vi điều khiển là các thành viên khác của họ 8051 là 8052 và 8031

1.3.1 Bộ vi điều khiển 8052

tính chuẩn của 8051 ngoài ra nó có thêm 128 byte Ram và một bộ định thời nữa

Bảng 1.2 So sánh các đặc tính của các thành viên họ 8051

không có Rom trên chíp Để sử dụng chíp này phải bổ sung Rom ngoài cho nó, Rom ngoài phải chứa chương trình mà 8031 sẽ nạp và thực hiện Với 8051, chương trình được chứa trong Rom trên chíp bị giới hạn bởi 4 kbyte, còn Rom ngoài gắn với 8031 thì có thể lớn đến 64 kbyte Khi sử dụng Rom ngoài chỉ có thể còn lại hai cổng để sử dụng cho mục đích vào ra, để giải quyết vấn đề này giải pháp có thể

là mở rộng cổng vào ra cho 8031 bằng cách sử dụng vi mạch PPI 8255

1.4 Các phiên bản của 8051

Mặc dù 8051 là thành viên phổ biến nhất của họ 8051 nhưng còn có rất nhiều phiên bản của nó với những tên gọi khác nhau tùy thuộc vào kiểu bộ nhớ chương trình, công nghệ chế tạo, tần số làm việc…

Trang 14

Ví dụ: Phiên bản của 8051 với bộ nhớ UV-PROM được kí hiệu 8751 Phiên bản Flash Rom cũng được bán bởi nhiều hãng khác nhau, chẳng hạn như Atmel với tên gọi AT89C51 còn phiên bản NV-RAM của 8051 do Dalas Semiconductor cung cấp thì được gọi là DS5000 Ngoài ra còn có phiên bản OTP (lập trình được một lần) cũng được sản xuất bởi nhiều hãng

1.4.1 Bộ vi điều khiển 8751

này cần có bộ đốt PROM và bộ xóa UV-EPROM để xóa nội dung của bộ nhớ UV-EPROM bên trong 8751 trước khi ta có thể lập trình lại nó Do ROM trên chíp đối với 8751 là UV-EPROM nên cần phải mất 20 phút để xóa 8751 trước khi nó

có thể được lập trình trở lại Vì điều này dẫn đến nhiều nhà sản xuất giới thiệu các phiên bản FLASH-ROM và UV-RAM Ngoài ra còn có nhiều phiên bản với các tốc

độ khác nhau của 8751 từ nhiều hãng khác nhau

các vi mạch này được xóa bằng ánh sáng từ nguồn tử ngoại

1.4.2 Bộ vi điều khiển AT8951 từ Atmel Corporation

này là lý tưởng đối với những phát triển nhanh vì bộ nhớ Flash có thể được xóa trong vài giây Dùng AT89C51 để phát triển một hệ thống dựa trên bộ vi điều khiển yêu cầu một bộ đốt Rom hỗ trợ bộ nhớ Flash, không yêu cầu bộ xóa Rom Hãng Atmel đã cho ra đời một phiên bản của AT89C51 có thể lập trình qua cổng truyền thông Com của máy tính IBM PC

Trang 15

Bảng 1.3 Các phiên bản của 8051 do hãng Atmel cung cấp (Flash Rom)

byte

hàng AT89C1051 1 kbyte 64

byte

hàng AT89C2051 2 kbyte 128

+ Có thể hoạt động ở tần số thạch anh lên tới 24MHz

Trang 16

chíp giúp người sử dụng có thể dễ dàng thực hiện các bài thí nghiệm với chi phí rất thấp

Cũng có rất nhiều phiên bản kí hiệu thể hiện kiểu đóng vỏ và tốc độ khác nhau của sản phẩm Ví dụ chữ C đứng trước 51 trong AT89C51-12PC là kí hiệu cho CMOS,

”12” kí hiệu cho 12MHz, và “P” là kiểu đóng vỏ DIP và chữ “C” cuối cùng là kí hiệu cho thương mại (ngược với chữ “M” là quân sự)

1.4.3 Bộ vi điều khiển DS5000 từ hãng Dalas Semiconductor

Semiconductor Bộ nhớ Rom trên chíp của DS5000 ở dưới dạng NV-RAM Khả năng đọc/ghi của nó cho phép chương trình được nạp vào Rom trên chíp trong khi

nó vẫn ở trong hệ thống (không phải lấy ra) Điều này còn có thể được thực hiện thông qua cổng nối tiếp của máy tính IBM-PC Việc nạp chương trình trong hệ thống (in-system) của DS5000 thông qua cổng nối tiếp của PC làm cho nó trở thành một hệ thống phát triển tại chỗ lý tưởng Một ưu việt của NV-RAM là khả năng thay đổi nội dung của Rom theo từng byte tại một thời điểm Điều này tương phản với bộ nhớ Flash và EPROM mà bộ nhớ của chúng phải được xóa sạch trước khi lập trình lại cho chúng

Bảng 1.4 Các phiên bản 8051 từ hãng Dalas Semiconductor

Chữ “T” đứng sau 5000 là có đồng hồ thời gian thực

* Đồng hồ thời gian thực RTC là khác với bộ định thời Timer RTC tạo và giữ thời

gian 1 phút, giờ, ngày, tháng, năm kể cả khi tắt nguồn

Còn có nhiều phiên bản DS5000 với những tốc độ và kiểu đóng gói khác nhau

Ví dụ DS5000-8-8 có 8 kbyte NV-RAM và tốc độ 8MHz

Thông thường DS5000-8-12 hoặc DS5000T-8-12 là lý tưởng với những dự án của sinh viên

Trang 17

1.4.4 Phiên bản OTP của 8051

và được cung cấp từ nhiều hãng khác nhau Các phiên bản Flash và NV-RAM thường được sử dụng để phát triển sản phẩm mẫu Khi một sản phẩm được thiết kế

và được hoàn thiện tuyệt đối thì phiên bản OTP của 8051 được dùng để sản xuất hàng loạt vì giá thành một đơn vị sản phẩm sẽ rẻ hơn

1.4.5 Họ 8051 từ hãng Philips

vậy, hãng này có một dải lựa chọn rộng lớn cho các bộ vi điều khiển 8051 Nhiều sản phẩm của hãng đã có kèm theo đặc tính như các bộ chuyển đổi ADC, DAC, cổng I/O mở rộng và các phiên bản OTP và Flash

Trang 18

1.5 Kiến trúc phần cứng của họ Vi điều khiển 8051

1.5.1 Sơ đồ khối của 8051/8052/AT89S52

Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52 1.5.2 Chức năng các khối của 8051/8052/AT89S52

1.5.2.1 CPU

Trang 19

1.5.2.6 WDM (Watch Dog Timer)

nguyên nhân nào đó WDM ở AT89S52 gồm một bộ Timer 14 bit, 1 bộ Timer 7 bit, thanh ghi WDTPRG ( WDT programable ), điều khiển Timer 7 bit và một thanh ghi chức năng WDTRST (WDM register) Bình thường WDT không hoạt động, để cho phép WDT, các giá trị 1EH và E1H cần phải ghi liên tiếp vào thanh ghi WDTRST Timer 14 bit của WDT sẽ đếm tăng dần sau mỗi chu kì đồng hồ cho đến giá trị 16383 thì xảy ra tràn Khi xảy ra tràn chân Reset sẽ được đặt ở mức cao trong khoảng thời gian 98*Tosc ( Tosc=1/Fosc ) và AT89S52 sẽ được Reset Khi WDT hoạt động, ngoài trừ Reset phần cứng và Reset do WDT tràn thì không có cách nào

có thể cấm được WDT, vì vậy khi sử dụng WDT thì các đoạn mã của chương trình phải được đặt trong các khe thời gian giữa các lần WDT được khởi tạo lại

Thanh ghi WDTPRG:

Trang 20

Tùy theo các giá trị khác nhau được ghi vào S0, S1, S2, số chu kì máy mà WDT

sẽ đếm và thời gian trong các bảng 1.6, bảng 1.7

Bảng 1.6 Số chu kì máy WDT đếm tùy theo giá trị S0, S1, S2

Bảng 1.7 Thời gian tràn của WDT

Trang 21

1.5.2.8 Bộ lập trình (ghi chương trình lên Flash Rom)

1.6 Tổ chức bộ nhớ bên trong của 8051

Bộ nhớ trong 89S52 bao gồm ROM và RAM RAM trong 89S52 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt

nhớ riêng biệt cho chương trình và dữ liệu Chương trình và dữ liệu có thể chứa bên trong 89S52 nhưng 89S52 vẫn có thể kết nối với 64Kbyte bộ nhớ chương trình và 64Kbyte dữ liệu bên ngoài

Trang 22

Bản đồ bộ nhớ Data bên trong Chip 89S52 được tổ chức như sau:

Địa chỉ

Địa chỉ byte

Trang 23

RAM bên trong AT89S52 được phân chia như sau:

- Các bank thanh ghi có địa chỉ từ 00H đến 1FH

- RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH

- RAM có thể định địa chỉ bit

Vùng địa chỉ từ 20h -2Fh gồm 16 byte có thể thực hiện như vùng RAM đa dụng (truy xuất mỗi lần 8 bit) hay thực hiện truy xuất mỗi lần 1 bit bằng các lệnh xử

lý bit

- Các bank thanh ghi

Vùng địa chỉ 00h – 1Fh được chia thành 4 bank thanh ghi: bank 0 từ 00h – 07h, bank 1 từ 08h – 0Fh, bank 2 từ 10h – 17h và bank 3 từ 18 – 1Fh Các bank thanh ghi này được đại diện bằng các thanh ghi từ R0 đến R7 Sau khi khởi động thì

hệ thống bank 0 được chọn sử dụng

Do có 4 bank thanh ghi nên tại một thời điểm chỉ có một bank thanh ghi được truy xuất bởi các thanh ghi R0 đến R7 Việc thay đổi bank thanh ghi được thực hiện thông qua thanh ghi từ trạng thái chương trình (PSW)

- Các thanh ghi có chức năng đặc biệt

Các thanh ghi trong 89S52 được định dạng như một phần của RAM trên chip

vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi bộ đếm chương trình và thanh ghi lệnh vì các thanh ghi này hiếm khi bị tác động trực tiếp) Cũng như R0 đến R7, 89S52 có 21 thanh ghi có chức năng đặc biệt (SFR: Special Function Register) ở vùng trên của RAM nội từ địa chỉ 80H đến 0FFH

Trang 24

Sau đây là một vài thanh ghi đặc biệt thường được sử dụng:

Bảng 1.8 Các thanh ghi trạng thái chương trình (PSW: Program Status Word)

00=Bank 0; address 00H07H 01=Bank 1; address 08H0FH 10=Bank 2; address 10H17H 11=Bank 3; address 18H1FH

Trang 25

Chức năng từng bit trạng thái chương trình

- Cờ Carry CY (Carry Flag):

Cờ nhớ thường nó được dùng cho các lệnh toán học: C =1 nếu phép toán cộng có sự tràn hoặc phép trừ có mượn và ngược lại C = 0 nếu phép toán cộng không tràn và phép trừ không có mượn

- Cờ Carry phụ AC (Auxiliary Carry Flag):

Khi cộng những giá trị BCD (Binary Code Decimal), cờ nhớ phụ AC được set nếu kết quả 4 bit thấp nằm trong phạm vi điều khiển 0AH - 0FH Ngược lại AC

= 0

- Cờ 0 (Flag 0):

Cờ 0 (F0) là 1 bit cờ đa dụng dùng cho các ứng dụng của người dùng

- Những bit chọn bank thanh ghi truy xuất:

RS1 và RS0 quyết định dãy thanh ghi tích cực Chúng được xóa sau khi reset

hệ thống và được thay đổi bởi phần mềm khi cần thiết

Tùy theo RS1, RS0 = 00, 01, 10, 11 sẽ được chọn Bank tích cực tương ứng là Bank 0, Bank1, Bank2 và Bank3

Trang 26

Bit Parity thường được dùng trong sự kết hợp với những thủ tục của Port nối

tiếp để tạo ra bit Parity trước khi phát đi hoặc kiểm tra bit Parity sau khi thu

1.7 Hoạt động định thời

1.7.1 Giới thiệu

Các bộ định thời ( Timer ) được sử dụng rất rộng rãi trong các ứng dụng đo lường và điều khiển Có thể coi một bộ định thời n bit là bộ đếm n bit được tạo ra bởi n flip_flop mắc nối tiếp với nhau Đầu ra của bộ định thời chính là đầu vào của flip_flop đầu tiên

độ hoạt động Timer 2 có 3 chế độ hoạt động Các bộ định thời dùng để định khoảng thời gian (hẹn giờ), đếm sự kiện xảy ra bên ngoài bộ vi điều khiển hoặc tạo tốc độ baud cho cổng nối tiếp

tràn sau một khoảng thời gian và thiết lập cờ tràn bằng 1 Cờ tràn được sử dụng bởi chương trình để thực hiện một hành động tương ứng như kiểm tra trạng thái của các ngõ vào hoặc gửi các sự kiện ra các ngõ ra

Đếm sự kiện dùng để xác định số lần xảy ra của một sự kiện Trong ứng dụng này người ta tìm cách quy các sự kiện thành sự chuyển mức từ 1 xuống 0 trên các chân T0 hoặc T1 hoặc T2 để dùng các Timer tương ứng đếm các sự kiện đó

1.7.2 Các thanh ghi của bộ định thời

1.7.2.1 Các thanh ghi của Timer 0, Timer 1

Trang 27

Thanh ghi TMOD chứa hai nhóm 4 bit dùng để đặt chế độ làm việc cho Timer 0 và Timer 1

Thanh ghi TMOD Bảng 1.9 Thanh ghi chức năng TMOD

bằng 1 thì Timer 1 chỉ chạy khi chân INT1 ở mức cao

1=bộ đếm sự kiện 0=bộ định khoảng thời gian

00: chế độ 0-Timer 13 bit 01: chế độ 1-Timer 16 bit 10: chế độ 2-8 bit tự động nạp lại 11: chế độ 3-tách Timer

1 thì Timer 0 chỉ chạy khi chân INT0 ở mức cao

Timer 0

Trang 28

TMOD không có bit định vị, nó thường load một lần bởi phần mềm ở đầu chương trình để khởi động mode Timer Sau đó sự định giờ có thể dừng lại, được khởi động lại như thế bởi truy xuất của các thanh ghi chức năng đặc biệt của Timer khác

-Thanh ghi điều khiển Timer (TCON)

Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển Timer 0 và Timer 1 Bốn bit cao trong TCON ( TCON.4-TCON.7 ) được dùng để điều khiển các bộ định thời hoạt động hoặc ngưng ( TR0, TR1) hoặc để báo các bộ định thời tràn (TF0, TF1)

Bốn bit thấp của TCON ( TCON.0-TCON.3 ) không dùng để điều khiển các bộ định thời, chúng được dùng để phát hiện và khởi động các ngắt ngoài

TCON.7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0

Thanh ghi TCON Bảng 1.10 Thanh ghi chức năng TCON

phần cứng khi có tràn, được xóa bởi phần mềm hoặc bởi phần cứng khi

bộ VXL chỉ đến chương trình phục

vụ ngắt

đặt xóa bởi phần mềm để điều khiển cho Timer chạy/dừng

Trang 29

- Các thanh ghi chứa giá trị của các bộ định thời

Các Timer 0 và Timer 1 đều là các Timer 16 bit, mỗi Timer có thanh ghi 8 bit dùng để chứa giá trị khởi tạo hoặc giá trị hiện thời của các Timer

1.7.2.2 Các thanh ghi của Timer 2

- Thanh ghi T2CON

T2CON.7 T2CON.6 T2CON.5 T2CON.4 T2CON.3 T2CON.2 T2CON.1 T2CON.0

Trang 30

Bảng 1.11 Thanh ghi chức năng T2CON

Timer 2 tràn và được xóa bằng phần mềm, TF2 không được thiết lập khi TCLK và RCLK được đặt bằng 1

nạp lại hoặc thu nhận, EXF2=1 cũng gây ra ngắt

do Timer 2 nếu như ngắt này được lập trình cho phép, EXF2 được xóa bởi phần mềm

nhận của cổng nối tiếp

- RCLK=1 thì Timer 2 sẽ cung cấp tốc độ baud cho cổng nối tiếp (ở chế độ 1 và 3)

- RCLK=0 thì Timer 1 sẽ cung cấp tốc độ baud cho cổng nối tiếp (ở chế độ 1 và 3)

truyền của cổng nối tiếp

- TCLK=1 thì Timer 2 sẽ cung cấp tốc độ baud cho cổng nối tiếp ở đường truyền

- TCLK=0 thì Timer 1 sẽ cung cấp tốc độ baud cho cổng nối tiếp ở đường truyền

EXEN2=1 việc nạp lại hoặc thu nhận (capture) diễn ra khi có sự chuyển trạng thái từ 1 sang 0 ở chân T2EX nếu T2 không sử dụng để cung cấp tốc độ baud cho cổng nối tiếp

Trang 31

TR0,TR1)

2

- Khi CP/#RL2=1, việc thu nhận được thực hiện khi có sườn xuống ở chân T2EX và bit EXEN2=1

- Khi CP/#RL2=0, việc nạp lại được thực hiện khi Timer 2 tràn hoặc là khi có sườn xuống ở chân T2EX và bit EXEN2=1 Nếu RCLK (TCLK) bằng 1, bit này được bỏ qua, Timer 2 tự nạp lại khi tràn

- Thanh ghi T2MOD

T2MOD có địa chỉ 0C9H

Bảng 1.12 Thanh ghi chức năng T2MOD

* Thanh ghi này không định địa chỉ bit

- Thanh ghi TH2 và TL2, RCAP2H và RCAP2L

Cũng giống như TH0, TH1 và TL0, TL1, TH2 và TL2 chứa giá trị đếm của Timer

2, tuy nhiên khác nhau là Timer 0, Timer 1 có thể dùng THx để chứa giá trị nạp lại còn Timer 2 dùng RCAP2H và RCAP2L để chứa giá trị cần nạp lại

Trang 32

1.7.3 Các chế độ của bộ định thời

- Chế độ 0

Hình 1.3 Hoạt động của Timer 0 và Timer 1 ở chế độ 0

Chế độ 0 là chế độ định thời 13 bit, chế độ này tương thích với các bộ vi điều khiển trước đó, trong các ứng dụng hiện nay chế độ này không còn thích hợp

- Chế độ 1

Trong chế độ 1, bộ Timer dùng cả hai thanh ghi TH và TL để chứa giá trị đếm, vì vậy chế độ này còn được gọi là chế độ định thời 16 bit Bit MSB sẽ là bit D7 của

TH còn bit LSB là D0 của TL

Hình 1.4 Hoạt động của Timer0 và Timer1 ở chế độ 1

Hình 1.4 mô tả hoạt động của các Timer ở chế độ 1: Nguồn xung clock được đưa tới Timer từ một trong cách phụ thuộc vào bit C/#T trong thanh ghi TMOD

+ Nếu C/#T=1, xung clock sẽ được lấy từ bên ngoài qua chân Tx (T0, T1, T2) + Nếu C/#T=0, xung clock sẽ được lấy từ bộ chia tần trong chip, tần số của xung

ở đây là 1/12 tần số của dao động thạch anh

Trang 33

Nguồn xung clock trên sẽ được điều khiển để đưa tới các Timer bằng các bit: TR, GATE và mức logic trên các chân INTx

+ Nếu TRx= 0, các Timer sẽ bị cấm mà không cần quan tâm tới GATE và mức logic trên các chân INTx (thể hiện bằng cổng “AND”)

+ Nếu TRx= 1, các Timer sẽ hoạt động khi hoặc là bit GATE=0 hoặc là bit GATE=1 và trên chân /INTx có mức logic 1

Với chế độ 1, giá trị lớn nhất mà các Timer chứa được là 65535, khi đếm quá giá trị này sẽ xảy ra tràn, khi cờ tràn TF sẽ được đặt =1 Sau khi xảy ra tràn, nếu muốn Timer tiếp tục đếm, chương trình phải có câu lệnh nạp lại giá trị khởi tạo sau khi đã dừng Timer bằng cách xóa bit TR

Trang 34

- Chế độ 3

Hình 1.6 Hoạt động của Timer0 ở chế độ 3

Trong chế độ 3, Timer 0 được tách thành hai bộ Timer hoạt động độc lập (Hình 1.6), chế độ này sẽ cung cấp cho bộ vi điều khiển thêm bộ Timer nữa

Bộ Timer thứ nhất với nguồn xung clock được lấy từ bộ chia tần trên chip hoặc từ

bộ tạo xung bên ngoài qua chân T0 tùy thuộc vào giá trị của bit C-/T0 Việc điều khiển hoạt động của bộ thứ nhất do bit GATE, bit TR0 và mức logic trên chân INT0 ( giống chế độ 0, 1, 2)

Giá trị đếm của Timer được chứa trong TL0, khi xảy ra tràn, cờ TF0=1 và gây ra ngắt do Timer 0 (nếu được đặt)

Bộ Timer thứ hai với nguồn xung clock được lấy từ bộ chia tần trên chip Việc điều khiển hoạt động của bộ thứ hai chỉ là việc đặt giá trị của bit TR0 Giá trị đếm của Timer được chứa trong TH0, khi xảy ra tràn, cờ TF1=1 và gây ra ngắt do Timer

1 ( nếu được đặt)

Khi Timer 0 được tách thành hai Timer 8 bit thì Timer 1 vẫn có thể hoạt động bình thường ở các chế độ 0, 1, 2, tuy nhiên khi xảy ra tràn cờ TF1 không được thiết lập bằng 1 Như vậy trong trường hợp này Timer 1 chỉ có thể sử dụng cho các ứng dụng không cần đến ngắt (TF1=1), chẳng hạn như tạo tốc độ baud cho port nối tiếp

Trang 35

1.7.4 Các nguồn xung Clock

Có hai nguồn xung clock có thể đếm giờ là sự đếm giờ bên trong và sự đếm sự kiện bên ngoài Bit C/T trong TMOD cho phép chọn 1 trong 2 khi Timer khởi động

- Sự bấm giờ bên trong

Nếu bit C/T = 0 thì hoạt động của Timer liên tục được chọn vào bộ Timer được ghi giờ từ dao động trên chip Một bộ chia 12 được thêm vào để giảm tần số clock đến một giá trị phù hợp hầu hết các ứng dụng Các thanh ghi THx và TLx tăng tốc

độ 1/12 lần tần số dao động trên chip Nếu dùng thạch anh 12MHz thì đưa đến tốc

Nguồn xung clock bên ngoài đưa chân P3.4 là ngõ nhập của xung clock bởi Timer

0 (T0) và P3.5 là ngõ nhập của xung clock bởi Timer 1 (T1)

Trong các ứng dụng đếm, các thanh ghi Timer được tăng trong đáp ứng của sự chuyển trạng thái từ 1 sang 0 ở ngõ nhập Tx Ngõ nhập bên ngoài được thử trong suốt S5P2 của mọi chu kì máy Do đó khi ngõ nhập đưa tới mức cao trong một chu

kì và mức thấp trong một chu kì kế tiếp thì bộ đếm tăng lên 1 Giá trị mới xuất hiện trong các thanh ghi Timer trong suốt S5P1 của chu kì theo sau một sự chuyển được khám thấy Bởi vì nó chiếm 2 chu kì máy (2µs) để nhận ra sự chuyển đổi từ 1 sang

0, nên tần số bên ngoài lớn nhất là 500kHz nếu dao động thạch anh 12MHz

Trang 36

1.8 Cổng nối tiếp

1.8.1 Giới thiệu

AT89S52 có một cổng nối tiếp trên chíp có thể hoạt động ở nhiều chế độ khác nhau với các tốc độ khác nhau Chức năng chủ yếu của cổng nối tiếp là thực hiện chuyển đổi song song sang nối tiếp với dữ liệu xuất và chuyển đổi nối tiếp sang song song với dữ liệu nhập để có thể giao tiếp với máy tính

Phần cứng truy xuất tới Port nối tiếp qua các chân TXD (P3.1) và RXD (P3.0) Cổng nối tiếp có thể hoạt động song công (full duplex:thu và phát đồng thời) và đệm lúc thu ( receiver buffering ) cho phép một kí tự sẽ được thu và được giữ trong khi kí tự thứ hai được nhận Nếu CPU đọc kí tự thứ nhất trước khi kí tự thứ hai được thu đầy đủ thì dữ liệu sẽ không bị mất

Hai thanh ghi chức năng đặc biệt cung cấp cho phần mềm truy xuất đến Port nối tiếp là SBUF và SCON Sự đệm Port nối tiếp ( SBUF ) ở địa chỉ 99H là hai sự đệm thực sự: ghi lên SBUF load dữ liệu phát và đọc SBUF truy xuất dữ liệu đã nhận Đây là hai thanh ghi riêng biệt và rõ rệt, mà thanh ghi phát chỉ ghi còn thanh ghi thu chỉ đọc Thanh ghi Port nối tiếp SCON (98H) là thanh ghi được được định vị bit bao gồm các trạng thái và các bit điều khiển Các bit điều khiển Set Mode của Port nối tiếp, còn các bit trạng thái cho biết sự kết thúc việc thu phát 1 kí tự Các bit trạng thái có thể được kiểm tra trong phần mềm hoặc có thể lập trình để sinh ra sự ngắt

Tần số hoạt động của Port nối tiếp hoặc tốc độ Baud có thể được lấy dao động trên chip 8051 hoặc thay đổi

Trang 37

Sơ đồ của Port nối tiếp như sau:

Hình 1.7 Sơ đồ khối cổng nối tiếp của 8051 1.8.2 Các thanh ghi của cổng nối tiếp

nối tiếp là SBUF và SCON

- Thanh ghi điều khiển cổng nối tiếp ( SCON-Serial Controller )

Thanh ghi điều khiển cổng nối tiếp (SCON) ở địa chỉ 98H là thanh ghi 8 bit được dùng để lập trình việc đóng khung bit bắt đầu Start, bit dừng Stop, các bit dữ liệu cùng với việc khác và chứa các bit trạng thái và các bit điều khiển liên quan tới cổng nối tiếp Các bit điều khiển đặt chế độ hoạt động cho cổng nối tiếp, các bit trạng thái báo cáo kết thúc việc phát hoặc thu một kí tự Các bit trạng thái có thể được kiểm tra bằng phần mềm hoặc có thể được lập trình để tạo ngắt

Trang 38

Bảng 1.13 Vị trí và ý nghĩa các bit của thanh ghi SCON

nhận 9 bit

9 bit

phải được xóa bởi phần mềm

xóa bởi phần mềm

nhau (Mode2 và 3)

Bảng 1.14 Các chế độ của cổng nối tiếp phụ thuộc SM1, SM0

* Trước khi sử dụng cổng, phải khởi động SCON để chọn chế độ hoạt động cho

cổng nối tiếp

* Thanh ghi này được định địa chỉ theo bit

- Thanh ghi đệm truyền nhận ở cổng nối tiếp (SBUF-Serial Buffer)

SBUF là thanh ghi 8 bit được dùng riêng cho truyền thông nối tiếp của 8051 Thanh ghi này có chức năng đệm các kí tự khi chúng được nhận về từ cổng nối tiếp hoặc được truyền đi từ cổng nối tiếp, việc truyền nhận qua cổng nối tiếp thực chất là việc truy xuất thanh ghi này

Trang 39

1.8.3 Các chế độ hoạt động

- Chế độ 0

Chế độ 0 là chế độ mà cổng nối tiếp được dùng như một thanh ghi dịch 8 bit Dữ liệu được truyền/nhận nối tiếp trên chân RXD, chân TXD được dùng để phát xung clock dịch bit Khi truyền/nhận các byte dữ liệu 8bit,bit có giá trị thấp nhất(LSB) được truyền/nhận trước tiên và bit MSB được truyền/nhận sau cùng.Việc truyền dữ liệu được bắt đầu bằng việc ghi một byte dữ liệu vào SBUF còn việc nhận dữ liệu được bắt đầu khi bit REN đã được đặt ở mức 1 và cờ thu RI= 0 Tốc độ baud ở chế

Trang 40

Hình 1.10 Giản đồ truyền nhận dữ liệu của chế độ 1

Với chế độ 1, 1 khung truyền sẽ gồm 10 bit, ngoài 8 bit dữ liệu ra còn một bit start (ở mức thấp) và 1 bit stop (ở mức cao), LSB cũng được truyền trước, MSB được truyền sau

Tốc độ baud của cổng nối tiếp trong chế độ 1 có thể được cung cấp bởi Timer 1

và Timer 2 hoặc đồng thời cả hai nếu muốn tốc độ truyền và nhận khác nhau

AT89S52 truyền và nhận dữ liệu nối tiếp theo nhiều tốc độ khác nhau Tốc độ truyền của nó có thể lập trình được Khi sử dụng các bộ Timer cung cấp tốc độ baud cho cổng nối tiếp thì thạch anh có tần số 11,0592 MHz được khuyến cáo nên dùng

vì với tần số này sẽ tạo được tốc độ baud chuẩn sai số 0%

Bảng 1.15 Bảng tốc độ baud khác nhau

Hình 1.11 Dùng Timer 1 và Timer 2 cung cấp tốc độ baud cho cổng nối tiếp

Ngày đăng: 27/06/2014, 03:20

HÌNH ẢNH LIÊN QUAN

1.2  Sơ đồ khối chung của họ 8051 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
1.2 Sơ đồ khối chung của họ 8051 (Trang 12)
Hình 1.2  Sơ đồ khối của vi điều khiển AT89S52  1.5.2  Chức năng các khối của 8051/8052/AT89S52 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52 1.5.2 Chức năng các khối của 8051/8052/AT89S52 (Trang 18)
Hình 1.4  Hoạt động của Timer0 và Timer1 ở chế độ 1 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 1.4 Hoạt động của Timer0 và Timer1 ở chế độ 1 (Trang 32)
Hình 1.3  Hoạt động của Timer 0 và Timer 1 ở chế độ 0 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 1.3 Hoạt động của Timer 0 và Timer 1 ở chế độ 0 (Trang 32)
Hình 1.5  Hoạt động của Timer0 và Timer1 ở chế độ 2 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 1.5 Hoạt động của Timer0 và Timer1 ở chế độ 2 (Trang 33)
Hình 1.6  Hoạt động của Timer0 ở chế độ 3 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 1.6 Hoạt động của Timer0 ở chế độ 3 (Trang 34)
Sơ đồ của Port nối tiếp như sau: - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Sơ đồ c ủa Port nối tiếp như sau: (Trang 37)
Bảng 1.16  Các giá trị của thanh ghi TH1 tạo tốc độ baud - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Bảng 1.16 Các giá trị của thanh ghi TH1 tạo tốc độ baud (Trang 43)
Bảng 1.17  Vị trí và công dụng các bit của thanh ghi IE - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Bảng 1.17 Vị trí và công dụng các bit của thanh ghi IE (Trang 45)
Hình 2.6  Tổ chức theo bit của các thanh ghi - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.6 Tổ chức theo bit của các thanh ghi (Trang 51)
Hình 2.7  Sơ đồ cấu trúc bên trong của DS1307 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.7 Sơ đồ cấu trúc bên trong của DS1307 (Trang 53)
Hình 2.8  Điều kiện Start và Stop - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.8 Điều kiện Start và Stop (Trang 54)
Hình 2.9  Quá trình đọc và ghi dữ liệu của DS1307 - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.9 Quá trình đọc và ghi dữ liệu của DS1307 (Trang 55)
Hình 2.10  Sơ đồ tổng quát của đồng hồ  2.1.4.4  Thuật toán thiết kế phần mềm - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.10 Sơ đồ tổng quát của đồng hồ 2.1.4.4 Thuật toán thiết kế phần mềm (Trang 57)
Hình 2.11  Thuật toán giao tiếp của DS1307 với Vi Điều Khiển - Đề tài “ Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh” docx
Hình 2.11 Thuật toán giao tiếp của DS1307 với Vi Điều Khiển (Trang 57)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w