Tài liệu tham khảo hỗ trợ môn Vi xử lý các họ vi điều khiển thế hệ mới (Phần 1)
Tóm tắt Tài liệu tham khảo hỗ trợ môn Vi xử lý các họ vi điều khiển thế hệ mới (Phần 1): ...r 0 1 M1 0 Bit chọn mode của Timer 0 0 M0 0 Bit chôn mode của Timer 0 ** Với hai bit M0 và M1 của TMOD để chọn mode cho Timer 0 hoặc Timer 1. Bit Name Timer Description 0 0 0 Mode Timer 13 bit (mode 8048) 0 1 1 Mode Timer 16 bit 1 0 2 Mode tự động nạp 8 bit 1 1 3 Mode Timer tách ...ợc sự kiểm tra của các mode định vị và các lệnh của chúng có các Opcode 8 bit. Điều này cung cấp khả năng 28 = 256 lệnh được thi hành. Vì lệnh có 1 hoặc 2 byte bởi dữ liệu hoặc địa chỉ thêm vào Opcode. Trong toàn bộ các lệnh có 139 lệnh 1 byte, 92 lệnh 2 byte và 24 lệnh 3 byte. 1.1.7.1. Các ...1 WDT tràn bộ nhớ. Bộ đếm 13 -bit tràn khi nó tới 8191 (1FFFH), và khi đó sẽ Reset thiết bị. Khi WDT được cho phép nó sẽ gia tăng mọi chu kì máy trong khi bộ dao động đang chạy. Điều đó có nghĩa là người sử dụng phải khởi chạy lại WDT tại tối thiểu mọi 8191 chu kì máy Để khởi chạy lại WDT ng...
AT89C55WD vận hành cùng cách với UART trong
AT89C51 và AT89C52.
Bộ định thời 0 và Bộ định thời 1
Bộ định thời 0 và bộ định thời 1 trong AT89C55WD hoạt động giống như
bộ định thời 0 và bộ định thời 1 trong AT89C51 và AT89C52.
Bộ Định Thời 2
Bộ định thời 2 là một bộ Đếm/định thời có thể hoạt động định thời hoặc
đếm một sự kiện. Kiểu hoạt động được chọn bằng bit C/T2 trong SFR T2CON.
Bộ định thời 2 có 3 các độ hoạt động: thu nhận: tự nạp lại, tạo ra tốc độ baud,
tốc độ đếm bằng 1/12 tần số của mạch dao động.
Các chế độ hoạt động của bộ định thời 2
RCLK+TCL CP/RL2 TR2 Chế Độ
0 0 1 Nạp tự động 16-bit
0 1 1 Thu nhân 16-bit
1 X 1 Tạo tốc độ Baud
X X 0 Tắt
Trong chức năng đếm. thanh ghi được tăng một trị số trong đáp ứng chuyển
1 thành 0 trong chân đầu vào bên ngoài hoạt động đúng của nó, T2. Trong chức
năng này đầu vào bên ngoài lấy mẫu trong quá trình S5P2 của mọi chu kì máy.
42
Khi mẫu được đưa lên mức cao ở một chu kì và đạt mức thấp trong chu kì tiếp
theo thì đếm được tăng 1 giá trị. Giá trị đếm mới xuất hiện trong thanh ghi trong
S3P1 của chu kì sau chu kì mà sự chuyển tiếp được phát hiện. Từ 2 chu kì máy
(24 chu kì mạch dao động) được yêu cầu để thừa nhận chuyển tiếp 1 thành 0, tốc
độ đếm tối đa là 1/24 tần số mạch dao động. Đế đảm bảo 1 mức độ nhất định
được lấy mẫu tối thiểu 1 lần trước khi thay đổi, mức độ đó nên được giữ trong
tối thiểu 1 chu kì máy trọn vẹn.
Chế độ Thu nhận (Capture)
Trong chế độ thul nhận, 2 tùy chọn được chọn bởi EXEN2 trong T2CON.
Nếu EXEN2=0 bộ định thời 2 là 1 bộ đếm hay định thời 16-bit thiết lập bit TF2
trong T2CON khi tràn bộ nhớ. Bit đó có thể được dùng để tạo ra 1 ngắt. Nếu
EXEN2=I, bộ định thời 2 thực thi cùng hoạt động ,nhưng chuyển đổi 1 ´ 0 tại
đầu vào ngoài T2EX cũng gây ra giá trị hiện tại TH2 và TL2 để được thu nhận
lần lượt trong RCAP2H và RCAP2L. Ngoài ra, sự chuyển đổi tại T2EX cũng là
nguyên nhân khiến bit EXF2 trongT2CON được thiết lập. Bit EXF2 cũng như
TF2 có thể tạo ra 1 ngắt.
Hình vẽ minh họa:
Chế độ Tự nạp lại (Bộ đếm tiến hoặc lùi )
Bộ định thời 2 có thể được lập trình để đếm tiến hoặc lùi khi đã định cấu
hình trong chế độ tự nạp lại 16-bit.Tính năng này được gọi tới bằng bit DCEN
(Down Cunter Enable) được định vị trong SFR T2MOD. Trong lúc Reset, bit
DCEN được sét tới 0 vì thế bộ định thời 2 sẽ mặc định đếm tiến. Khi DCEN
được set, bộ định thời 2 có thể đếm tiến hoặc lùi, phụ thuộc giá trị của chân
T2EX.
43
Hình vẽ minh họa: DCEN=0
Trên hình vẽ trên ta thấy bộ định thời 2 tự động đếm tiến khi DCEN=0.
Trong chế độ này, 2 tùy chọn được chọn bởi bit EXEN2 trong T2CON. Nếu
EXEN2=0 bộ định thời 2 đếm tăng tới 0FFFFH và sau đó thiết lập bit TF2 khi
tràn bộ nhớ. Tràn bộ nhớ càng khiến các thanh ghi định thời được nạp lại với 16-
bit giá trị trong RCAP2H và RCAP2L. Các giá trị tong RCAP2HVÀ RCAP2L
trong bộ định thời trong chế độ Thu nhận được định sẵn bằng phần mềm. Nếu
EXEN2=1, chế độ nạp lại 16-bit có thể được khởi chạy bằng sự tràn bộ nhớ
hoặc sự chuyển 1 ´ 0 tại đầu vào ngoài T2EX . Sự chuyển đổi đó cùng thiết lập
bit EXF2. Cả 2 bit TF2 và EXF2 đều có thể tạo ra 1 ngắt nêu được phép.
Sự thiết lập bit DCEN(DCEN=1) cho phép bộ định thời 2 đếm tiến hoặc
lùi. Trong chế độ này, chân T2EX điều khiển hướng đếm. T2EX=1, bộ định thời
2 đếm tiến, bộ định thời sẽ tràn tại 0FFFFH và thiết lập bit TF2. Sự tràn bộ nhớ
cũng khiến l6-bit giá trị trong RCAP2H và RCAP2L được nạp lại lần lượt vào
44
trong các thanh ghi định thời TH2 và TL2.
T2EX=0, bộ định thời đếm lùi. Bộ định thời thiếu bộ nhớ khi giá trị lưu trữ
trong TH2 và TL2 bằng giá trị lưu trữ trong RCAP2H và RCAP2L. Thiết lập bit
TF2 và làm cho 0FFFFH được nạp lại vào các thanh ghi định thời.
Bit EXF2 toggles mỗi khi bộ định thời 2 tràn bộ nhớ hoặc thiếu bộ nhớ và
có thể được sử dụng như bit thứ 17. Trong chế độ hoạt động này EXF2 không
làm cờ tràn.
Máy phát tốc độ baud
Bộ định thời 2 được lựa chọn như máy phát tốc độ baud bằng việc thiết lập
TCLK, RCLK trong T2CON. Chú ý rằng tốc độ baud cho truyền và nhận có thể
khác nếu bộ định thời 2 đực dung cho máy nhận hoặc máy truyền và bộ định
thời 1 được dùng cho chức năng khác. Việc thiết lập RCLK, TCLK đặt bộ định
thời 2 vào chế độ máy phát tốc độ baud của nó, chế độ máy phát tốc độ baud
tương tự như chế độ tự nạp lại trong đó 1 rollover trong TF2 làm cho các thanh
ghi bộ định thời 2 được nạp lại với 16 bit giá trị trong các thanh ghi RCAP2H và
RCAP2L, chúng được định sẵn bằng phần mềm tốc độ baud trong các chế độ 1
và 3 được xác định bằng tốc độ tràn bộ nhớ theo phương trình sau:
Tốc độ baud các chế độ 1 và 3 = tốc độ tràn bộ nhớ của bộ định thời 2/16.
Bộ định thời có thể được cấu hình đề hoạt động định thời hoặc đếm. Trong hầu
hết các ứng dụng, nó được cấu hình cho hoạt động định thời. Thông thường, như
1 thiết bị định thời, nó gia tăng mọi chu kì máy (tại 1/12 tần số mạch dao động).
Tuy nhiên như 1 máy phát tốc độ baud, nó gia tăng mọi trạng thái thời gian (tại
1/2 tần số mạch dao động).
Công thức tính tốc độ baud :
(Chế độ 1 và 3/tốc độ baud) =
(Tần số mạch dao động/32x[65536-(RCAP2H,RCAP2L)])
Trong đó (RCAP2H, RCAP2L) là nội dung của RCAP2H và RCAP2L
được lấy bằng 1 số nguyên không dấu 16 bit.
Bộ định thời 2 trong chế độ 1 máy phát tốc độ bằng được minh họa bằng
hình 1191 tính minh họa này chỉ đúng nếu RCLK hoặc TCLK=1 trong T2CON.
Chú ý rằng 1 rollover trong TH2 không thiết lập TF2 và sẽ không tạo ra ngắt.
Cũng lưu ý rằng nếu EXEN2 được thiết lập, một chuyển đổi 1 ´ 0 trong T2EX
sẽ thiết lập EXF2 nhưng không nạp lại từ (RCAP2H, RCAP2L) tới (TH2, THL).
Như vậy khi bộ định thời được sử dụng trong chế độ máy phát tốc độ baud.
45
T2EX có thể được dung như một ngắt ngoài.
Hình 1. 19. Bộ định thời 2 trong chế độ máy phát tốc độ baud
Chú ý rằng khi bộ định thời 2 đang chạy (TR2 = 1) như một bộ định thời
trong chế độ tạo tác độ baud, TH2 hoặc TL2 không được đọc từ hoặc ghi tới bộ
định thời 2. Dưới những điều kiện đó, bộ định thời gia tăng mọi trạng thái thời
gian, và kết quả của việc đọc hay ghi không thể chính xác. Thanh ghi RCAP2 có
thể đọc nhưng không thể ghi, hội vì việc ghi có thê chồng lên việc nạp lại gây ra
các lỗi nạp lại, ghi. Bộ định thời phải được tắt trước khi truy cập bộ định thời 2
hoặc các thanh ghi RCAP2.
Programmable Clock Out
Một xung clock chu kì nhiệm vụ 50% có thể được lập trình đi ra trên P1.0,
như được chỉ ra trên hình 14-1. Chân này thêm vào để trở thành một chân
nhập/xuất thông thường. Có hai chức năng xen kẽ nhau. Nó có thể được lập
trình tới đầu vào của xung chích ngoài cho bộ đếm/định thời 2 hoặc tới đầu ra
của xung clock chu kì nhiệm vụ 50% trong dải từ 61 Hz đến 4MHz cho tần số
hoạt động là 16MHz.
Để định cấu hình bộ đếm/định thời 2như là máy tạo xung clock, bit C/T2
(T2CON.1) phải được xoá và bit T2OE (T2MOD.l) phải được thiết lập. Bit TR2
(T2CON.2) bắt dầu và dừng bộ định thời.
Tần số xung nhịp ra phụ thuộc tần số mạch dao động và giá trị nạp lại của
các thanh ghi thu nhận của bộ định thời 2 (RCAP2H, RCAP2L) được tính theo
phương trình sau:
Tần số xung nhịp ra = Tần số mạch dao động/{4x[65536-
46
(RCAP2H,RCAP2L)]}
Trong chế độ xung nhịp ra, bộ định thời 2 roll-overs sẽ không tạo ra ngắt.
Phương thức của chế độ này tương tự khi bộ định thời 2 được sử dụng như một
máy phát tốc độ baud. Có thề đồng thời sử dụng bộ định thời 2 như một máy
phát tốc độ baud và một máy phát xung clock. Tuy nhiên chú ý rằng các tần số
tốc độ baud và xung clock ra không thề xác định độc lập từ một thiết bị khác,
chúng sử dụng cả RCAP2H và RCAP2L.
Hình minh hoạ: Bộ định thời 2 trong chế độ xung nhịp ra
Ngắt
AT89C55WD có tất cả 6 vector : 2 ngắt ngoài (INT0, INT1), 3 ngắt định
thời (bộ định thời 0, 1 và 2 ) và 3 ngắt cổng nối tiếp . Những ngắt này được chỉ
ra trong hình minh họa.
Bảng thanh ghi cho phép ngắt(IE)
EA _ ET2 ES ET1 EX1 ET0 EX0
Bit cho phép = 1 cho phép ngắt
Bit cho phép = 0 vô hiệu hóa ngắt
Mỗi nguồn ngắt có thể được cho phép hoặc không cho phép riêng lẻ bằng
cách thiết lập hoặc xoá một bộ trong thanh ghi, chức năng đặc biệt IE. IE cũng
chứa một bit vô hiệu hóa chung, EA, nó vô hiệu hoá tất cả các ngắt trước đó.
Chú y rằng bảng 5 chỉ ra rằng bit vị trí IE6 được bổ sung. Phần mềm người dùng
không nên ghi ‘1’ tới bit vị trí đó, nó có thể được sử dụng trong các sản phẩm
AT89 tương lai.
47
Biểu tượng Vị trí Chức năng
EA IE.7 Vô hiệu hóa mọi ngắt. Nếu EA=0, không có ngắt
nào được thừa nhận. Nếu EA=1, mỗi nguồn ngắt
cho phép hay vô hiệu hóa bằng cách thiết lập hoặc
xóa bit cho phép của nó.
IE.6 Dự trữ
ET2 IE.5 Bit cho phép ngắt bộ định thời 2
ES IE.4 Bit cho phép ngắt port nối tiếp
ET1 IE.3 Bit cho phép ngắt bộ định thời 1
EX1 IE.2 Bit cho phép ngắt ngoài
ET0 IE.1 Bit cho phép ngắt bộ định thời 0
EX0 IE.0 Bên ngoài gián đoạn 0 mẩu có thể
Ngắt bộ định thời 2 được tạo bởi vùng OR của các bit của TF2 và EXF2
trong thanh ghi T2CON. Không cờ nào được xoá bằng phần cứng khi sự phục
vụ thường lệ được vector hoá. Trong thực tế, sự phục vụ thường lệ có thể phải
xác định TF2 hay EXF2 tạo ra ngắt đó và bit đó phải được xóa trong phần mềm.
Các cờ TF0, TF1 của bộ định thời 0 và bộ định thời 1 được thiết lập tại S5F2
của chu kì mà các bộ định thời tàn bộ nhớ. Các giá trị này được làm tròn bằng
mạch bên trong chu kì tiếp theo. Tuy nhiên, cờ TF2 của bộ định thời 2 lại được
thiết lập tại S2P2 và được làm tròn trong cùng chu kì với chu kì bộ định thời
tràn.
Các đặc tính của mạch dao động
XTAL1 và XTAL2 lần lượt là đầu vào và đầu ra của 1 bộ khuếch đại đảo
được cấu hình làm mạch dao động trên chíp. Hoặc 1 tinh thể thạch anh hoặc
mạch cộng hưởng gốm được sử dụng. Để điều khiển thiết bị này từ 1 nguồn
xung clock bên ngoài, XTAL2 được thả nổi (không kết nối) trong khi XTAL1
được điều khiển. Không có yêu cầu nào về chu kì nhiệm vụ của tín hiệu xung
clock bên ngoài, vì để đầu vào này đến được mạch tạo xung clock bên trong
chíp phải đi qua 1 flip-flop chia-2, nhưng các chi tiết kỹ thuật về thời gian mức
cao và mức thấp, điện áp cực tiểu và cực đại phải được xem xét.
Chế độ nghỉ
Trong chế độ nghỉ, CPU đặt chính nó vào trạng thái ngủ trong khi tất cả các
48
ngoại vi bên trong chíp vẫn tích cực. Chế độ này được điều khiển bởi phần
mềm. Nội dung của RAM trên chíp và của tất cả các thanh ghi chức năng đặc
biệt vẫn không đổi trong thời gian tồn tại chế độ này. Chế độ nghỉ được kết thúc
bởi 1 ngắt bất kì nào dược phép hoặc bằng Reset cứng.
Ta cần lưu ý rằng khi chế độ nghỉ được kết thúc bởi 1 reset cứng, chíp vi
điều khiển sẽ tiếp tục bình thường việc thực thi chương trình từ nơi chương trình
bị tạm dừng trong vòng 2 chu kì thấy trước khi giải thuật reset mềm nắm quyền
điều khiển. Ở chế độ nghi. phần cứng trên chíp cấm truy xuất RAM nội dung
nhưng cho phép truy xuất các chân của các port. Để tránh khả năng có 1 thao tác
ghi không mong muốn đến 1 chân port khi chế độ nghỉ kết thúc bằng reset, lệnh
tiếp theo lệnh yêu cầu chế độ nghỉ không nên là lệnh ghi đến chân port hoặc đến
bộ nhớ ngoài.
Chế độ nguồn giảm
Trong chế độ nguồn giảm, mạch dao động ngừng hoạt động và lệnh yêu
cầu chế độ nguồn giảm là lệnh sau cùng được thực thi. RAM trên chíp và các
thanh ghi chức năng đặc biệt vẫn duy trì giá trị của chúng cho đến khi chế độ
nguồn giảm kết thúc. Ra khỏi chế độ nguồn giảm bằng reset cứng hoặc bằng 1
ngắt được phép. Reset xác định tại các thanh ghi chức năng đặc biệt nhưng
không thay đổi RAM trên chíp.Việc reset không nên xảy ra trước khi Vcc được
khôi phục lại mức điện áp bình thường và phải kéo dài trạng thái tích cực của
chân reset đủ lâu để cho phép mạch dao động hoạt động trở lại và đạt trạng thái
ổn định .
Bảng trạng thái của các chân ngoài trong chế độ nguồn giảm, chế độ nghỉ
Chế độ Bộ nhớ chương
trình
ALE PSEN PORT0 PORT1 PORT2 PORT3
Nghỉ Bên trong 1 Dữ liệu Dữ liệu Dữ liệu Dữ liệu
Nghỉ Bên ngoài 1 1 Thả nôi Dữ liệu Địa chỉ Dữ liệu
Nguồn giảm Bên trong 0 0 Dữ liệu Dữ liệu Dữ liệu Dữ liệu
Nguồn giảm Bên ngoài 0 0 Thả nối Dữ liệu Dữ liệu Dữ liệu
49
1.3 VI ĐIỀU KHIỂN AT89C54/58
1.3.1 Mô tả
SST89C54 và SST89C58 là thuộc họ FlashFlex51 vi mạch điều khiển 8-
bit. SST89C54/58 cùng tập lệnh mạnh và sử dụng cùng kiểu kiến trúc, thích hợp
với tiêu chuẩn thiết bị vi điều khiển 8xC5x.
SST89C54/58 có 20/36 KB của bộ nhớ chương trình EEPROM trong chíp
tích hợp. Phân chính của khối SupperFlash 0 chiếm 16/32 KB không gian nhớ
chương trình bên trong và khối SupperFlash chiếm giữ 4 KB của SST89C54/58
trong không gian như chương trình bên trong. 4kbyte của khối SuperFlash thứ
hai có thể được sắp xếp ở vị trí cao hay thấp 64 KByte: nó có thể cũng được ẩn
dưới bộ đếm chương trình và sử dựng dữ liệu như một EEPROM độc lập. Khối
bộ nhớ Flash có thể được lập trình qua một tiêu chuẩn 87C5x OTP EPROM phù
hợp với một bộ tiếp hợp đặc biệt và vi chương trình cho những thiết bị
SST89C54/58.
50
1.3.2.Tổ chức bộ nhớ
SST89C54/58 có vùng địa chỉ riêng biệt cho bộ nhớ chương trình dữ liệu.
Bộ nhớ chương trình
Có hai khối bộ nhớ truy cập nhanh bên trong SST89C54/58. Khối bộ nhớ
block 0 có 16/32 Kbyte và chiếm giữ vùng địa chỉ 0000H đến 3FFFH/7FFFH.
Khối bộ nhớ truy cập nhanh thứ hai là Bock 1 có 4 Kbyte và chiếm giữ vùng địa
chỉ F000H tới FFFFH.
16/32 KB khối nhớ truy cập nhanh được tổ chức như 128/256 Sector được
đanh địa chỉ nhờ 4 bộ địa chỉ từ A15 đến A17, mỗi sector gồm 128 Byte, 4KB
khối nhớ thứ 2 được chia thành các Sector mỗi sector có 64 byte.
Khi cho phép thao tác mã bên trong (EA#=l), 16/32 khối nhớ truy cập
nhanh đầu tiên luôn hiện ở máy đếm chương trình mã lệnh. Hình 1.23 cho thấy
sự tổ chức bộ nhớ chương trình cho SST89C54/58
Hình 1.23. Tổ chức chương trình bộ nhớ SST89C54/58
51
Khi cho phép thao tác mã bên trong(EA#=l), khối bộ nhớ 4kbyte thứ 2 truy
cập nhanh cho mã lệnh, khối bộ nhớ thứ 2 luôn luôn có thể tiếp cận những thanh
ghi của hòm thư: SFCM, SFCF, SFAL, SFAH, SFDT và SFST. Khi nào bit 7
của cấu hình hòm thư SupperFlash (SFCF[7]). SFR định địa chỉ B1H, khối
4kbyte sẽ hiện rõ ở bộ đếm chương trình.
Sắp xếp bộ nhớ
SST89C54/58 cho phép sắp xếp một cách đặc biệt, người sử dụng có thể
sắp xếp bộ nhớ Flash vào bên trong các rãnh từ, vì thế có thể ngăn chặn Block 0
của bộ nhớ Flash đã được chương trình hoá. Từ đó có thể ngăn chặn Block 0
chiếm giữ vùng địa chỉ chương trinh bên phải cua 8051 tại vị trí các vector ngắt
cư trú, những vector ngắt đó sẽ không sẵn có khi Block 0 đang được chương
trình hóa.
SST89C54/58 cung cấp 4 tuỳ chọn của sự sắp xếp bộ nhớ. Khi nào 4kbyte
ở mức thấp được ánh xạ, bất kì sự truy nhập chương trình bên trong, địa chỉ
logic sẽ bị hạn chế từ 0000H đến 0FFFH sẽ có 4 giá trị lớn nhất của địa chỉ
thành bit ‘1’, một lần nữa sự truy cập lại được gửi tới F000H - FFFFH. Block 1
cũng có thể truy cập đến F000H - FFFFH. Hình 7 và 8 biểu diễn sự sắp xếp lại
tổ chức bộ nhớ chương trình của SST89C54/58.
52
Hình 1.24. SST89C54/58 Tổ chức lại bộ nhớ Hình 1.25. SST89C54/58 sắp xếp lại
chương trình chương trình tổ chức bộ nhớ
Bộ nhớ dữ liệu
SST89C54/58 có 256x8 bit của bộ nhớ RAM và 64kbyte dữ liệu bộ nhớ
ngoài
Hình 1.26. Tổ chức ô nhớ trong thanh ghi chức năng của Flashnex51
Thanh ghi chức năng đặc biệt của SST89C54/58
Bảng 3.4: CPU related SFRs
53
Kí
hiệu
Mô tả Chỉ
dẫn
địa
chỉ
Địa chỉ bit, kí hiệu hoặc thay thế chuyển hàm Khởi tạo
giá trị
LSB
ACC* Bình
ắc quy
E0H ACC[7:0] 00H
B* Đăng
kí B
F0H B[7:0] 00H
PSW* Từ tình
trạng
chương
trình
D0H CY AC F0 RS1 RS0 OV F1 P 00H
SP Ngăn
xếp
con trỏ
81H SP[7:0] 07H
DPL Điểm
dữ liệu
thấp
82H DLP[7:0] 00H
DPH Điểm
dữ liệu
cao 0
83H DHP[7:0] 00H
IE* Cho
phép
ngắt
A8H EA - ET2 ES0 ET1 EX1 ET0 EX0 40H
IP* Ưu
tiên
ngắt
B8H - - PT2 PS PT1 PX1 PT0 PX0 xx000000
b
PCON Điều
khiển
nguồn
87H SM
OD
- - - GF
1
GF0 PD IDL 0xxx0000
b
Bảng 3B: Lập trình bộ nhớ Flash SFRS
54
Kí
hiệu
Mô
tả
Chỉ
dẫn
địa
chỉ
Địa chỉ bit, kí hiệu hoặc thay thế chuyển hàm Khởi tạo
giá trị LSB
SFST Tình
trạng
Super
Flash
B6H SECD - Busy Flash_busy - - xxx00000B
SFCF Cấu
hình
Super
Flash
B2H VIS IAPEN - - - - MAP_EN 000000xxB
SFCF Lệnh
Super
Flash
B2H FIE FCM 00H
SFCM Dư
liệu
Super
Flash
B5H Thanh ghi dữ liệu SuperFlash 00H
SFAL Địa
chỉ
thấp
Super
Flash
B3H SuperFlash sắp đặt thanh ghi địa chỉ thấp
từ A7-A0(SFAL)
00H
SFAH Địa
chỉ
cao
Super
Flash
B4H SuperFlash sắp đặt thanh ghi địa chỉ cao
từ A15-A8(SFAH)
00H
Thanh ghi trạng thái SuperFlash (SFST) (Thanh ghi chỉ đọc)
7 6 5 4 3 2 1 0 Vị trí
0B6H SECD2 SECD1 SECD0 - Busy Flash_busy - -
55
Kí hiệu Chức năng
SECD2 Kiểm tra bit 1
SECD1 Kiểm tra bit 2
SECD0 Kiểm tra bit 3
Chuyển tới bảng 8 cho tuỳ chọn kiểm tra khóa
Busy Truyền loạt chương trình hoàn thành kiểm soát vòng bit
1 : Thiết bị bận với thao tác flash
0: Thiết bị sẵn sàng cho thao truyền loạt chương trình tiếp theo
Flash_busy Hoàn thành thao tác kiềm tra Flash
1: Thiết bị bận với thao tác flash
0: Thiết bị hoàn thành các lệnh cuối cùng, bao gồm cả truyền
loạt chương trình
Thanh ghi lệnh SuperFlash (SFCM)
7 6 5 4 3 2 1 0 Vị trí
0B2H FIE FCM6 FCM5 FCM4 FCM3 FCM2 FCM1 FCM0
Kí hiệu Chức năng
FIE Flash cho phép ngắt
1 : INT1 # hoàn thành thao tác gán tín hiệu IAP
INT1 # không cho phép ngắt ngoài
0 : INT1 # không gán
FCM[6:0] Flash thao tác lệnh
000-0001B chíp xoá
000 - 0110B truyền loạt chương trình
000 - 1011B xoá rãnh từ
000 - 1100B Kiểm tra byte
56
000 - 1101B Xoá khối
000 - 1110B Byte chương trình
tất cả các sự kết hơp khác không được thực hiện, và dự
trữ cho sử dụng trong tương lai.
Thanh ghi dữ liệu SuperFlash (SFDT)
7 6 5 4 3 2 1 0 Vị trí
0B5H Thanh ghi dữ liệu SuperFlash
Thanh ghi địa chỉ SuperFlash (SFAL)
7 6 5 4 3 2 1 0 Vị trí
0B3H Thanh ghi địa chỉ thấp SuperFlash
Thanh ghi địa chỉ SuperFlash (SFAH)
7 6 5 4 3 2 1 0 Vị trí
0B4H Thanh ghi địa chỉ cao SuperFlash
Bảng 3C: thiết bị bấm giờ SFRs
WDTC Điều
khiển
thiết bị
bấm
giờ
C0H - - - - WDRE WDTS WDT SWDT X0H
WDTH Thiết bị
bấm
giờ dữ
liệu/nạp
lại
86H WDRL 00H
57
1.4 VI ĐIỀU KHIỂN AT89C2051
1.4.1 Đặc trưng của AT89C2051
• Tương thích với sản phẩm họ MCS-51 .
• Chiếm 2k bytes của bộ nhớ flash.
• Hệ thống hoạt động trong nguồn điện 2,7v đến 6v.
• Thao tác trong miền tĩnh tấn số:0HZ tới 24MHZ.
• Có hai mức đế xoá chương trình.
• l28bytes RAM.
• Có 15 đường xuất nhập.
• Có 2 bộ định thời timer/counter chiếm l6bit.
• 6 nguồn ngắt.
• kênh UART dùng dê lập trình tuần tự.
• LED thiết bị dẫn tín hiệu ra trục tiếp.
• Trong bộ nhớ có chứa thước so sánh tín hiệu tương tụ
1.4.2 Mô tả
AT89C2051 là một hệ vi tính 8bit đơn chíp CMOS có hiệu xuất cao. Công
xuất nguồn tiêu thụ thấp và có 2 k bytes bộ nhớ ROM FLASH có thể xoá/1ập
trình được. Chíp này sân xuất dựa vào công nghệ bộ nhớ không mất nội dung có
58
độ tích hợp cao của ATMEL.
AT89C2051 cũng thích hợp với các lệnh và các chân ra của chuẩn công
nghiệp MCS-51 flash trên chíp cho phép bộ nhớ chương trình được lập trình lập
lại trên hệ thống hoặc bằng bộ lập bộ nhớ không mất nội dung qui ước. Bằng
cách kết hợp CPU linh hoạt 8 bit với flash trên một chíp mạnh đáp ứng cho
những ứng dụng điều khiển. AT89C2051 thiết kế với logic tĩnh cho hoạt động
có tần số giảm xuống 0 và hỗ trợ hai chế độ tiết kiệm năng lượng. Nó có các chế
độ như chế độ nghỉ dừng CPU trong khi vẫn cho phép RAM, các bộ định
thời/đếm, port nối tiếp và hệ thống ngắt tiếp tục hoạt động.
Chế độ nguồn giảm duy trì nội dung trong RAM không cho mạch dao động
cứng cấp xung clock nhằm vô hiệu hoá
Các hoạt động khác của chíp cho đến khi có reset phần cứng tiếp theo.
Cấu hình chân ra AT89C2051:
59
File đính kèm:
tai_lieu_tham_khao_ho_tro_mon_vi_xu_ly_cac_ho_vi_dieu_khien.pdf



