bun_ny_girl930

New Member

Download miễn phí Đề tài Tìm hiểu vi điều khiển 89C51 và mô phỏng proteus





8951 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ trên một
dãy tần số rộng. Chức năng chủ yếu 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.
Port nối tiếp cho hoạt động song công (full duplex: thu và phát đồng thời) và
đệm 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 cho phép phần mềm truy xuất đến port nối
tiếp là: SBUF và SCON. Bộ đệm port nối tiếp (SBUF) ở điạ chỉ 99H nhận dữ liệu
để thu hay phát. Thanh ghi điều khiển port nối tiếp (SCON) ở điạ chỉ 98H là thanh
ghi có điạ chỉ bit chứa các bit trạng thái và các bit điều khiển. Các bit điều khiển
đặt chế độ hoạt động cho port nối tiếp, và các bit trạng thái Báo cáo kết thúc việc
phát hay thu ký tự . Các bit trạng thái có thể được kiểm tra bằng phần mềm hay
có thể lập trình để tạo ngắt.
 
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

có ngõ vào reset RST tác động ở mức cao trong khoảng thời gian 2
chu kỳ xung máy, sau đó xuống mức thấp để 8951 bắt đầu làm việc. RST có thể
kích bằng tay bằng một phím nhấn thường hở, sơ đồ mạch reset như sau:
Trạng thái của tất cả các thanh ghi trong 8951 sau khi reset hệ thống được tóm tắt như sau:
-Thanh ghi quan trọng nhất là thanh ghi bộ đếm chương trình PC được reset
tai địa chỉ 0000H. Khi ngõ vào RST xuống mức thấp, chương trình luôn bắt đầu tại địa chỉ 0000H của bộ nhớ chương trình. Nội dung của RAM trên chip không bị
thay đổi bởi tác động của ngõ vào reset.
VI. HOẠT ĐỘNG TIMER CỦA 8951:
1. GIỚI THIỆU:
- Bộ định thời của Timer là một chuỗi các Flip Flop được chia làm 2, nó
nhận tín hiệu vào là một nguồn xung clock, xung clock được đưa vào Flip Flop thứ
nhất là xung clock của Flip Flop thứ hai mà nó cũng chia tần số clock này cho 2 và
cứ tiếp tục.
- Vì mỗi tầng kế tiếp chia cho 2, nên Timer n tầng phải chia tần số clock ngõ
vào cho 2n
. Ngõ ra của tầng cuối cùng là clock của Flip Flop tràn Timer hay cờ mà
nó kiểm tra bởi phần mềm hay sinh ra ngắt. Giá trị nhị phân trong các FF của bộ
Timer có thể được nghĩ như đếm xung clock hay các sự kiện quan trọng bởi vì
Timer được khởi động. Ví dụ Timer 16 bit có thể đếm đến từ FFFFH sang 0000H.
Hoạt động của Timer đơn giản 3 bit được minh họa như sau:
- Trong hình trên mỗi tầng là một FF loại D phủ định tác động cạnh xuống
được hoạt động ở mode chia cho 2 (ngõ ra Q\ được nối vào D). FF cờ là một bo
chốt đơn giản loại D được set bởi tầng cuối cùng trong Timer. Trong biểu đồ thời gian, tầng đầu đổi trạng thái ở ½ tần số clock, tầng thứ hai đổi trạng thái ở tần
số ¼ tần số clock . . . Số đếm được biết ở dạng thập phân và được kiểm tra lại dễ
dàng bởi việc kiểm tra các tầng của 3 FF. Ví dụ số đếm “4” xuất hiện khi Q2=1,
Q1=0, Q0=0 (410=1002).
- Các Timer được ứng dụng thực tế cho các hoạt động định hướng. 8951 có 2
bộ Timer 16 bit, mỗi Timer có 4 mode hoạt động. Các Timer dùng để đếm giờ,
đếm các sự kiện cần thiết và sự sinh ra tốc độ của tốc độ Baud bởi sự gắn liền Port
nối tiếp.
- Mỗi sự định thời là một Timer 16 bit, do đó tầng cuối cùng là tầng thứ 16
sẽ chia tần số clock vào cho 216
= 65.536.
- Trong các ứng dụng định thời, 1 Timer được lập trình để tràn ở một khoảng
thời gian đều đặn và được set cờ tràn Timer. Cờ được dùng để đồng bộ chương
trình để thực hiện một hoạt động như việc đưa tới 1 tầng các ngõ vào hay gởi dữ
liệu đếm ngõ ra. Các ứng dụng khác có sử dụng việc ghi giờ đều đều của Timer để
đo thời gian đã trôi qua hai trạng thái (ví dụ đo độ rộng xung).Việc đếm một sự
kiện được dùng để xác định số lần xuất hiện của sự kiện đó, tức thời gian trôi qua
giữa các sự kiện.
- Các Timer của 8951 được truy xuất bởi việc dùng 6 thanh ghi chức năng
đặc biệt như sau :
2. CÁC THANH GHI ĐIỀU KHIỂN TIMER
2.1. Thanh ghi điều khiển chế độ timer TMOD (timer mode register) :
- Thanh ghi mode gồm hai nhóm 4 bit là: 4 bit thấp đặt mode hoạt động cho
Timer 0 và 4 bit cao đặt mode hoạt động cho Timer 1. 8 bit của thanh ghi TMOD
được tóm tắt như sau:
- TMOD không có bit định vị, nó thường được 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 sự truy xuất các thanh ghi chức năng đặc biệt
của Timer khác.
2.2. Thanh ghi điều khiển timer TCON (timer control register):
- Thanh ghi điều khiển bao gồm các bit trạng thái và các bit điều khiển bởi
Timer 0 và Timer 1. Thanh ghi TCON có bit định vị. Hoạt động của từng bit được
tóm tắt như sau :
2.3. Các nguồn xung nhịp cho timer (clock sources):
- Có hai nguồn xung clock có thể đếm giờ là sự định 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 được khởi động.
ự bấm giờ bên trong (Interval Timing):
- 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 1 giá trị phù hợp với các ứng dụng. Các thanh ghi TLx và THx 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ì sẽ đưa
đến tốc độ clock 1MHz.
- Các sự tràn Timer sinh ra sau một con số cố định của những xung clock, nó
phụ thuộc vào giá trị khởi tạo được LOAD vào các thanh ghi THx và TLx.
■ Sự đếm các sự kiện (Event Counting) :
- Nếu bit C/T = 1 thì bộ Timer được ghi giờ từ nguồn bên ngoài trong nhiều
ứng dụng, nguồn bên ngoài này cung cấp 1 sự định giờ với 1 xung trên sự xảy ra
của sự kiện. Sự định giờ là sự đếm sự kiện. Con số sự kiện được xác định trong
phần mềm bởi việc đọc các thanh ghi Timer. Tlx/THx, bởi vì giá trị 16 bit trong các
thanh này tăng lên cho mỗi sự kiện.
- Nguồn xung clock bên ngoài đưa vào 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 một. 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 đổi. 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 12 MHz.
2.4. sự bắt đầu, kết thúc và sự điều khiển các timer (starting, stopping and controlling the timer) :
- Bit TRx trong thanh ghi có bit định vị TCON được điều khiển bởi phần
mềm để bắt đầu hay kết thúc các Timer. Để bắt đầu các Timer ta set bit TRx
và để kết thúc Timer ta Clear TRx. Ví dụ Timer 0 được bắt đầu bởi lệnh SETB
TR0 và được kết thúc bởi lệnh CLR TR0 (bit Gate= 0). Bit TRx bị xóa sau sự
reset hệ thống, do đó các Timer bị cấm bằng sự mặc định.
- Thêm phương pháp nữa để điều khiển các Timer là dùng bit GATE trong
thanh ghi TMOD và ngõ nhập bên ngoài INTx. Điều này được dùng để đo các độ
rộng xung. Giả sử xung đưa vào chân INT0 ta khởi động Timer 0 cho mode 1 là
mode Timer 16 bit với TL0/TH0 = 0000H, GATE = 1, TR0 = 1. Như vậy khi INT0
= 1 thì Timer “được mở cổng” và ghi giờ với tốc độ của tần số 1MHz. Khi INT0
xuống thấp thì Timer “đóng cổng” và khoảng thời gian của xung tính bằng µs là sự
đếm được trong thanh ghi TL0/TH0.
Timer Operating Mode 1.
2.5. Sự khởi động và truy xuất các thanh ghi timer:
- Các Timer được khởi động 1 lần ở đầu chương trình để đặt mode hoạt động
cho chúng. Sau đó trong chương trình các Timer được bắt đầu, được xóa, các thanh
ghi Timer được đọc và cập nhật … theo yêu cầu của từng ứng công cụ thể.
- Mode Timer TMOD là thanh ghi đầu tiên được khởi gán, bởi vì đặt mode
hoạt động cho các Timer. Ví dụ khởi động cho Timer 1 hoạt động ở mode 1 (mode
Timer 16bit) và đ...
 
