Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
419,55 KB
Nội dung
Bộ điều khiển MCU Trong phần trình bày vấn đề sau : Bootloader : Chế độ đọc lúc nạp Sleep - Power down : Chế độ ngủ chế độ giảm công suất Chế độ hoạt động - trạng thái làm việc ALU, trỏ SP Chế độ hoạt động đặc biệt Timer/Counter qua ghi điều khiển ASSR Chế độ Reset Timer/Counter Timer/Counter qua ghi điều khiển SFIOR Chế độ kiểm tra lỗi chip On-chip Debug Chế độ ngắt MCU Chế độ ghi SPMCR http://www.ebook.edu.vn Bộ điều khiển MCU 1.3.1 ALU – Arithmetic Logic Unit - Đơn vị xử lý số học logic AVR ALU hiệu cao tác động trựuc tiếp tới 32 ghi đa Trong vịng chu kỳ, tốn hạng số học thực ghi đa ghi toán hạng tức thời Các toán tử ALU chia làm loại chính: Số học, logic, xử lý bit Một số phép xử lý kiến trúc cung cấp nhân số có dấu khơng có dấu dạng phân số 1.3.2 Status Register – Thanh ghi trạng thái Thanh ghi trạng thái chứa thông tin kết thưc hầu hết lệnh số học Các thơng tin sử dụng để điều khiển chương trình Chú ý ghi trạng thái cập nhật sau tất hoạt động ALU Trong nhiều trường hợp, điều bỏ cần thiết sử dụng câu lệnh so sánh chuyên dụng, kết nhanh đoạn chương trình ngắn gọn Thanh ghi trạng thái khơng tự động lưu trữ nhập vào môt thường trình ngắt lưu trữ trở tự ngắt Điều phải quản lý phần mềm Thanh ghi trạng thái AVR – SREG - định nghĩa sau: • Bit – I: Global Interrupt Enable- bit cho phép ngắt toàn cục Bit cho phép ngắt toàn cục phải đặt ngắt hoạt động Điều khiển hoạt động ngắt riêng biệt thực ghi điều khiển riêng biệt Nếu ghi cho phép ngắt tồn cục xóa, khơng có ngắt riêng biệt hoạt động Bit I xóa phần cứng sau ngắt xảy đặt lệnh RETI phép ngắt hoạt động Bit I đặt xóa câu lệnh SEI CLI ứng dụng • Bit – T: Bit Copy Storage Các câu lệnh copy bit BLD (Bit LoaD) BST (Bit STore) sử dụng bit T đích nguồn cho bit hoạt động bit từ ghi tệp ghi copy vào bit T lệnh BST bit T copy vào bit ghi tệp ghi lệng BLD http://www.ebook.edu.vn Bộ điều khiển MCU • Bit – H: Half Carry Flag Cờ nhớ nửa dùng cho toàn hạng hạng nửa byte phép toán số học Cờ H sử dụng phép toán số học với số BDC • Bit – S: Sign Bit, S = N ⊕ V – bit dấu Bit S phép XOR cờ âm cờ tràn V • Bit – V: Two’s Complement Overflow Flag – cờ tràn mã bù Cờ tràn V hỗ trợ phép tốn số bù • Bit – N: Negative Flag – cờ âm Cờ âm N hiển thị kết âm phép tốn logic số học • Bit – Z: Zero Flag Cờ Zero Z hiển thị kết phép toán logic số học • Bit – C: Carry Flag Cờ nhớ C hiển thị số nhớ phép toán logic số học http://www.ebook.edu.vn Bộ điều khiển MCU 1.3.4 Stack Pointer – ngăn xếp Stack thường sử dụng để chứa liệu tạm thời, cho việc lưu trữ biến địa phương cho việc lưu trữ địa trở sau gọi thường trình ngắt Thanh ghi trỏ thường trỏ tới đỉnh stack Chú ý stack thực tăng thêm từ địa cao đến địa thấp, điều nói lên thực lệnh PUSH trỏ tự động giảm Con trỏ trỏ đến vùng ngăn xếp liệu SRAM Không gian ngăn xếp SRAM phải định nghĩa chương trình trước thường trình ngắt thực Con trỏ ngăn xếp phải set để trỏ tới địa $0100 Con trỏ ngăn xếp giảm liệu cất vào ngăn xếp giảm cất địa trở thường trình ngắt SP tăng lên liệu lấy AVR SP thực với ghi bit không gian I/O Số bit thực tế sử dụng tuỳ thuộc Chú ý không gian liệu số thực thi kiến trúc AVR nhỏ, SPL cần Trong trường hợp SPH không sử dụng Hình 1.6 Sơ đồ ghi trỏ 1.3.5 Reset and Interrupt Handling - điều khiển ngắt reset AVR cung cấp vài nguồn ngắt khác Các ngắt vector reset riêng biệt có vector chương trình riêng biệt nằm khơng gian nhớ chương trình Tất ngắt định bit cho phép riêng biệt mà bit phải ghi mức logic với bit cho phép ngắt toàn cục ghi trạng thái phép ngắt Phụ thuộc vào giá trị PC, ngắt phải tự động loại bỏ bit Boot Lock - BLB02 or BLB12 - lập trình Yếu tố cải thiện độ an tồn phần mềm Địa thấp không gian nhớ chương trình mặc định Reset Interrupt Vectors Bảng vector ngắt – bảng 3.1 http://www.ebook.edu.vn Bộ điều khiển MCU Bảng 1.1 Bảng vector ngắt reset Khi địa nhỏ thứ tự ưu tiên cao Các vector ngắt chuyển sang đầu vùng Boot Flash cách đặt bit IVSEL ghi điều khiển ngắt (MCUCR) Reset Vector chuyển sang đầu vùng Boot Flash cách lập trình BOOTRST fuse Khi ngắt xảy ra, bit I (bit cho phép ngắt tồn cục) xóa tất ngắt loại bỏ Phần mềm sử dụng ghi mức logic vào bit I phép ngắt Tất ngắt kích hoạt ngắt thường trình ngắt Bit I đặt tự động trở từ lệnh RETI ngắt http://www.ebook.edu.vn Bộ điều khiển MCU Có loại ngắt + Loại thứ gây kiện mà đặt cờ ngắt Đối với loại ngắt này, PC hướng tới Interrupt Vector tương ứng để thực thường trình phục vụ ngắt phần cứng xoá cờ ngắt tương ứng Các cờ ngắt ghi mức logic vào vị trí bit cờ để xố Nếu điều kiện ngắt xảy bit cho phép ngắt tương ứng bị xố, cờ ngắt đặt nhớ ngắt thực hiện, cờ ngắt xoá phần mềm Tương tự nhiều điều kiện ngắt xảy cờ cho phép ngắt toàn cục bị xố cờ ngắt tương ứng đặt nhớ cờ cho phép ngắt tồn cục đặt thực theo thứ tự ưu tiên + Loại ngắt thứ kích hoạt kéo dài thời gian điều kiện ngắt tồn Các ngắt không cần thiết phải có cờ ngắt Nếu điều kiện ngắt trước ngắt cho phép, ngắt khơng xảy Khi AVR khỏi từ ngắt, ln trở chương trình thực nhiều lệnh trước ngắt cịn đợi phục vụ Chú ý ghi trạng thái không tự động lưu trữ nhập vào thường trình ngắt, khơng lưu trữ lại trở từ thường trình ngắt Điều phải thực phần mềm Khi sử dụng câu lệnh CLI để cấm ngắt, ngắt khơng tác động Khơng có ngắt thực sau thực lệnh CLI, chí xảy lúc với lệnh CLI Thời gian đáp ứng ngắt Việc thực ngắt chu kỳ đồng hồ với tất ngắt Sau chu kỳ đồng hồ, địa vector chương trình tương ứng với thường trình điều khiển ngắt thực khởi tạo Trong thời gian chu kỳ này, PC cất vào ngăn xếp Vector thường lệnh nhảy đến thường trình ngắt lệnh nhảy chu kỳ đồng hồ Nếu ngắt xảy thực lệnh nhiều chu kỳ lệnh hồn thành trước ngắt phục vụ Nếu ngắt xảy MCU chế độ ngủ thời gian đáp ứng ngắt tăng thêm chu kỳ Thời gian tăng thêm thời gian để khởi động lại từ chế độ ngủ Sự trở từ thường trình điều khiển ngắt chu kỳ xung nhịp Trong thời gian chu kỳ này, PC (2 bytes) lấy từ ngăn xếp, SP tăng lên 2, bit I SREG đặt http://www.ebook.edu.vn Bộ điều khiển MCU Chế độ hoạt động trạng thái làm việc ALU trỏ SP 1.Status Register (SREG) Đây ghi trạng thái có bit lưu trữ trạng thái ALU sau phép tính số học logic C: Carry Flag ;cờ nhớ (Nếu phép tốn có nhớ cờ thiết lập) Z: Zero Flag ;Cờ zero (Nếu kết phép toán 0) N: Negative Flag (Nếu kết phép toán âm) V: Two’s complement overflow indicator (Cờ thiết lập tràn số bù 2) V, For signed tests (S=N XOR V) S: N H: Half Carry Flag (Được sử dụng số toán hạng rõ sau) T: Transfer bit used by BLD and BST instructions(Được sử dụng làm nơi chung gian lệnh BLD,BST) I: Global Interrupt Enable/Disable Flag (Đây bit cho phép toàn cục ngắt.Nếu bit trang thái logic khơng có ngắt phục vụ.) 2.SP Là ghi 16 bit xem hai ghi chức đặc biệt bit Có địa ghi chức đặc biệt $3E (Trong nhớ RAM $5E) Có nhiệm vụ trỏ tới vùng nhớ RAM chứa ngăn xếp Khi chương trình phục vu ngắt chương trình trỏ PC lưu vào ngăn xếp trỏ ngăn xếp giảm hai vị trí Và trỏ ngăn xếp giảm thực lệnh push Ngược lại thực lệnh POP trỏ ngăn xếp tăng thực lệnh RET RETI trỏ ngăn xếp tăng Như trỏ ngăn xếp cần chương trình đặt trước giá trị khởi tạo ngăn xếp trước chương trình gọi ngắt cho phép phục vụ Và giá trị ngăn xếp phải lơn hợc 60H (0x60) 5FH trỏ lại vùng ghi http://www.ebook.edu.vn Bộ điều khiển MCU 3.Ngắt lập trình ngắt ( trỏ SP - đếm chương trình PC - ngắt ) Ngắt chế cho phép thiết bị ngoại vi báo cho CPU biết tình trạng sẵn xàng cho đổi liệu mình.Ví dụ:Khi truyền nhận UART nhận byte báo cho CPU biết thơng qua cờ RXC,hợc truyền byte cờ TX thiết lập… Phục vụ ngắt: Nếu ngắt cho phép thực thì: Khi có tín hiệu báo ngắt CPU tạm dừng công việc đạng thực lại lưu vị trí thực hiên chương trình (con trỏ PC) vào ngăn xếp sau trỏ tới vector phuc vụ ngắt thức chương trình phục vụ ngắt chơ tới gặp lệnh RETI (return from interrup) CPU lại lấy PC từ ngăn xếp tiếp tục thực chương trình mà trước có ngăt thực Trong trường hợp mà có nhiều ngắt yêu cầu lúc CPU lưu cờ báo ngắt lại thực ngắt theo mức ưu tiên.Trong thực ngắt mà xuất ngắt xảy hai trường hợp.Trường hớp ngắt có mức ưu tiên cao phục vụ Cịn mà có mức ưu tiên thấp bị bỏ qua Trong tài liệu hãng sản xuất khơng thấy nói tới nhớ ngăn xếp?vâng vùng SRAM từ địa 0x60 trở lên Để truy nhập vào SRAM thông thường ta dùng trỏ X,Y,Z để truy nhập vào SRAM theo kiểu ngăn xếp ta dùng trỏ SP.Con trỏ ghi 16 bit truy nhập hai ghi bit chung có địa :SPL :0x3D/0x5D(IO/SRAM) SPH:0x3E/0x5E Khi chương trình phục vu ngắt chương trình trỏ PC lưu vào ngăn xếp trỏ ngăng xếp giảm hai vị trí.Và trỏ ngăn xếp giảm thực lệnh push Ngược lại thực lệnh POP trỏ ngăn xếp tăng thực lệnh RET RETI trỏ ngăn xếp tăng Như trỏ ngăn xếp cần chương trình đặt trước giá trị khởi tạo ngăn xếp trước chương trình gọi ngắt cho phép phục vụ.Và giá trị ngăn xếp phải lơn 60H (0x60) 5FH trỏ lại vùng ghi Để thay đổi giá trị SP ta có hai cách: ;Su dung dia chi truc tiep cac I/O Ldi R17,0x00 OUT SPH,R17 ;nap gia tri 0x00 vao ghi SPH Ldi R17,0xff OUT SPL ;nap gia tri 0xff vao ghi SPL ;end ;su dung dia chi cua chung gian tiep qua SRAM Ldi R17,0x00 STS 0x5E,R17 Ldi R17,0xFF STS 0x5D,R17 http://www.ebook.edu.vn Bộ điều khiển MCU ;end Xung nhịp hệ thống lựa chọn xung nhịp http://www.ebook.edu.vn Bộ điều khiển MCU 1.1 Hệ thống xung nhịp sử dụng chúng Tất xung nhịp cần phải khơng kích hoạt thời điểm Để giảm tiêu thụ lượng, xung nhịp dùng cho modul không sử dụng bị treo chế độ ngủ khác Hình 1.9 Sơ đồ phân phối xung nhịp Xung nhịp cho CPU – clkCPU Xung nhịp CPU gửi đến vùng hệ thống có liên quan tới hoạt động phận AVR Ví dụ tệp ghi, ghi trạng thái vùng nhớ để chứa trỏ stack Xung nhịp I/O – clkI/O http://www.ebook.edu.vn Bộ điều khiển MCU Xung nhịp I/O sử dụng cho đa số module I/O, đếm / định thời, SPI, USART xung nhịp I/O sử dụng cho module ngắt ngoài, ý số ngắt ngồi tìm thấy logic đồng bộ, cho phép ngắt tìm thấy đồng hồ I/O bị treo Cũng phải ý việc tìm điều kiện khởi động modul úI thực không đồng clkI/O bị treo, địa TWI nhận tất chế độ ngủ Xung nhịp Flash – clkFLASH clkFLASH điều khiển hoạt động giao diện Flash clkFLASH thường xuyên đồng thời với xung nhịp CPU Asynchronous Timer Clock – clkASY Asynchronous Timer clock cho phép Asynchronous Timer/Counter chạy trực tiếp từ xung nhịp bên thạch anh tạo xung 32 kHz bên Xung nhịp cho phép sử dụng Timer/Counter đếm thời gian thực, chí thiết bị chế độ ngủ Xung nhịp ADC – clkADC Bộ chuyển đổi ADC cung cấp với xung nhịp khác Điều cho phép treo xung nhịp CPU xung nhịp I/O để giảm nhiễu gây mạch số Điều cho kết chuyển đổi ADC xác 1.2 Các nguồn tạo xung nhịp Bộ vi điều khiển có nguồn đồng hồ tuỳ chọn sau đây, lựa chọn bit Flash Fuse bảng 3.2.Tín hiệu xung nhịp từ nguồn chọn lấy từ phát xung nhịp AVR, đến module thích hợp http://www.ebook.edu.vn Bộ điều khiển MCU Bảng 1.2 Các nguồn tạo xung nhịp cách lựa chọn Nguồn xung nhịp mặc định Bộ tạo dao động RC bên với tần số 8.0MHz với cầu chì CKDIV8 đặt cho ta xung nhịp 1.0MHz Thời gian khởi động đặt tối đa chu kỳ time-out kích hoạt (CKSEL = “0010”, SUT = “10” CKDIV8=”0”) Sự cài đặt mặc định đảm bảo tất sử dụng tạo nên nguồn đồng hồ mong muốn sử dụng giao diện lập trình có Quản lý lượng chế độ ngủ Các chế độ ngủ kích họat ứng dụng để tắt module khơng sử dụng MCU, lượng tiết kiệm AVR cung cấp chế độ ngủ khác cho phép sử dụng hợp lý tiêu thụ lượng ứng với yêu cầu ứng dụng Để nhập vào chế độ ngủ, bit SE MCUCR phải ghi câu lệnh SLEEP phải chạy Các bit SM2, SM1, SM0 ghi MCUCR lựa chọn chế độ ngủ (nhàn rỗi, giảm nhiễu http://www.ebook.edu.vn Bộ điều khiển MCU ADC, giảm lượng, tiết kiệm lượng, chờ) Xem tổng kết bảng 3.3 Bảng 1.3 Lựa chọn chế độ ngủ Nếu xảy ngắt MCU ngủ MCU thức dậy MCU treo thêm vịng chu kỳ để khởi động, thực thường trình ngắt, dành lại việc thực lệnh SLEEP Nội dung tệp ghi SRAM nguyên thiết bị tỉnh dậy từ trạng thái ngủ Nếu Reset xảy ngủ, MCU tỉnh dậy thực từ vector reset Thanh ghi điều khiển MCU –MCUCR http://www.ebook.edu.vn Bộ điều khiển MCU Thanh ghi trạng thái điều khiển MCU chứa bit điều khiển để quản lý lượng • Bit – Res: Dự phịng • Bits – SM2 0: Lựa chọn chế độ ngủ 3.Điều khiển thống Reset 3.1 Resetting AVR Trong reset, tất ghi I/O đặt giá trị khởi tạo nó, chương trình bắt đầu hoạt động từ vectơ reset Câu lệnh đặt vectơ reset phải RJMP – nhảy liên quan - tới thường trình kiểm sốt reset Nếu chương trình khơng kích hoạt nguồn ngắt, vectơ ngắt khơng sử dụng, mã chương trình bình thường đặt vị trí Điều trường hợp vector reset nằm vùng ứng dụng vector ngắt nằm vùng boot vice versa S Hình 3.10 ligic reset Bảng 3.4 mô tả thông số điện http://www.ebook.edu.vn Bộ điều khiển MCU mạch reset Bảng 1.4 Đặc tính Reset Các nguồn Reset ATmega88 có nguồn Reset: * Power-on Reset: MCU reset nguồn điện áp cung cấp mức ngưỡng Power-on Reset * Reset bên ngoài: MCU reset mức thấp diện chân RESET thời gian dài xung nhỏ * Watchdog Reset: MCU reset giai đoạn Watchdog Timer kết thúc chế độ Watchdog system reset cho phép * Brown-out Reset: MCU reset nguồn điện áp VCC mức ngưỡng Brown-out Reset (VBOT) đầu dò Brown-out cho phép http://www.ebook.edu.vn Bộ điều khiển MCU Hình 1.10 Logic reset Thanh ghi trạng thái điều khiển MCU – MCUCSR Thanh ghi trạng thái điều khiển MCU cung cấp thông tin mà dựa vào nguồn reset gây reset MCU • Bit – Res: Dự phịng • Bit – WDRF: Cờ reset hệ thống Watchdog • Bit – BORF: Cờ reset Brown-out • Bit – EXTRF: Cờ reset từ bên ngồi • Bit – PORF: Cờ reset Power-on http://www.ebook.edu.vn Bộ điều khiển MCU 3.2 Internal Voltage Reference- tham chiếu điện áp bên Sự tham chiếu sử dụng cho việc thăm dò Brown-out, sử dụng đầu vào so sánh tương tự ADC 3.3 Watchdog Timer Có đặc điểm sau: • Được cung cấp xung nhịp từ tạo dao động chip • Có chế độ hoạt động Ngắt Reset hệ thống Ngắt reset hệ thống • Chu kỳ time-out lựa chon từ 6ms đến 8s • Cầu chì phần cứng Watchdog ln bật Hình 1.11 Watchdog Timer Thanh ghi điều khiển Watchdog Timer http://www.ebook.edu.vn Bộ điều khiển MCU • Bits 7-WDIF: Cờ ngắt Watchdog • Bit – WDIE: Kích hoạt Watchdog • Bit – WDCE: Kích hoạt thay đổi Watchdog • Bits 5,2 – WDP3 0, WDP1, WDP0: Chọn Watchdog Timer với tỷ lệ 2, Interrupt Vectors ATmega88 Địa vector ngắt Reset – bảng 3.6 Bảng vector ngắt – bảng 3.7 Bảng 1.6 Địa vector ngắt Reset Di chuyển ngắt vùng chương trình ưng dụng Boot Thanh ghi điều khiển MCU điều khiển vị trí bảng vector ngắt Thanh ghi điều khiển ngắt – MCUCR • Bit – IVSEL: Lựa chọn vector ngắt • Bit – IVCE: Cho phép thay đổi vector ngắt http://www.ebook.edu.vn Bộ điều khiển MCU Bảng 1.7 Các vector ngắt Reset 4.1 Các ngắt ngồi Các ngắt ngồi kích hoạt chân INT0 INT1 chân PCINT23 Cần phải ý rằng, cho phép, ngắt kích hoạt chí chân INT0, INT1 INT23 cấu chân Yếu tố cung cấp cho cách để sinh ngắt phần mềm Ngắt PC12 kích hoạt số chân phép PCINT23 16 chốt Ngắt PC11 kích hoạt số chân phép PCINT14 chốt Ngắt PC10 kích hoạt số chân phép PCINT7 chốt Các ghi PCMSK0, PCMSK1 PCMSK3 điều khiển chân góp phần tạo nên ngắt thay đổi chân Các ngắt thay đổi chân từ PCINT23 nhận cách đồng Điều gợi ý ngắt sử dụng cho việc đánh thức phần chế độ ngủ sâu chế độ nhàn dỗi Các ngắt INT1, INT0 kích hoạt xườn lên xườn xuống mức thấp Điều điều khiển ghi A-EICRA Khi ngắt http://www.ebook.edu.vn Bộ điều khiển MCU phép hồt động cấu hình để kích hoạt theo mức, ngắt sé kích thời gian chừng chân giữ mức thấp 4.1.1 Sơ đồ thời gian ngắt thay đổi chân Hình 1.12 Giản đồ thời gian ngắt thay đổi chân 4.1.2 Thanh ghi điều khiển ngắt A - EICRA 4.1.3 Thanh ghi mặt nạ ngắt - EIMSK 4.1.4 Thanh ghi cờ ngắt - EIFR http://www.ebook.edu.vn Bộ điều khiển MCU 4.1.5 Thanh ghi điều khiển ngắt thay đổi chân - PCICR 4.1.6 Thanh ghi mặt nạ ngắt thay đổi chân – PCMSK2 4.1.7 Thanh ghi mặt nạ ngắt thay đổi chân – PCMSK1 4.1.8 Thanh ghi mặt nạ ngắt thay đổi chân – PCMSK0 http://www.ebook.edu.vn Bộ điều khiển MCU 1.3.19 Hệ thống gỡ lỗi On-chip debugWARE Các đặc trưng: • Điều khiển hồn tồn dịng chương trình • Hoạt động với thời gian thực • Hệ thống cấu hình tự động • Hoạt động tốc độ cao • Lập trình nhớ cố định Hệ thống gỡ lỗi On-chip debugWARE sử dụng dây, giao diện hướng để điều khiển dịng chương trình, thực câu lênh AVR Cpu lập trình nhớ cố định khác 1.3.20 Hỗ trợ Boot Loader– Read-While-Write SelfProgramming Hỗ trợ nạp chương trình boot cung cấp kỹ thuật tự lập trình Read-While-Write thực cho việc downloading uploading code chương trình MCU Yếu tố cho phép ứng dụng linh hoạt phần mềm cập nhật điều khiển MCU sử dụng chương trình Boot Loader Chương trình Boot Loader sử dụng giao diện liệu có giao thức bổ trợ để đọc mã ghi chương trình mã vào nhớ Flash, đọc mã từ nhớ chương trình Mã chương trình bên vùng Boot Loader có khả ghi vào Flash khối, bao gồm nhớ Boot Loader Do Boot Loader tự thay đổi, tự xố mã khơng cần đến Kích thước nhớ Boot Loader cấu hình với cầu chì bit Boot Lock tách biệt đặt cách độc lập Điều cho người sử dụng linh hoạt đồng để lựa chọn mức độ bảo vệ khác Các đặc trưng: • Tự - lập trình Read-While-Write • Kích thước nhớ Boot linh động • An ninh cao (các bit khoá Boot riêng biệt cho bảo vệ cách linh hoạt) • Cầu chì riêng biệt để lực chọn Reset Vector • Optimized Page (1) Size • Code Efficient Algorithm • Hỗ trợ Read-Modify-Write hiệu http://www.ebook.edu.vn Bộ điều khiển MCU Với tính nêu, chế độ nghỉ (Idle) CPU cho phép truyền tin nối tiếp đồng USART, giao tiếp dây, chuyển đổi A/D, SRAM, đếm định thời, cổng SPI hệ thống ngắt hoạt động Chế độ Power-down lưu giữ nội dung ghi làm đông lạnh tạo dao động, thoát khỏi chức chip có ngắt ngồi reset phần cứng Chế độ Power-save đồng hồ đồng tiếp tục chạy cho phép chương trình sử dụng giữ đồng thời gian thiết bị lại ngủ Chế độ ADC Noise Reduction dừng CPU tất thiết bị lại ngoại trừ đồng hồ đồng ADC, tối thiểu hoá switching noise ADC hoạt động Trong chế độ standby, tạo dao động (thuỷ tinh thể/bộ cộng hưởng) chạy thiết bị lại ngủ Các điều cho phép vi điều khiển khởi động nhanh chế độ tiêu thụ công suất thấp Thiết bị sản xuất sử dụng công nghệ nhớ cố định mật độ cao Atmel Bộ nhớ On-chip ISP Flash cho phép lập trình lại vào hệ thống qua giao diện SPI lập trình nhớ cố đinh truyền thống chương trình On-chip Boot chạy lõi AVR Chương trình boot sử dụng giao điện để download chương trình ứng dụng nhớ Flash ứng dụng Phần mềm vùng Boot Flash tiếp tục chạy vùng Application Flash cập nhật, cung cấp thao tác Read-While-Write thực Bằng việc kết hợp 8-bit RISC CPU với In-System Self-Programmable Flash nguyên vẹn chip Atmel Atmega88 vi điều khiển mạnh cung cấp giải pháp có tính linh động cao, giá thành rẻ cho nhiều ứng dụng điều khiển nhúng Atmega88 AVR hỗ trợ chương trình đầy đủ tool để phát triển hệ thống, báo gồm: Bộ biên dịch C, macro assemblers, program debugger/simulators, in-circuit emulators evaluation kits http://www.ebook.edu.vn Bộ điều khiển MCU http://www.ebook.edu.vn ... Nếu Reset xảy ngủ, MCU tỉnh dậy thực từ vector reset Thanh ghi điều khiển MCU –MCUCR http://www.ebook.edu.vn Bộ điều khiển MCU Thanh ghi trạng thái điều khiển MCU chứa bit điều khiển để quản lý... MCU reset nguồn điện áp VCC mức ngưỡng Brown-out Reset (VBOT) đầu dò Brown-out cho phép http://www.ebook.edu.vn Bộ điều khiển MCU Hình 1.10 Logic reset Thanh ghi trạng thái điều khiển MCU – MCUCSR... ghi điều khiển MCU điều khiển vị trí bảng vector ngắt Thanh ghi điều khiển ngắt – MCUCR • Bit – IVSEL: Lựa chọn vector ngắt • Bit – IVCE: Cho phép thay đổi vector ngắt http://www.ebook.edu.vn Bộ