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 giới thiệu tới người học các kiến thức cơ bản cho vi điều khiển họ 8051 như: AT89C2051, AT89C51/52, AT89C55WD, SST89C54/58. Mời các bạn cùng tham khảo nội dung chi tiết.
ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN Bộ môn Công nghệ điều khiển tự động LÊ HÙNG LINH 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 THÁI NGUYÊN - NĂM 2008 LỜI NÓI ĐẦU Trong phát triển đất nước nay, tự động hố đóng vai trò quan trọng Các hệ thống tự động hố ứng dụng lĩnh vực đời sống xã hội dây truyền sản xuất Để xây dựng hệ thống tự động hoá phải cần nhiều kiến thức như: Phân tích hệ thống, thiết kế đánh giá hệ thống, kiến thức phần cứng, kiến thức phần mềm… Vì đòi hỏi kỹ sư tự động hố phải có kiến thức vững vàng Do nhu cầu đào tạo sinh viên học viên học mơn Tự động hố, mạnh dạn biên soạn tài liệu để phục vụ đối tượng Tài liệu mong muốn phục vụ cách hữu ích cho yêu mến mơn Tự động hố có nhu cầu sử dụng vào cơng tác thực tiễn Nội dung tài liệu gồm chương: Chương l: Cung cấp kiến thức cho vi điều khiển họ 8051 như: AT89C2051, AT89C51/52, AT89C55WD, SST89C54/58 Chương 2: Mô tả kiến thức chung họ vi điều khiển AVR: AT90S8535 AT89LS8535 Chương 3: Cung cấp vi diều khiển PSoC Vi điều khiển sử dụng nhiều cơng nghiệp Trong q trình biên soạn tài liệu, cố gắng nhiều Tuy nhiên, thời gian khả có hạn, tài liệu không tránh khỏi khiếm khuyết Chúng vui lòng biết ơn góp ý độc giả Mọi thắc mắc liên hệ với Bộ môn Điều khiển tự động - Khoa CNTT - Đại học Thái Nguyên CHƯƠNG I HỌ VI ĐIỂU KHIỂN 8051 1.1 GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MCS-51 (89C51): 1.1.1 Giới thiệu họ MCS-51 * MCS họ IC (integrated circuit) vi điều khiển (Microcontroller) hãng Intel sản xuất Các IC tiêu biểu cho họ MCS-51 là: 8051, 8031, 89C51, 892051, 8751 Việc xử lý Byte toán số học cấu trúc liệu thực nhiều chê độ truy xuất liệu nhanh RAM nội Tập lệnh cung cấp bảng tiện dụng lệnh số học bit gồm lệnh cộng, trừ, nhân lệnh chia Nó cung cấp hỗ trợ mở rộng Chip dung cho biến kiểu liệu riêng biệt cho phép quản lý kiểm tra bit trực tiếp điều khiển * 89C51 vi điều khiển bit, chế tạo theo công nghệ CMOS chất lượng cao với KB EEPROM (Flash Programmable and erasable read giấy memory) Thiết bị chế tạo cách sử dụng nhớ không bốc mật độ cao ATMEL tương thích với chuẩn cơng nghiệp MCS - 51 tập lệnh chân ATMEL AT89C51 vi điều khiển mạnh (có cơng suất lớn) mà cung cấp linh động cao giải pháp giá dối với nhiều ứng dụng vi điều khiển Các đặc điểm 89C51 tóm tắt sau: * KB nhớ lập trình lại nhanh * tần số hoạt động từ: 0Hz đến 24 MHz * Timer/counter 16 Bit * 128 Byte RAM nội * Port xuất/ nhập bit * Giao tiếp nối tiếp * 64 KB vùng nhớ mã * 64 KB vùng nhớ liệu * Xử lý Boolean (hoạt động bit đơn) * 210 vị trí nhớ định vị bit 1.1.2 KHẢO SÁT SƠ ĐỒ CHÂN 89C51, CHỨC NĂNG TƯNG CHÂN 1.1.2.1 Sơ đồ chân 89C51 Hình 1.2 Sơ đồ chân IC 89C51 1.1.2.2 Chức chân 89C51 89C51 có tất 40 chân có chức đường xuất nhập Trong có 24 chân có tác dụng kép (có nghĩa chân có chức năng), đường hoạt động trường xuất nhập đường điều khiển thành phần bus liệu bus địa a Các Port: Port 0: port có chức chân 32 - 39 89C51 Trong thiết kế cỡ nhờ không dùng hộ nhớ mở rộng có chức đường I/O Đối với thiết tế cờ lần có nhớ mở rộng kết hợp bus địa bus liệu Port l: port I/O chân - Các chân ký hiệu Pl.0, P1.2, dung chủ giao tiếp với thiết bị cần Port khơng có chức khác, vập chung dùng cho giao tiếp với thiết bị bên ngồi Port 2: port có tác dụng kép chân 21 - 28 dùng đường xuất nhập byte cao bus địa thiết bị dùng nhớ mở rộng Port 3: Port port có tác dụng kép chân 10-17 Các chân port có nhiều chức cơng dụng chuyển đổi có liên hệ với đặc tính đặc biệt 89C51 bảng sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 Tên RXT TXD INT0\ INT1\ T0 T1 WR\ RD\ Chức chuyển đổi Chân vào liệu nôi tiếp Chân xuất liệu nôi tiếp Chân vào ngắt Chân vào ngắt Chân vào TIME/COUNTER Chân vào TIME/COUNTER Tín hiệu ghi liệu lên nhớ ngồi Tín hiệu đọc nhớ liệu ngồi b Các ngõ tín hiệu điều khiển: * Ngơ tín hiệu PSEN (program store enable): * PSEN tín hiệu ngõ chân 29 có tác dụng cho phép đọc nhớ chương trình mở rộng thường nói đến chân 0E\ (output enable) EPROM cho phép dọc byte mã lệnh * PSEN mục thấp thời gian Microcontroller 89C51 lấy lệnh Các mã lệnh chương trình đọc từ EPROM qua bus liệu chốt vào ghi lệnh bên 89C51 để giai mã lệnh Khi 89C51 thi hành chương trình ROM nội PSEN mức logic * Ngõ tín hiệu điêu khiển ALE (Address Latch Enable): • Khi 89C51 truy xuất nhớ bên ngồi, port có chức bus địa bus liệu phải tách đường liệu địa Tín hiệu ALE chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp đường địa liệu kết nói chúng với IC chốt • Tín hiệu chân ALE xung khoảng thời gian port đóng vai trò địa thấp nên chốt địa hoàn toàn tự động * Ngữ tín hiệu (External Acces): Tín hiệu vào /EA chân 31 thường dược mắc lên nguồn Nếu mức 1, 89C51 thi hành chương trình từ ROM nội khoang địa thấp Kbyte Nếu mức 0,89C51 thi hành chương trình từ nhớ mở rộng Chân /EA lấy làm chân cấp nguồn 21V lập trình cho EPROM 89C51 * Ngõ tín hiệu RST (Reset): Ngõ vào RST chân ngõ vào Reset S9C51 Khi ngõ vào tín hiệu đưa lên cao chu kỳ máy, ghi bên dược nập giá trị thích hợp đề khởi động hệ thống Khi cấp điện mạch tự động Reset * Các ngõ vào giao động X1, X2: Bộ dao động tích hợp bên 89C51 , sử dụng 89C51 người thiết kế cần kết nôi thêm thạch anh tụ hình vẽ sơ đồ Tần số thạch anh thường sư dụng cho 89C51 12 Mhz * Chân 40 (Vcc) dược lên nguồn 5V 1.1.3 CẤU TRÚC BÊN TRONG VI ĐIỀU KHIỂN 1.1.3.1 Tổ chức nhớ Bộ nhớ chíp Bộ nhớ bên ngồi Hình 1.3 Sơ đồ nhớ RAM CÁC THANH CHỨC NĂNG ĐẶC BIỆT - Bộ nhớ 89C51 bao gồm ROM RAM RAM 89C51 bao gồm nhiều thành phần: phần lưu trữ da dụng phần lưu trữ địa hóa bit, bank lhanh ghi ghi chức đặc biệt - 89C51 có nhớ theo cấu trúc Harvard: có vùng nhớ riêng biệt cho chương trình liệu Chương trình liệu chứa bên 89C51 89C51 kết nối với 64K byte nhớ chương trình 64K byte liệu Các đặc tính cần ý là: ¾ Các ghi port xuất nhập định vị (xác định) nhớ truy xuất trực tiếp giống sở địa nhớ khác ¾ Ngăn xếp bên Ram nội nhỏ so với Ram ngoại ¾ RAM bên 89C51 phân chia sau: o Các banh ghi có địa từ OOH đến IFH o RAM địa hóa bit có địa từ 20H đến 2FH o RAM đa dụng từ 30H đến 7FH o Các ghi chức đặc biệt từ 80H đến FFH a RAM đa dụng: Mặc dù hình vẽ cho thấy 80 byte đa dựng chiếm địa từ 30H đến 7FH, 32 byte từ 00H đến 1FH dùng với mục đích tương tự (mặc dù địa có mục đích khác) Mọi địa vùng RAM đa dụng truy xuất tự dùng kiểu địa trực tiếp gián tiếp b RAM truy xuất bit: - 89C51 chứa 210 bit dược địa hóa, có 128 bit có chứa byte có chứa địa từ 20F đến 2FH bit lại chứa nhóm ghi có chức đặc biệt - Ý tưởng truy xuất bit phần mềm đặc tính mạnh microcontroller xử lý nhúng Các bit đặt, xóa, AND, OR, , với lệnh đơn Da số microcontroller xử lý đòi hỏi chuỗi lệnh đọc - sửa - ghi để đạt mục đích tương tự Ngồi port truy xuất bit - 128 bit truy xuất bit truy xuất byte bit phụ thuộc vào lệnh dùng c Các bank ghi: - 32 byte thấp nhớ nội dành cho bank ghi Bộ lệnh 89C51 hồ trợ ghi có tên Ro đến R7 theo mặc định sau reset hệ thống, ghi có địa từ OOH đến 07H - Các lệnh dùng ghi Ro đến R7 ngắn nhanh so với lệnh có chức tương ứng dùng kiểu địa trực tiếp Các liệu dùng thường xuyên nên dùng ghi - Do có bank ghi nên thời điểm có bank ghi truy xuất ghi Ro đến R7 để chuyển đổi việc truy xuất bank ghi ta phải thay đổi bit chọn bank ghi trạng thái 1.1.3.2 Các ghi có chức đặc biệt: - Các ghi nội 89C51 truy xuất ngầm định lệnh - Các ghi 89C51 định dạng phần RAM chíp ghi có địa (ngoại trừ ghi đếm chương trình ghi lệnh ghi không bị tác động trực tiếp) Cũng Ro đến R7, 89C51 có 21 ghi có chức đặc biệt (SFR: Special Function Register) vùng RAM nội từ địa 80H đến FFH * Chú ý: Tất 128 địa từ 80H đến FFH không định nghĩa, có 21 thành ghi có chức đặc biệt định nghĩa sẵn địa - Ngoại trừ ghi A dược truy xuất ngầm nói, đa số ghi có chức đặc biệt SFR địa hóa bit byte Thanh ghi trạng thái chương trình (PSW: Program Status Word): địa D0H BIT SYMBOL ADDRESS PSW.7 CY D7H Cờ nhớ PSW.6 PSW.5 PSW.4 PSW.3 AC F0 RS1 RS0 D6H D5H D4H D3H DESCRIPTION Cờ nhớ phụ Cờ Bit chọn banh ghi Bit chọn banh ghi 00 = Bank 0; address 00h ÷ 07H 01 = Bank ; address 08H ÷ 0FH 10 = Bank ; address 0H ÷ 7H PSW.2 OV D2H 11 = Bank , address 8H ÷ FH Cờ tràn PSW.1 PSW.0 P D1H D0H Dự trữ Cờ parity chẵn Chức tùng bit trạng thái chương trình: + Cờ Carry CY: Cờ nhớ có tác dụng kép Thơng thường dùng cho lệnh tốn học: C = nêu phép tốn cộng có tràn phép trừ có mượn ngược lại C = nêu phép tốn cộng khơng tràn phép trừ khơng có mượn + Cờ Carry phụ AC: Khi cộng giá trị BCD (Binary Code Decimal), cờ nhớ phụ AC sét kết bit thấp nằm phạm vi điều khiển 0AH ÷ 0FH Ngược lại AC = 10 ghi định thời TH2 TL2 T2EX=0, định thời đếm lùi Bộ định thời thiếu nhớ giá trị lưu trữ TH2 TL2 giá trị lưu trữ RCAP2H RCAP2L Thiết lập bit TF2 làm cho 0FFFFH nạp lại vào ghi định thời Bit EXF2 toggles định thời tràn nhớ thiếu nhớ sử dụng bit thứ 17 Trong chế độ hoạt động EXF2 không làm cờ tràn Máy phát tốc độ baud Bộ định thời lựa chọn máy phát tốc độ baud việc thiết lập TCLK, RCLK T2CON Chú ý tốc độ baud cho truyền nhận khác định thời đực dung cho máy nhận máy truyền định thời dùng cho chức khác Việc thiết lập RCLK, TCLK đặt định thời vào chế độ máy phát tốc độ baud nó, chế độ máy phát tốc độ baud tương tự chế độ tự nạp lại rollover TF2 làm cho ghi định thời nạp lại với 16 bit giá trị ghi RCAP2H RCAP2L, chúng định sẵn phần mềm tốc độ baud chế độ xác định tốc độ tràn nhớ theo phương trình sau: Tốc độ baud chế độ = tốc độ tràn nhớ định thời 2/16 Bộ định thời cấu hình đề hoạt động định thời đếm Trong hầu hết ứng dụng, cấu hình cho hoạt động định thời Thông thường, thiết bị định thời, gia tăng chu kì máy (tại 1/12 tần số mạch dao động) Tuy nhiên máy phát tốc độ baud, gia tăng 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ế độ 3/tốc độ baud) = (Tần số mạch dao động/32x[65536-(RCAP2H,RCAP2L)]) Trong (RCAP2H, RCAP2L) nội dung RCAP2H RCAP2L lấy số nguyên không dấu 16 bit Bộ định thời chế độ máy phát tốc độ minh họa hình 1191 tính minh họa RCLK TCLK=1 T2CON Chú ý rollover TH2 không thiết lập TF2 không tạo ngắt Cũng lưu ý EXEN2 thiết lập, chuyển đổi ´ T2EX thiết lập EXF2 không nạp lại từ (RCAP2H, RCAP2L) tới (TH2, THL) Như định thời sử dụng chế độ máy phát tốc độ baud 45 T2EX dung ngắt ngồi Hình 19 Bộ định thời chế độ máy phát tốc độ baud Chú ý định thời chạy (TR2 = 1) định thời chế độ tạo tác độ baud, TH2 TL2 không đọc từ ghi tới định thời Dưới điều kiện đó, định thời gia tăng trạng thái thời gian, kết việc đọc hay ghi khơng thể xác Thanh ghi RCAP2 đọc khơng thể ghi, hội việc ghi có thê chồng lên việc nạp lại gây lỗi nạp lại, ghi Bộ định thời phải tắt trước truy cập định thời ghi RCAP2 Programmable Clock Out Một xung clock chu kì nhiệm vụ 50% lập trình P1.0, hình 14-1 Chân thêm vào để trở thành chân nhập/xuất thơng thường Có hai chức xen kẽ Nó lập trình tới đầu vào xung chích ngồi cho đếm/định thời tới đầu xung clock chu kì nhiệm vụ 50% dải từ 61 Hz đến 4MHz cho tần số hoạt động 16MHz Để định cấu hình đếm/định thời 2như máy tạo xung clock, bit C/T2 (T2CON.1) phải xoá bit T2OE (T2MOD.l) phải thiết lập Bit TR2 (T2CON.2) bắt dầu dừng định thời Tần số xung nhịp phụ thuộc tần số mạch dao động giá trị nạp lại ghi thu nhận định thời (RCAP2H, RCAP2L) tính theo phương trình sau: Tần số xung nhịp = Tần số mạch dao động/{4x[6553646 (RCAP2H,RCAP2L)]} Trong chế độ xung nhịp ra, định thời roll-overs không tạo ngắt Phương thức chế độ tương tự định thời sử dụng máy phát tốc độ baud Có thề đồng thời sử dụng định thời máy phát tốc độ baud máy phát xung clock Tuy nhiên ý tần số tốc độ baud xung clock không thề xác định độc lập từ thiết bị khác, chúng sử dụng RCAP2H RCAP2L Hình minh hoạ: Bộ định thời chế độ xung nhịp Ngắt AT89C55WD có tất vector : ngắt ngồi (INT0, INT1), ngắt định thời (bộ định thời 0, ) ngắt cổng nối tiếp Những ngắt hình minh họa Bảng ghi cho phép ngắt(IE) EA _ ET2 ES ET1 EX1 ET0 EX0 Bit cho phép = cho phép ngắt Bit cho phép = vơ hiệu hóa ngắt Mỗi nguồn ngắt cho phép không cho phép riêng lẻ cách thiết lập xoá ghi, chức đặc biệt IE IE chứa bit vơ hiệu hóa chung, EA, vơ hiệu hố tất ngắt trước Chú y bảng bit vị trí IE6 bổ sung Phần mềm người dùng khơng nên ghi ‘1’ tới bit vị trí đó, sử dụng sản phẩm AT89 tương lai 47 Biểu tượng Vị trí Chức EA IE.7 Vơ hiệu hóa ngắt Nếu EA=0, khơng có ngắt thừa nhận Nếu EA=1, nguồn ngắt cho phép hay vơ hiệu hóa cách thiết lập xóa bit cho phép IE.6 Dự trữ ET2 IE.5 Bit cho phép ngắt định thời ES IE.4 Bit cho phép ngắt port nối tiếp ET1 IE.3 Bit cho phép ngắt định thời EX1 IE.2 Bit cho phép ngắt ET0 IE.1 Bit cho phép ngắt định thời EX0 IE.0 Bên gián đoạn mẩu Ngắt định thời tạo vùng OR bit TF2 EXF2 ghi T2CON Không cờ xoá phần cứng phục vụ thường lệ vector hoá Trong thực tế, phục vụ thường lệ phải xác định TF2 hay EXF2 tạo ngắt bit phải xóa phần mềm Các cờ TF0, TF1 định thời định thời thiết lập S5F2 chu kì mà định thời tàn nhớ Các giá trị làm tròn mạch bên chu kì Tuy nhiên, cờ TF2 định thời lại thiết lập S2P2 làm tròn chu kì với chu kì định thời tràn Các đặc tính mạch dao động XTAL1 XTAL2 đầu vào đầu khuếch đại đảo cấu hình làm mạch dao động chíp Hoặc tinh thể thạch anh mạch cộng hưởng gốm sử dụng Để điều khiển thiết bị từ nguồn xung clock bên ngoài, XTAL2 thả (không kết nối) XTAL1 điều khiển Khơng có u cầu chu kì nhiệm vụ tín hiệu xung clock bên ngồi, để đầu vào đến mạch tạo xung clock bên chíp phải qua flip-flop chia-2, chi tiết kỹ thuật thời gian mức cao mức thấp, điện áp cực tiểu cực đại phải xem xét Chế độ nghỉ Trong chế độ nghỉ, CPU đặt vào trạng thái ngủ tất 48 ngoại vi bên chíp tích cực Chế độ điều khiển phần mềm Nội dung RAM chíp tất ghi chức đặc biệt không đổi thời gian tồn chế độ Chế độ nghỉ kết thúc ngắt dược phép Reset cứng Ta cần lưu ý chế độ nghỉ kết thúc reset cứng, chíp vi điều khiển 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 vòng chu kì thấy trước giải thuật reset mềm nắm quyền điều khiển Ở chế độ nghi phần cứng chíp cấm truy xuất RAM nội dung cho phép truy xuất chân port Để tránh khả có thao tác ghi không mong muốn đến chân port chế độ nghỉ kết thúc reset, lệnh lệnh yêu cầu chế độ nghỉ không nên lệnh ghi đến chân port đến nhớ Chế độ nguồn giảm Trong chế độ nguồn giảm, mạch dao động ngừng hoạt động lệnh yêu cầu chế độ nguồn giảm lệnh sau thực thi RAM chíp ghi chức đặc biệt trì giá trị chúng chế độ nguồn giảm kết thúc Ra khỏi chế độ nguồn giảm reset cứng ngắt phép Reset xác định ghi chức đặc biệt khơng thay đổi RAM chíp.Việc reset không nên xảy trước Vcc khôi phục lại mức điện áp bình thường phải kéo dài trạng thái tích cực chân reset đủ lâu phép mạch dao động hoạt động trở lại đạt trạng thái ổn định Bảng trạng thái chân chế độ nguồn giảm, chế độ nghỉ Chế độ Bộ nhớ chương ALE PSEN PORT0 PORT1 PORT2 trình PORT3 Nghỉ Bên Dữ liệu Dữ liệu Dữ liệu Dữ liệu Nghỉ Bên 1 Thả nôi Dữ liệu Địa Dữ liệu Nguồn giảm Bên 0 Dữ liệu Dữ liệu Dữ liệu Dữ liệu Nguồn giảm Bên 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 SST89C58 thuộc họ FlashFlex51 vi mạch điều khiển 8bit SST89C54/58 tập lệnh mạnh sử dụ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 nhớ chương trình EEPROM chíp tích hợp Phân khối SupperFlash chiếm 16/32 KB khơng gian nhớ chương trình bên khối SupperFlash chiếm giữ KB SST89C54/58 khơng gian chương trình bên 4kbyte khối SuperFlash thứ hai xếp vị trí cao hay thấp 64 KByte: ẩn đếm chương trình sử dựng liệu EEPROM độc lập Khối nhớ Flash lập trình qua tiêu chuẩn 87C5x OTP EPROM phù hợp với tiếp hợp đặc biệt vi chương trình cho thiết bị SST89C54/58 50 1.3.2.Tổ chức nhớ SST89C54/58 có vùng địa riêng biệt cho nhớ chương trình liệu Bộ nhớ chương trình Có hai khối nhớ truy cập nhanh bên SST89C54/58 Khối nhớ block có 16/32 Kbyte chiếm giữ vùng địa 0000H đến 3FFFH/7FFFH Khối nhớ truy cập nhanh thứ hai Bock có Kbyte chiếm giữ vùng địa F000H tới FFFFH 16/32 KB khối nhớ truy cập nhanh tổ chức 128/256 Sector đanh địa nhờ địa từ A15 đến A17, sector gồm 128 Byte, 4KB khối nhớ thứ chia thành Sector sector có 64 byte Khi cho phép thao tác mã bên (EA#=l), 16/32 khối nhớ truy cập nhanh máy đếm chương trình mã lệnh Hình 1.23 cho thấy tổ chức nhớ chương trình cho SST89C54/58 Hình 1.23 Tổ chức chương trình nhớ SST89C54/58 51 Khi cho phép thao tác mã bên trong(EA#=l), khối nhớ 4kbyte thứ truy cập nhanh cho mã lệnh, khối nhớ thứ ln ln tiếp cận ghi hòm thư: SFCM, SFCF, SFAL, SFAH, SFDT SFST Khi bit cấu hình hòm thư SupperFlash (SFCF[7]) SFR định địa B1H, khối 4kbyte rõ đếm chương trình Sắp xếp nhớ SST89C54/58 cho phép xếp cách đặc biệt, người sử dụng xếp nhớ Flash vào bên rãnh từ, ngăn chặn Block nhớ Flash chương trình hố Từ ngăn chặn Block chiếm giữ vùng địa chương trinh bên phải cua 8051 vị trí vector ngắt cư trú, vector ngắt khơng sẵn có Block chương trình hóa SST89C54/58 cung cấp tuỳ chọn xếp nhớ Khi 4kbyte mức thấp ánh xạ, truy nhập chương trình bên trong, địa logic bị hạn chế từ 0000H đến 0FFFH có giá trị lớn địa thành bit ‘1’, lần truy cập lại gửi tới F000H - FFFFH Block truy cập đến F000H - FFFFH Hình biểu diễn xếp lại tổ chức nhớ chương trình SST89C54/58 52 Hình 1.24 SST89C54/58 Tổ chức lại nhớ Hình 1.25 SST89C54/58 xếp lại chương trình chương trình tổ chức nhớ Bộ nhớ liệu SST89C54/58 có 256x8 bit nhớ RAM 64kbyte liệu nhớ ngồi Hình 1.26 Tổ chức ô nhớ ghi chức Flashnex51 Thanh ghi chức đặc biệt SST89C54/58 Bảng 3.4: CPU related SFRs 53 Kí hiệu Mơ tả Chỉ dẫn địa Địa bit, kí hiệu thay 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 D0H CY AC trạng chương trình SP F0 Ngăn 81H xếp trỏ RS1 RS0 OV F1 P 00H SP[7:0] 07H DPL Điểm liệu thấp 82H DLP[7:0] 00H DPH Điểm liệu cao 83H DHP[7:0] 00H IE* Cho phép ngắt A8H EA - ET2 ES0 ET1 EX1 ET0 EX0 IP* Ưu tiên ngắt B8H - - PT2 PS PCON Điều khiển nguồn 87H SM OD - - - PT1 PX1 PT0 PX0 xx000000 b GF Bảng 3B: Lập trình nhớ Flash SFRS 54 40H GF0 PD IDL 0xxx0000 b Kí hiệu Mơ tả Địa bit, kí hiệu thay chuyển hàm Chỉ dẫn địa Khởi tạo giá trị LSB SFST Tình B6H trạng Super Flash SFCF Cấu B2H VIS IAPEN - hình Super Flash SFCF Lệnh B2H FIE Super Flash SFCM Dư B5H liệu Super Flash Thanh ghi liệu SuperFlash 00H SFAL Địa B3H thấp Super Flash SuperFlash đặt ghi địa thấp 00H Địa B4H cao Super Flash SuperFlash đặt ghi địa cao SFAH SECD - Busy Flash_busy - - - - xxx00000B MAP_EN 000000xxB FCM 00H từ A7-A0(SFAL) 00H từ A15-A8(SFAH) Thanh ghi trạng thái SuperFlash (SFST) (Thanh ghi đọc) Vị trí 0B6H SECD2 SECD1 SECD0 - Busy Flash_busy - - 55 Kí hiệu Chức SECD2 Kiểm tra bit SECD1 Kiểm tra bit SECD0 Kiểm tra bit Chuyển tới bảng cho tuỳ chọn kiểm tra khóa Busy Truyền loạt chương trình hồn thành kiểm sốt vòng bit : 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 Flash_busy Hồ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 lệnh cuối cùng, bao gồm truyền loạt chương trình Thanh ghi lệnh SuperFlash (SFCM) Vị trí 0B2H FIE FCM6 FCM5 FCM4 FCM3 FCM2 FCM1 FCM0 Kí hiệu Chức FIE Flash cho phép ngắt : INT1 # hồn thành thao tác gán tín hiệu IAP INT1 # khơng cho phép ngắt ngồi : INT1 # không gán FCM[6:0] Flash thao tác lệnh 000-0001B chíp xố 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 kết hơp khác không thực hiện, dự trữ cho sử dụng tương lai Thanh ghi liệu SuperFlash (SFDT) Vị trí 0B5H Thanh ghi liệu SuperFlash 3 Thanh ghi địa SuperFlash (SFAL) Vị trí 0B3H Thanh ghi địa thấp SuperFlash Thanh ghi địa SuperFlash (SFAH) Vị trí 0B4H Thanh ghi địa cao SuperFlash Bảng 3C: thiết bị bấm SFRs WDTC Điều C0H khiển thiết bị bấm - - - WDRE WDTS WDT SWDT X0H WDTH Thiết bị 86H WDRL bấm liệu/nạp lại 00H 57 1.4 VI ĐIỀU KHIỂN AT89C2051 1.4.1 Đặc trưng AT89C2051 • Tương thích với sản phẩm họ MCS-51 • Chiếm 2k bytes nhớ flash • Hệ thống hoạt động nguồn điện 2,7v đến 6v • Thao tác miền tĩnh số:0HZ tới 24MHZ • Có hai mức đế xố chương trình • l28bytes RAM • Có 15 đường xuất nhập • Có định thời timer/counter chiếm l6bit • nguồn ngắt • kênh UART dùng dê lập trình • LED thiết bị dẫn tín hiệu trục tiếp • Trong nhớ có chứa thước so sánh tín hiệu tương tụ 1.4.2 Mơ tả AT89C2051 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 có k bytes nhớ ROM FLASH xố/1ập trình Chíp sân xuất dựa vào cơng nghệ nhớ khơng nội dung có 58 độ tích hợp cao ATMEL AT89C2051 thích hợp với lệnh chân chuẩn công nghiệp MCS-51 flash chíp cho phép nhớ chương trình lập trình lập lại hệ thống lập nhớ không nội dung qui ước Bằng cách kết hợp CPU linh hoạt bit với flash chíp mạnh đáp ứng cho ứ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 hỗ trợ hai chế độ tiết kiệm lượng Nó có chế độ chế độ nghỉ dừng CPU cho phép RAM, định thời/đếm, port nối tiếp hệ thống ngắt tiếp tục hoạt động Chế độ nguồn giảm trì nội dung RAM không cho mạch dao động cứng cấp xung clock nhằm vơ hiệu hố Các hoạt động khác chíp có reset phần cứng Cấu hình chân AT89C2051: 59 ... Khoa CNTT - Đại học Thái Nguyên CHƯƠNG I HỌ VI ĐIỂU KHIỂN 80 51 1 .1 GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MCS- 51 (89C 51) : 1. 1 .1 Giới thiệu họ MCS- 51 * MCS họ IC (integrated circuit) vi điều khiển (Microcontroller)... 0 ,16 % 12 00 12 MHZ - 26 (E6H) 12 02 0 ,16 % 9600 11 ,059 - (FDH) 9600 2400 11 ,059 - 12 (F4H) 2400 12 00 11 ,059 - 24 (E8H) 12 00 7% 1. 1.6 TỔ CHỨC NGẮT CỦA MCS 51 - Có nguồn ngắt MCS 51: ngắt ngoài, ngắt... (Microcontroller) hãng Intel sản xuất Các IC tiêu biểu cho họ MCS- 51 là: 80 51, 80 31, 89C 51, 8920 51, 87 51 Vi c xử lý Byte toán số học cấu trúc liệu thực nhiều chê độ truy xuất liệu nhanh RAM nội Tập lệnh