Các chủ đề có liên quan khác
Tạo bởi Tiêu đề Blog Lượt trả lời Ngày
W Tìm hiểu những chấn thương xoang hàm và gò má nếu không được điều trị sớm và đúng, có thể để lại di Luận văn Kinh tế 0
R Tìm hiểu và thiết kế cải tiến hệ thống điều khiển trạm bơm Đò Neo Luận văn Kinh tế 0
C Tìm hiểu cách vận hành và cài đặt của các hệ thống mail trên các hệ điều hành thông dụng: Internet M Luận văn Kinh tế 0
A Tìm hiểu tình hình sản xuất kinh doanh ở công ty điện lực I - Chương III: Ứng dụng dsm điều hoà đồ t Luận văn Kinh tế 0
C Tìm hiểu những kết quả mà các điều kiện kinh tế Trung Quốc đạt được Luận văn Kinh tế 0
D Trang bị điện, điện tử dây chuyền cán thép nhà máy sản xuất thép Úc, Đi sâu tìm hiểu hệ thống điều k Khoa học kỹ thuật 0
A Tìm hiểu hoạt động giúp việc gia đình và nhu cầu của người lao động đối với điều kiện sinh hoạt, làm Văn hóa, Xã hội 0
S Tìm hiểu các căn nguyên vi rút gây viêm đường hô hấp cấp của một số bệnh nhân điều trị ở bệnh viên Đ Khoa học Tự nhiên 0
T Tìm hiểu về s7-300 và wincc ứng dụng điều khiển giám sát sản Khoa học kỹ thuật 0
T Tìm hiểu về lí thuyết xác suất có điều kiện Xác Suất Thống kê 0

Các chủ đề có liên quan khác

Top