5. Phƣơng phỏp nghiờn cứu
1.2.4 Bộ nhớ SRAM
Bộ nhớ SRAM cú trờn hầu hết cỏc bộ xử lý cú giỏ thành cao trong họ vi điều khiển AVR. Dung lượng của bộ nhớ SRAM thay đổ từ 128 byte đến 4Kb. Bộ nhớ SRAM được truy nhập bằng cỏch sử dụng nhiều lệnh truy nhập dữ liệu giỏn tiếp hoặc trực tiếp. Bộ nhớ SRAM cũng được sử dụng cho ngăn xếp. Thời gian truy nhập bộ nhớ SRAM bằng 2 chu kỳ đồng hồ, như được minh hoạ trong hỡnh 3-6.
ldi r30, $60 clr r31 st z+, temp
; init the pointer into SRAM in 2313 ; 60bex is start of SRAM in 2313
; now Z pointer is pointing to the SRAM ; store a value in register temp to SRAM ; increment the address
Tương tự, để đọc bộ nhớ SRAM, đoạn mó sau đõy được sử dụng:
ldi r30, $60 ; khởi tạo con trỏ trong SRAM thành 60hex clr r31 ; khởi tạo con trỏ trong SRAM thành 60hex id temp, Z+ ; 60 hex là chỗ start của SRAM in 2313 DOW
con trỏ Z đang trỏ đến SRAM nạp một giỏ trị trong thanh ghi emp từ SRAM và tăng địa chỉ thờm 1.
GIAO TIẾP VỚI SRAM NGOÀI.
Trờn cỏc bộ điểu khiển AVR cỡ lớn đều cú khả năng kết nối với bộ nhở SRAM ở bờn ngoài. Khả năng này được minh hoạ trờn hỡnh 1.9. Để cho phộp truy nhập bộ nhớ SRAM ngoài trờn PORTA và PORTC của cỏc bộ điều khiển cũng như tớn hiệu ALE dựng cho việc phõn kờnh (demultiplexung) địa chỉ/ dữ liệu, bit SRE( bit 7) trong thanh ghi MCUCR được đặt thành “1”. Thời gian truy nhập mặc định đối với quỏ trỡnh truy nhập lờn SRAM ngoài là bằng 3 chu kỳ đồng hồ. Thời gian này cú thể làm tăng lờn 4 chu kỳ đồng hồ bằng cỏch thiết lập bit SRW (bit 6) trong thanh ghi MCUCR. Hỡnh 1.10 minh hoạ sự truy nhập 3 chu kỳ thụng thường, cũn hỡnh 1.11 minh hoạ chu trỡnh truy nhập mở rộng với một trạng thỏi chờ bổ sung thờm.
Hỡnh 1.9: Kết nối bộ nhớ SRAM ngoài với bộ điều khiển AVR