1. Trang chủ
  2. » Luận Văn - Báo Cáo

tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535

202 403 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 202
Dung lượng 3,5 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

b Thiết bị hiển thị dữ liệu : Đối với các loại dữ liệu được hiển thị dưới dạng số thì giải pháp tối ưu là sử dụng các LED 7 thanh do loại thiết bị hiển thị này có giá thành tương đối rẻ.

Trang 1

LỜI NÓI ĐẦU

Ngày này, việc ứng dụng máy tính vào các kỹ thuật đo lường và điều khiểnkhông còn mới vì khi các thiết bị, hệ thống đo lường và điều khiển được ghépnối với máy tính sẽ có thời gian thu thập và xử lý dữ liệu ngắn trong khi mức độchính xác vẫn được đảm bảo, nhưng điều đáng quan tâm hơn cả là khả năng tựđộng hoá trong việc thu thập và xử lý dữ liệu Chính vì điều này làm cho máytính được ứng dụng trong hầu hết vào các lĩnh vực trong cuộc sống hàng ngàyđặc biệt là trong lĩnh vực công nghiệp

Một bước tiến quan trọng trong kỹ thuật vi xử lý là sự ra đời của các bộ vi

xử lý kỹ thuật số Đây là một vi mạch điện tử có mật độ tích hợp cao bao gồmrất nhiều các mạch số có khả năng nhận, xử lý và xuất dữ liệu Đặc biệt là quátrình xử lý dữ liệu được thực hiện theo một chương trình là một tập hợp các lệnh

từ bên ngoài mà người sử dụng có thể thay đổi dễ dàng tùy thuộc vào từng ứngdụng Do đó một bộ vi xử lý có thể thực hiện được rất nhiều các yêu cầu điềukhiển khác nhau tuỳ thuộc vào nhu cầu sử dụng

Sự ra đời của kỹ thuật vi xử lý là sự kết hợp giữa kỹ thuật phần cứng vàphần mềm đã làm cho hoạt động của các mạch điện tử trở nên mềm dẻo hơn vớinhững phần mềm rất linh hoạt mà người sử dụng có thể sửa chữa, thay đổi hoặc

bổ sung làm cho ứng dụng ngày càng trở nên hoàn thiện mà không cần phải thiết

kế lại toàn bộ ứng dụng

Trong đồ án này, em sử dụng vi mạch điều khiển AT90S8535 của hãngAtmel để thiết kế một mạch đo nhiệt độ đơn giản Đây là một bộ vi xử lý 8 bitnăng lượng thấp (theo kiểu chíp CMOS) trên cơ sở cấu trúc RICS của hãngAtmel, tốc độ xử lý dữ liệu của IC AT90S8535 rất cao (xấp xỉ 8 MISP tại tần số8MHz) cho phép hệ thống có thể được thiết kế tối ưu làm tăng tốc độ xử lý Do

đó, nó cung cấp khả năng linh hoạt rất cao trong các ứng dụng nhúng Vì vậy,

Trang 2

việc tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535 có thểgiúp chúng ta sử dụng vi mạch điều khiển này cho các ứng dụng cần thiết

Em xin chân thành cảm ơn thầy cô đã tận tình hướng dẫn để em hoàn thành

đồ án này Tuy nhiên, do trình độ còn nhiều hạn chế nên đồ án không thể tránhkhỏi những thiếu sót, vì vậy em rất mong được sự chỉ bảo của các thầy cô cũngnhư của những người đi trước trong lĩnh vực này để đồ án của em hoàn thiệnhơn qua đó em có thể xây dựng được những ứng dụng trong thực tế

Trang 3

CHƯƠNG INHIỆM VỤ VÀ PHƯƠNG HƯỚNG THỰC HIỆN1.1 Nhiệm vụ của đồ án.

Từ mục đích tổng quát của đề tài là thiết kế và xây dựng một hệ thống đonhiệt độ đơn giản, có thể phân tách ra thành các nhiệm vụ chính cần thực hiệnnhư sau:

 Thiết kế và xây dựng hệ thống ghép nối vi điều khiển (µC)AT90S8535 với module LCD (4x20 character), keypad (16 keys), cảm biếnnhiệt LM335 Ngoài ra hệ thống còn phải có khả năng giao tiếp với máytính (PC) qua cổng RS 232

Hình 1.1 : Sơ đồ tổng thể của hệ thống cần thiết kế

 Thiết kế và xây dựng phần mềm điều khiển µC để thu thập dữ liệu từcảm biến nhiệt nhiệt LM335, từ keypad hoặc từ PC Xử lý dữ liệu nhậnđược để hiển thị trên LCD hoặc truyền sang PC

 Xây dựng phần mềm trên PC để có thể giao tiếp được với µC quacổng RS 232

1.2 Phân tích nhiệm vụ

LCD display

KeyPad

16

L335

µC + I/O port

PC

RS 232

Trang 4

Để có thể thiết kế và xây dựng được hệ thống như trên cần phải thực hiệncác bước sau :

 Nghiên cứu và tìm hiểu bộ vi xử lý AT90S8535

 Tìm hiểu sự hoạt động của module LCD và cảm biến nhiệt LM 335

 Tìm hiểu sự hoạt động và phương pháp mã hoá keypad để có thể ghépnối với µC

 Tìm hiểu phương pháp truyền thông sử dụng chuẩn RS 232

 Thiết kế sơ đồ mạch nối ghép giữa µC với LCD, keypad, IC LM335

và giữa µC với máy tính thông qua cổng RS 232

 Lập trình phần mềm nạp cho µC để thực hiện các kết nối trên

 Viết phần mềm trên PC để giao tiếp với µC qua cổng RS 232

 Lắp giáp mạch đã thiết kế, chạy kiểm thử và đánh giá kết quả

 Viết báo cáo tốt nghiệp

1.3 Phương hướng thực hiện

1.3.1 Lựa chọn thiết bị

a) Lựa chọn vi điều khiển :

Trong thực tế có rất nhiều các họ vi xử lý khác nhau có thể sử dụng đượctrong ứng dụng này như họ vi điều khiển 8051 của Intel, 68hC11 của Motorolahay họ vi điều khiển 8515 của ATMEL Tuy nhiên, trong đồ án sử dụng bộ vi

xử lý AT90S8535 của ATMEL, do đây là một sản phẩm mới của hãng ATMELnên việc tìm hiểu nó sẽ đem lại rất nhiều lợi ích trong việc thiết kế các ứng dụng

đo lường và điều khiển Về mặt cấu tạo nó cũng tương tự như bộ vi xử lýAT90S8515 đã có từ khá lâu với 4 cổng I/O lập trình được Nhưng về mặt công

Trang 5

dụng thì bộ vi xử lý AT90S8535 được tích hợp nhiều chức năng hơn so với bộ

vi xử lý AT90S8515, đặc biệt trên µC AT90S8535 được tích hợp một bộ ADCcho phép mỗi chân của port A được sử dụng là đầu vào cho bộ ADC, làm choviệc sử dụng µC AT90S8535 trong các ứng dụng linh hoạt hơn rất nhiều so với

µC AT90S8515 đang được sử dụng rộng rãi tại Việt Nam

b) Thiết bị hiển thị dữ liệu :

Đối với các loại dữ liệu được hiển thị dưới dạng số thì giải pháp tối ưu là

sử dụng các LED 7 thanh do loại thiết bị hiển thị này có giá thành tương đối rẻ.Tuy nhiên, do ứng dụng không chỉ hiển thị chữ số (giá trị nhiệt độ) mà còn phảihiển thị cả các ký tự trong bảng chữ cái, do đó lựa chọn thiết bị hiển thị LCD vìloại thiết bị hiển thị này có khả năng hiển thị cả chữ cái và chữ số một cách rõnét Mặc dù so với các loại đèn LED thì LCD có giá thành cao hơn, nhưng bù lạithiết bị hiển thị LCD có nhiều đặc tính ưu việt hơn hẳn so với các loại đèn LED.Đặc biệt, thiết bị LCD cung cấp khả năng hiển thị dữ liệu vô cùng linh hoạt do

ta có thể điều khiển xuất dữ liệu một cách trực tiếp thông qua tập lệnh điềukhiển của vi mạch điều khiển và bộ mã ký tự sẵn có trong CGRAM của LCD.Một điều cần quan tâm khác là thiết bị LCD tiêu tốn rất ít năng lượng

Trên thị trường hiện nay có khá nhiều module LCD của các hãng khácnhau như Samsung, Hitachi, Motorola với nhiều loại kích thước Trong đồ án

sử dụng module LCD có kích thước 4x20 characters với 16 chân ghép nối.Không nhất thiết phải chọn hãng cung cấp vì các module LCD đều được xâydựng theo cùng một tiêu chuẩn, do đó cách thức điều khiển và ghép nối cácmodule LCD thông dụng hiện nay cũng tương tự nhau

c) Thiết bị vào dữ liệu và điều khiển (Keypad) :

Để người sử dụng có thể giao tiếp được với hệ thống, cần phải ghép nối µCvới một module keypad Do ứng dụng có thể làm việc với cả chữ cái và chữ số

Trang 6

nên ta sử dụng keypad loại 16 keys, trong đó mỗi một phím được thiết kế nhưmột công tắc để có thể nhập được dữ liệu có dạng như sau :

 10 chữ số trong hệ thập phân từ 0 9

 26 chữ cái la tinh từ A Z

 Các phím điều khiển bao gồm : Send, Bspace, , , /, Clear

Do số ký tự có thể được sử dụng cùng với các phím chức năng lớn hơn rấtnhiều so với tổng số phím sẵn có trên module keypad Vì vậy, bắt buộc phải sửdụng phương pháp Multikey, tức là sử dụng phần mềm để mỗi một phím trênmodule keypad có thể mã hoá được không ít hơn hai ký tự khác nhau Bằng cáchnày, với keypad có 16 phím ta có thể mã hoá được toàn bộ bảng chữ cái và chữ

số đồng thời vẫn có thể thực hiện được các chức năng điều khiển như trình bầy ởtrên

d) Giao tiếp giữa µC và PC :

Mặc dù hệ thống được thiết kế dựa trên µC AT90S8535 đã có thể làm việcđộc lập trong qua trình thu thập, xử lý và hiển thị dữ liệu tới người sử dụng màkhông cần có sự trợ giúp của PC Tuy nhiên, trong hầu hết các ứng dụng đều cầnphải lưu trữ lại dữ liệu mà nếu thực hiện việc này dựa trên µC AT90S8535 đòihỏi rất nhiều kỹ thuật và chi phí Trong khi đó, thao tác lưu trữ dữ liệu trên PClại rất đơn giản, vì vậy giải pháp tối ưu nhất là sử dụng PC để làm nhiệm vụphức tạp này Vấn đề còn lại chỉ là thao tác truyền dữ liệu cần lưu trữ từ µCsang PC, việc này được thực hiện khá đơn giản vì bản thân µC AT90S8535 đãđược tích hợp một bộ UART để sử dụng trong hoạt động truyền tin với các thiết

bị ở xa Như vậy, dựa vào mạch UART của µC ta có thể thực hiện truyền nhận

dữ liệu với PC theo chuẩn RS 232 Một vấn đề cần quan tâm khi ghép nối µCvới PC theo chuẩn RS 232 là sự tương quan về mặt điện áp tín hiệu dạng TTLcủa µC và điện áp tín hiệu dạng RS 232 của PC Để thực hiện việc chuyển đổitín hiệu dạng TTL sang dạng tín hiệu RS 232 ta sử dụng IC Max232, IC này có

Trang 7

nhiệm vụ tạo ra tín hiệu ±10V từ mức điện áp TTL để tạo sự tương thích về mứcđiện áp với chuẩn RS 232

1.3.2 Phương hướng thiết kế

Từ sơ đồ tổng thể của hệ thống như trên hình 1.1 và từ việc lựa chọn thiết

bị như trình bầy ở trên, hệ thống cần thiết kế có thể được thể hiện như trong sơ

đồ hình 1.2, trong đó :

 Khối LCD display : Sử dụng module LCD sẵn có trên thị trường đượcghép nối với µC để hiển thị các thông tin cần thiết cho người sử dụng

 Khối Keypad : Được nối ghép với µC để người sử dụng có thể nhập

dữ liệu hoặc điều khiển sự hoạt động của hệ thống Module này được thiết

kế dưới dạng các công tắc và sử dụng trực tiếp các đặc tính của các cổngI/O lập trình được của µC để thực hiện mà không cần nguồn hỗ trợ bênngoài

 Khối LM 335 : Là một IC cảm biến nhiệt làm nhiệm vụ biến đổi nhiệt

độ môi trường sang dạng điện áp để làm đầu vào cho bộ ADC của µC làmviệc

 Khối Max 232 : Sử dụng IC Max 232 ghép nối trược tiếp với µC làmnhiệm vụ trao đổi thông tin giữa µC và PC theo chuẩn RS 232

 Khối nguồn : Làm nhiệm vụ biến nguồn xoay chiều 220V sang nguồnmột chiều ±5V ổn định để cấp nguồn cho các khối khác hoạt động

Hình 1.2 : Sơ đồ khối thiết kế phần cứng

LCD display

Nguồn

Max 232

Trang 8

CHƯƠNG 2LỰA CHỌN LINH KIỆN THIẾT KẾ

VÀ MỘT SỐ LÝ THUYẾT VỀ CHUYỂN ĐỔI A/D

2.1 Lựa chọn linh kiện thiết kế

2.1.1 Giới thiệu vi mạch điều khiển AT90S8535

AT90S8535 là một vi mạch điều khiển năng lượng thấp 8 bit (công nghệchíp CMOS) trên cơ sở cấu trúc RICS của hãng ATMEL, nó thuộc họ vi điềukhiển AT90S/LS8535 Bằng cách thực hiện mỗi lệnh trong một đơn chu kỳ,AT90S8535 có thể đạt tới 1 MIPS cho mỗi MHz cho phép hệ thống có thể đượcthiết kế một cách tối ưu nhất sự tiêu thụ năng lượng làm tăng tốc độ xử lý Về mặtcấu tạo µC này cũng tương tự như µC AT90S8515 với 4 cổng I/O lập trình được,tuy nhiên về mặt chức năng thì µC AT90S8535 được tích hợp thêm nhiều tínhnăng mới mà µC AT90S8515 không có Các đặc trưng chính của µCAT90S8535 được trình bầy dưới đây :

• 8KB bộ nhớ chương trình

• 512 byte EEPROM

• 512 byte SRAM

• 32 line (4 cổng) I/O lập trình được

• 32 thanh ghi đa năng 8 bit

• 8 kênh đầu vào ADC riêng biệt với 10 bit kết quả

• 2 bộ Timer/Counter 8 bit với bộ đếm độc lập và chế độ so sánh

• 1 bộ Timer/Counter 16 bit với bộ đếm độc lập và các chế độ PWM

• 1 bộ UART lập trình trao đổi thông tin nối tiếp

• 1 bộ Watchdog Time lập trình được với bộ tạo giao động trong

Trang 9

• 1 bộ so sánh analog

• 1 cổng phối ghép nối tiếp thiết bị ngoại vi SPI

• 3 chế độ làm việc là : Idle, Power-Save và Power-down

• Nguồn cung cấp từ 4.0 - 6.0V, tần số làm việc 0 - 8MHz

Vi mạch điều khiển AT90S8535 được chế tạo theo công nghệ chíp nhớ cốđịnh với mật độ cao Bộ nhớ Flash ISP trên chíp cho phép bộ nhớ chương trình

có thể được lập trình lại thông qua một cổng SPI phối ghép nối tiếp với thiết bịngoại vi Ngoài ra, µC AT90SS8535 còn hỗ trợ cho việc lập trình thông qua cáccông cụ pháp triển hệ thống như C, assemblers

Vi điều khiển AT90S8535 có 4 cấu hình chân khác nhau là : PDIP (Có 40chân), PLCC, TQFP, MLF (Có 44 chân) Sơ đồ chân của mỗi loại như sau

Hình 2.1 : Cấu hình chân của µC AT90S8535

Trang 10

Chức năng các chân của µC AT90S8535 như sau :

 VCC : Chân cấp nguồn 5V

 GND : Chân nối đất

 RESET : Là đầu vào reset Tín hiệu reset ở bên ngoài sẽ tạo ra bởi mứcthấp của trở kháng trên chân Reset Xung reset dài quá 50ns sẽ tạo ra tínhiệu reset Xung ngắn hơn sẽ không đảm bảo phát sinh tín hiệu reset

 XTAL1 : Là một đầu vào có tác dụng đảo chiều bộ khuếch đại tạo daođộng và là đầu vào của mạch điều khiển đồng hồ bên trong

 XTAL2 : Là đầu ra của tín hiệu đảo từ bộ khuếch đại tạo dao động

 AVCC : Là chân cung cấp điện áp cho cổng A và bộ chuyển đổi ADC,nếu ADC không được sử dụng thì chân này phải được nối với nguồn 5V

Trang 11

(chân VCC), nếu ADC được sử dụng thì chân này phải được nối tới nguồn

5V qua bộ lọc thông thấp

 AREF : Là đầu vào chuẩn của tín hiệu tương tự cho bộ chuyển đổiADC Để cho ADC hoạt động được, nguồn sử dụng cho chân này phải cóphạm vị từ 2V đến AVCC

 AGND : Chân nối đất của tín hiệu analog, nếu bo mạch có một mứcnối đất riêng của tín hiệu analog, thì chân này phải được nối tới mức nốiđất này Nếu không có, chân này được nối tới chân GND

 Port A (PA7 PA0) : Là một cổng vào ra hai chiều 8 bit Các chân củacổng có thể cung cấp các trở kháng trong cho phép chọn từng bit Đệm racủa cổng A có khả năng kéo dòng lên tới 20mA và có thể điều khiển trựctiếp sự hiển thị LED Khi các chân PA0 đến PA7 được sử dụng như cáccổng vào và ở mức thấp, chúng sẽ là đầu vào hiện thời nếu các điện trởtrong được kích hoạt Cổng A cũng có thể được sử dụng như những đầuvào analog để đưa tín hiệu tới bộ bộ chuyển đổi ADC Các chân của cổng

A ở trạng thái không xác định khi reset, ngay cả khi đồng hồ không hoạtđộng

 Port B (PB7 BP0) : Là một cổng vào ra hai chiều 8 bit với các trởkháng trong Đệm ra của cổng B có khả năng kéo dòng lên tới 20mA Khi

là đầu vào, các chân của cổng B trong trạng thái trở kháng thấp sẽ là đầuvào hiện thời nếu các điện trở trong được kích hoạt Cổng B là cổng cungcấp các chức năng khác nhau với những đặc tính đặc biệt của µCAT90S8535 Các chân của cổng B ở trạng thái không xác định khi reset,ngay cả khi đồng không hoạt động

 Port C (PC0 PC7) : Là một cổng vào ra hai chiều 8 bit với các trởkháng trong Đệm ra của cổng C có khả năng kéo dòng lên tới 20mA Khi

Trang 12

là đầu vào, các chân của cổng C trong trạng thái trở kháng thấp sẽ là đầuvào hiện thời nếu các điện trở được kích hoạt Hai chân của cổng C có thểđược lựa chọn để sử dụng giống như bộ tạo dao động cho bộTimer/Counter2 Các chân của cổng C ở trạng thái không xác định khireset, ngay cả khi đồng không hoạt động.

 Port D (PD0 PD7) : Là một cổng vào ra hai chiều 8 bit với các trởkháng trong Đệm ra của cổng C có khả năng kéo dòng lên tới 20mA Khi

là đầu vào, các chân của cổng D trong trạng thái trở kháng thấp sẽ là đầuvào hiện thời nếu các điện trở được kích hoạt Cổng D cũng cung cấpnhững chức năng có đặc tính đặc biệt của µC AT90S8535 Các chân củacổng D ở trạng thái không xác định khi reset, ngay cả khi đồng khônghoạt động

Hình 2.2 : Sơ đồ khối vi mạch điều khiển AT90S8535

Trang 13

2.1.1.1 Cấu trúc của vi mạch AT90S8535.

Vi mạch điều khiển AT90S8535 có những phương thức truy cập nhanh tớitâp thanh ghi đa năng bao gồm 32 thanh ghi 8 bit với thời gian truy cập trongmột đơn chu kỳ đồng hồ Điều này có nghĩa trong một đơn chu kỳ, một thao táccủa bộ ALU được thực hiện sẽ lấy hai toán hạng từ hai thanh ghi trong tập thanhghi, sau khi thao tác được thực hiện và kết qua trả sẽ được lưu trở lại tập thanhghi trong một chu kỳ đồng hồ

Sáu trong số 32 thanh ghi đa năng này có thể được sử dụng như 3 thanh ghiđịa chỉ gián tiếp 16 bit trỏ đến không gian địa chỉ dữ liệu, làm cho phép tính địachỉ đạt được hiệu quả cao Một trong 3 con trỏ địa chỉ này cũng được sử dụnggiống như con trỏ địa chỉ tới vùng nhớ dữ liệu cố định Các thanh ghi địa chỉnày là các thanh ghi 16 bit X, Y, Z

Hình 2.3 : Sơ đồ khối kiến trúc của µC AT90S8535

Trang 14

Bộ ALU cung cấp các chức năng tính toán số học và logic giữa các thanhghi hoặc giữa một hằng số và một thanh ghi Những thao tác của một thanh ghiđơn cũng được thực hiện trong bộ ALU Sự hoạt động của ALU được phân chialàm 3 loại chính là số học, logic và các chức năng bit.

Ngoài các chức năng của thanh ghi, các chế độ đánh địa chỉ bộ nhớ thôngthường cũng có thể được sử dụng trên các tập các thanh ghi Điều này được thựchiện qua việc tập thanh ghi được gán 32 địa chỉ thấp nhất của không gian địa chỉ

dữ liệu ($00 $1F), Cho phép chúng có thể được truy nhập như là là các địa chỉ nhớbình thường

Không gian vùng nhớ I/O bao gồm 64 địa chỉ ($20 $5F) dành cho các chứcnăng điều khiển thiết bị ngoại vi của µC như : Các thanh ghi điều khiển, bộTimer/Couter, bộ chuyển đổi ADC và các chức năng I/O khác Vùng nhớ I/O cóthể được truy nhập trực tiếp hoặc gián tiếp thông qua tập các thanh ghi

µC AT90S8535 sử dụng kiến trúc Harvard - với bộ nhớ và bus độc lập chochương trình và dữ liệu Bộ nhớ chương trình được thực hiện với một “pipeline”hai trạng thái Trong khi một lệnh đang được thực hiện, lệnh tiếp theo được nạptrước từ bộ nhớ chương trình Cách thức này cho phép các lệnh liên tiếp đượcthực hiện trong từng đơn chu kỳ đồng hồ Bộ nhớ chương trình là bộ nhớ Flashcho phép nạp dữ liệu trong hệ thống

Với những lệnh nhẩy và lệnh gọi, toàn bộ không gian địa chỉ 4K được truynhập trực tiếp Hầu hết các lệnh của AVR đều có độ dài 16 bit Mỗi địa chỉ bộnhớ chương trình bao gồm một lệnh 16 bit hoặc 32 bit

Mỗi một module ngắt có những thanh ghi điều khiển trong không gian I/Ovới một bit cho phép ngắt chung được đặt trong thanh ghi trạng thái Mỗi ngắtkhác nhau có một vector ngắt độc lập trong bảng vector ngắt ở tại vị trí bắt đầucủa bộ nhớ chương trình Mỗi ngắt khác nhau đều có mức độ ưu tiên tuân theo

Trang 15

vị trí vector ngắt của chúng Địa chỉ của vector ngắt càng thấp, mức độ ưu tiêncàng cao Khi xẩy ra ngắt, một chương trình con phụ vụ ngắt được gọi, địa chỉtrở về PC được đẩy vào ngăn xếp Vùng nhớ ngăn xếp được cấp phát trong vùngnhớ dữ liệu của SRAM và do đó, dung lượng của ngăn xếp bị giới hạn bởi tổngdung lượng của SRAM và cách sử dụng thông thường của SRAM Tất cả cácchương trình của người sử dụng phải được khởi đầu bằng con trỏ ngăn xếp (SP)trong thủ tục reset (trước khi các chương trình con hoặc các ngắt được thực thi).Con trỏ stack sử dụng 10 bit để truy nhập ghi/đọc trong không gian I/O 512byte dữ liệu SRAM có thể được truy cập dễ dàng bởi 5 chế độ địa chỉ khác nhauđược cung cấp bởi µC AT90S8535.

Hình 2.4 : Bản đồ bộ nhớ của µC AT90S8535

2.1.1.2 Tập thanh ghi đa năng của µC AT90S8535

Tất cả các thanh ghi trong tập thanh ghi của µC AT90S8535 khi thực mộthiện lệnh trong tập lệnh đều có thể được truy cập trực tiếp trong một đơn chu kỳđồng hồ Ngoại trừ 5 lệnh trực tiếp SBCI, SUBI, CPI, ANDI, ORI giữa mộthằng số và một thanh ghi và lệnh LDI sử dụng để nạp tức thì hằng dữ liệu,những lệnh này phải sử dụng các thanh ghi của nửa thứ hai trong tập thanh ghi(từ R16 R31) Các lệnh còn lại đều có thể sử dụng bất kỳ thanh ghi nào trongtập thanh ghi

Trang 16

Hình 2.5 : Địa chỉ 32 thanh ghi đa năng của µC

Qua hình 2.5 có thể thấy, mỗi thanh ghi đều được gán một địa chỉ trongkhông gian địa chỉ dữ liệu, chúng được đặt trong 32 vị trí đầu tiên của khônggian dữ liệu sử dụng Mặc dù không được thực hiện một cách vật lý như trongSRAM, việc tổ chức bộ nhớ này cung cấp sự linh hoạt lớn trong việc truy nhậptới các thanh ghi, như các thanh ghi X, Y, Z có thể được thiết lập để trỏ tới bất

kỳ thanh ghi nào trong tập thanh ghi

Các thanh ghi từ R26 R31 được thêm vào một số chức năng nhằm mở rộngkhả năng sử dụng của tập thanh ghi Những thanh ghi này là những con trỏ địachỉ được sử dụng trong chế độ địa chỉ gián tiếp của không gian dữ liệu Ba thanhghi địa chỉ gián tiếp là X, Y, Z được mô tả như trong hình 2.6 :

Hình 2.6 : Mô tả các thanh ghi địa chỉ gián tiếp X, Y, Z

Trang 17

Trong các chế độ địa chỉ khác nhau, các thanh ghi này có chức năng điềuchỉnh linh hoạt đối với từng trường hợp, tự động tăng, giảm hoặc không đổi.2.1.1.3 Bộ số học và Logic - ALU.

Bộ ALU của µC AT90S8535 được nối trực tiếp với 32 thanh ghi đa năng.Trong một đơn chu kỳ đồng hồ, các thao tác của ALU giữa các thanh ghi trongtập thanh ghi được thực hiện và giữa một thanh ghi với một hằng số hoặc trênmột đơn thanh ghi Các hoạt động của ALU được chia làm 3 loại chính là : sốhọc, logic và các phép toán trên bit

2.1.1.4 Đặc điểm các bộ nhớ trong của µC AT90S8535

a) Bộ nhớ chương trình (Flash program memory) : Trong µC AT90S8535chứa đựng 8KB bộ nhớ Flash lập trình được dùng để lưu trữ chương trình Nóđược tổ chức như một bộ nhớ 4Kx16 bit để phù hợp với sự làm việc của cáclệnh có độ dài 16 hoặc 32 bit Bộ nhớ Flash này có thể chịu được ít nhất 1000chu kỳ ghi/xoá Vì bộ đếm chương trình (PC) của µC AT90S8535 có độ dài 12bit, do đó nó có thể mã hoá 4096 địa chỉ trong bộ nhớ chương trình

b) Bộ nhớ SRAM : 608 vị trí địa chỉ thấp nhất trong vùng nhớ dữ liệuđược dùng để địa chỉ hoá cho tập thanh ghi, bộ nhớ I/O và SRAM 96 vị trí địachỉ đầu tiên là của tập thanh ghi và bộ nhớ I/O, 512 vị trí địa chỉ tiếp theo là của

bộ nhớ SRAM Một địa chỉ bất kỳ trong trong không gian địa chỉ dữ liệuSRAM đều có thể được xác định thông qua 5 chế độ địa chỉ khác nhau là : trựctiếp, tương đối, gián tiếp, gián tiếp với sự giảm trước và gián tiếp với sự tăngsau Trong tập thanh ghi, các thanh ghi từ R26 tới R31 được sử dụng như cácthanh ghi con trỏ địa chỉ gián tiếp

Ở chế độ địa chỉ trực tiếp có cho phép truy cập tới toàn bộ không gian dữliệu Chế độ địa chỉ tương đối cho phép xác định 63 vị trí địa chỉ từ địa chỉ cơ sởcho bởi các thanh ghi Y hoặc Z Khi sử dụng các chế độ thanh ghi gián tiếp với

Trang 18

sự tự động giảm trước hoặc tăng sau, nội dung của các thanh ghi địa chỉ X, Y và

Z đều tự động tăng hoặc giảm sau khi thực hiện 32 thanh ghi đa năng, 64 thanhghi I/O và 512 byte của bộ nhớ trong SRAM trong AT90S8535, tất cả đều có thểđược truy nhập thông qua các chế độ địa chỉ này

Hình 2.7 : Tổ chức bộ nhớ SRAM của µC

c) Bộ nhớ EEPROM : µC AT90S8535 có 512 byte bộ nhớ EEPROM,được tổ chức như một không gian dữ liệu riêng biệt cho phép mỗi byte có thểđược ghi/đọc Bộ nhớ EEPROM có thể thực hiện ít nhất 100.000 chu kỳghi/xoá Sự truy nhập giữa EEPROM và µC được thực hiện thông qua các thanhghi địa chỉ, thanh ghi dữ liệu và thanh ghi điều khiển của EEPROM, các thanhghi này có thể được truy cập trong không gian I/O Thời gian truy cập ghiEEPROM trong phạm vi từ 2.5 đến 4 ms, tuỳ thuộc vào điện áp trên chân VCC.EEPROM có một chức năng tự động tính thời gian cho phép phần mềm củangười sử dụng kiểm tra khi byte tiếp theo có thể được ghi/đọc Một ngắt đặc biệtkiểm tra sự sẵn sàng của EEPROM có thể được thiết lập để kích hoạt khiEEPROM sẵn sàng tiếp nhận dữ liệu mới Để ngăn cản việc ghi EEPROM ngoài

ý muốn, một quy trình ghi cụ thể phải được tuân theo Khi đọc EEPROM, µC bịtạm dừng trong 4 chu kỳ đồng hồ trước khi lệnh tiếp theo được thực hiện Khighi EEPROM, µC tạm dừng trong 2 chu kỳ đồng hồ trước khi thực hiện lệnhtiếp theo

Trang 19

Thanh ghi địa chỉ EEPROM : EEARH và EEARL

Các thanh ghi địa chỉ của EEPROM (EEARH và EEARL) chỉ định địa chỉcủa một byte trong không gian 512 byte EEPROM Các byte dữ liệu củaEEPROM được địa chỉ hóa từ 0 đến 511

Thanh ghi dữ liệu EEPROM : EEDR

Trong thao tác ghi của EEPROM, thanh ghi EEDR chứa dữ liệu được ghitới EEPROM theo địa chỉ được xác định bởi thanh ghi EEAR Trong thao tácđọc EEPROM, thanh ghi EEDR chứa dữ liệu đọc ra từ EEPROM tại địa chỉ chotrong thanh ghi EEAR

Thanh ghi điều khiển EEPROM : EECR

• Bit 3 - EERIE : Bit cho phép sẵn sàng ngắt của EEPROM

Khi bit I trong thanh ghi SREG và bit EERIE được thiết lập, ngắt trạng thái sẵnsàng của EPROM được cho phép Khi bị xoá ngắt bị vô hiệu hoá Ngắt trạng tháisẵn sàng EEPROM tạo ra một ngắt cứng khi bit EEWE bị xoá

• Bit 2 - EEMWE : Bit cho phép thao tác ghi EEPROM

Bit EEMWE xác định có hay không sự thiết lập bit EEWE để gây ra thao tácghi EEPROM Khi bit EEMWE được thiết lập, thì sự thiết lập của bit EEWE sẽ ghi

dữ liệu vào EEPROM tại địa chỉ đã lựa chọn Nếu bit EEMWE là 0, thì sự thiết lập

Trang 20

của bit EEWE sẽ không có kết quả Khi bit EEMWE đã được thiết lập bởi phầnmềm, phần cứng xoá bit này về 0 sau 4 chu kỳ đồng hồ.

• Bit 1 - EEWE : Bit cho phép ghi EEPROM

Tín hiệu cho phép ghi EEPROM (EEWE) là một xung chọn ghi tớiEEPROM Khi địa chỉ và dữ liệu đã được thiết lập phù hợp, bit EEWE phảiđược thiết lập để ghi giá trị vào trong EEPROM Bit EEEMWE phải được thiếtlập khi giá trị logic 1 được ghi vào bit EEWE, nếu không thì không xẩy ra thaotác ghi EEPROM Quy trình dưới đây phải được tuân theo khi ghi EEPROM(thứ tự của bước 2 và 3 không cần quan tâm)

1 Đợi cho đến khi bit EEWE trở về 0

2 Ghi địa chỉ mới của EEPROM tới thanh ghi địa chỉ EEPROM (tuỳ chọn)

3 Ghi dữ liệu mới vào thanh ghi EEDR (tuỳ chọn)

4 Ghi giá trị logic 1 vào bit EEMWE trong thanh ghi EECR (Để có thể ghigiá trị logic 1 vào bit EEMWE, thì bit EEWE phải được ghi là 0 trong cùng mộtchu kỳ đồng hồ)

5 Trong vòng 4 chu kỳ đồng hồ sau khi thiết lập bit EEMWE, ghi giá trịlogic 1 tới bit EEWE

Chú ý : Một ngắt giữa bước 4 và 5 sẽ làm lỗi chu kỳ ghi, vì bit EEMWE sẽhết thời gian Nếu một thủ tục ngắt truy xuất tới EEPROM trong khi một ngắtkhác cũng đang truy xuất EEPROM, thì nội dung của các thanh ghi EEAR vàEEDR sẽ bị thay đổi, gây lỗi ngắt truy xuất EEPROM Để tránh những vấn đềnày cần xoá các cờ ngắt chung trong thời gian thực hiện 4 bước cuối cùng Khithời gian truy cập ghi kết thúc (2.5ms và VCC = 5V hoặc 4ms và VCC = 2.7V), bitEEWE được xoá bởi phần cứng, Sử dụng phần mềm có thể thăm dò bít này vàđợi nó trở về không trước khi thực hiện ghi byte tiếp theo Khi bit EEWE đãđược thiết lập, µC tạm dừng trong 2 chu kỳ đồng hồ trước khi lệnh tiếp theođược thực hiện

• Bit 0 - EERE : Bit cho phép đọc EEPROM

Trang 21

Tín hiệu cho phép đọc EEPROM là xung chọn đọc đến EEPROM Khi địachỉ phù hợp được thiết lập trong thanh ghi EEAR, bit EERE phải được thiết lập.Khi bit EERE bị xoá bởi phần cứng, dữ liệu yêu cầu được tìm thấy trong thanhghi EEDR Sự truy xuất đọc EEPROM cần một lệnh và không cần thăm dò bitEERE Khi bit EERE đã được thiết lập, µC tạm dừng trong 4 chu kỳ đồng hồtrước khi lệnh tiếp theo được thực hiện

Người sử dụng cần phải thăm dò bit EEWE trước khi bắt đầu thao tác đọc.Nếu dữ liệu hoặc địa chỉ mới được ghi vào các thanh ghi vào/ra của EEPROMkhi một thao tác ghi đang diễn ra, thì thao tác ghi sẽ bị ngắt và kết quả khôngđược xác định

2.1.1.5 Các chế độ địa chỉ của µC AT90S8535

Vi mạch điều khiển AT90S8535 hỗ trợ các chế độ địa chỉ rất mạnh và hiệuquả cao cho việc truy nhập tới bộ nhớ chương trình (bộ nhớ Flash) và bộ nhớ dữliệu (SRAM, tập thanh ghi và bộ nhớ I/O) Dưới đây là các chế độ địa chỉ của

µC AT90S8535 :

a) Địa chỉ trực tiếp một thanh ghi

Toán hạng được chứa trong thanh ghi d (Rd)b) Địa chỉ trực tiếp hai thanh ghi

Trang 22

Các toán hạng được chứa trong thanh ghi r (Rr) và d (Rd).

Kết quả được lưu trong thanh ghi d (Rd)c) Địa chỉ I/O trực tiếp

Toán hạng địa chỉ chứa trong 6 bit LSB của từ lệnh,

n là địa chỉ của thanh ghi nguồn hoặc đíchd) Địa chỉ dữ liệu trực tiếp

16 bit địa chỉ dữ liệu được chứa trong 16 bit LSB của hai từ lệnh.

Rd/Rr chỉ rõ thanh ghi nguồn hoặc thanh ghi đích.

e) Địa chỉ dữ liệu tương đối

Toán hạng địa chỉ là kết quả của nội dung thanh ghi Y hoặc Zđược cộng với địa chỉ chứa trong 6 bit LSB của từ lệnh (a)

Trang 23

f) Địa chỉ dữ liệu gián tiếp

Toán hạng địa chỉ là nội dung của thanh ghi X, Y hoặc Zg) Địa chỉ dữ liệu gián tiếp giảm trước

Nội dung các thanh ghi X, Y, Z giảm 1 trước khi thực hiệnToán hạng địa chỉ là nội dung đã giảm của thanh ghi X, Y, Zh) Địa chỉ dữ liệu gián tiếp tăng sau

Thanh ghi X, Y hoặc Z được cộng 1 sau khi thực hiện

Địa chỉ toán hạng là nội dung của thanh ghi X, Y hoặc Z trước khi cộngi) Địa chỉ cố định khi thực hiện lệnh LPM

Trang 24

Địa chỉ byte cố định được xác định bởi nội dung của thanh ghi Z.

15 bit MSB lựa chọn địa chỉ từ (0 – 4K), bit LSB cho phép

chọn byte thấp nếu LSB = 0 hoặc byte cao nếu đặt LSB = 1

j) Địa chỉ gián tiếp trong bộ nhớ chương trình với lệnh IJMP và ICALL

Chương trình được tiếp tục thực hiện tại địa chỉ được chứa bởi thanh ghi Z (Bộ đếm chương trình (PC) được nạp với nội dung của thanh ghi Z)

k) Địa chỉ tương đối của bộ nhớ chương trình với lệnh RJMP và RCALL

Chương trình được tiếp tục thực hiện tại địa chỉ PC + k + 1Địa chỉ tương đối k bắt đầu từ - 2048 tới 20472.1.1.6 Thời gian truy cập bộ nhớ và thời gian thực hiện lệnh

µC AT90S8535 được điều khiển bởi đồng hồ hệ thống 0, được tạo trực tiếp

từ đồng hồ bên ngoài của chip và không sử dụng bộ chia thời gian trong

Hình 2.8 mô tả quá trình tìm và thực hiện lệnh song song theo cấu trúcHarvard và khái niệm tập thanh ghi truy nhập nhanh

Trang 25

Hình 2.8: Quá trình tìm và thực hiện lênh song song

Hình 2.9 mô tả khái niệm thời gian thao tác trong của tập thanh ghi Trongmột đơn chu kỳ đồng hồ, một thao tác sử dụng hai toán hạng trong hai thanh ghicủa ALU được thực hiện và kết quả được lưu trở lại thanh ghi đích

Hình 2.9: Hoạt động của ALU trong đơn chu kỳ đồng hồ

Sự truy nhập vào bộ nhớ SRAM được thực hiện trong hai chu kỳ đồng hồ

và được mô tả như hình dưới

Hình 2.10 : Các chu kỳ truy cập bộ nhớ SRAM

2.1.1.7 Không gian bộ nhớ I/O

Bảng 2.1 : Không gian I/O của µC AT90S8535

Trang 26

(Địa chỉ SRAM) ghi/cổng

$3F ($5F) SREG Thanh ghi trạng thái

$3E ($5E) SPH địa chỉ byte cao của con trỏ Stack

$3D ($5D) SPL Địa chỉ byte thấp của con trỏ Stack

$3B ($5B) GIMSK Thanh ghi mặt nạ ngắt chung

$3A ($5A) GIFR Thanh ghi cờ ngắt chung

$39 ($59) TIMSK Thanh ghi mặt nạ ngắt của bộ Timer/Counter

$38 ($58) TIFR Thanh ghi cờ ngắt của bộ Timer/Counter

$35 ($55) MCUCR Thanh ghi điều khiển chung của MCU

$34 ($45) MCUSR Thanh ghi trạng thái chung của MCU

$33 ($53) TCCR0 Thanh ghi điều khiển bộ Timer/Counter 0

$32 ($52) TCNT0 8 bit dữ liệu của bộ Timer/Counter 0

$2F ($4F) TCCR1A Thanh ghi điều khiển A của bộ Timer/Counter 1

$2E ($4E) TCCR1B Thanh ghi điều khiển B của bộ Timer/Counter 1

$2D ($4D) TCNT1H Byte cao của bộ Timer/Counter 1

$2C ($4C) TCNT1L Byte thấp của bộ Timer/Counter 1

$2B ($4B) OCR1AH Byte cao của thanh ghi A so với đầu ra của Timer/Counter1

$2A ($4A) OCR1AL Byte thấp của thanh ghi A so với đầu ra của Timer/Counter1

$29 ($49) OCR1BH Byte cao của thanh ghi B so với đầu ra của Timer/Counter1

$28 ($48) OCR1BL Byte thấp của thanh ghi B so với đầu ra của Timer/Counter1

$27 ($47) ICR1H Thanh ghi lưu trữ Byte cao của đầu vào Timer/Counter1

$26 ($46) ICR1L Thanh ghi lưu trữ Byte cao đầu vào của Timer/Counter1

$25 ($45) TCCR2 Thanh ghi điều khiển bộ Timer/Counter 2

$24 ($44) TCNT2 8 bit dữ liệu của bộ Timer/Counter 2

$23 ($43) OCR2 Thanh ghi so với đầu ra của bộ Timer/Counter 2

$22 ($42) ASSR Thanh ghi trạng thái chế độ không đồng bộ

$21 ($41) WDTCR Thanh ghi điều khiển mạch kiểm tra tuần tự bộ định thời gian

$1F ($3E) EEARH Thanh ghi địa chỉ Byte cao của EEPROM

$1E ($3E) EEARL Thanh ghi địa chỉ Byte thấp của EEPROM

$1D ($3D) EEDR Thanh ghi dữ liệu EEPROM

$1C ($3C) EECR Thanh ghi điều khiển EEPROM

$1B ($3B) PORTA Thanh ghi dữ liệu, cổng A

$1A ($3A) DDRA Thanh ghi điều hướng dữ liệu, cổng A

$19 ($39) PINA Các chân vào của cổng A

$18 ($38) PORTB Thanh ghi dữ liệu cổng B

$17 ($37) DDRB Thanh ghi điều hướng dữ liệu, cổng B

$16 ($36) PINB Các chân vào của cổng B

$15 ($35) PORTC Thanh ghi dữ liệu cổng C

$14 ($34) DDRC Thanh ghi điều hướng dữ liệu, cổng C

$13 ($33) PINC Các chân vào của cổng C

$12 ($32) PORTD Thanh ghi dữ liệu của cổng D

$11 ($31) DDRD Thanh ghi điều hưởng dữ liệu, cổng D

$10 ($30) PIND Các chân vào của cổng D

$0F ($2F) SPDR Thanh ghi dữ liệu cổng vào/ra của thiết bị ngoại vi

$0E ($2E) SPSR Thanh ghi trạng thái của SPI

$0D ($2D) SPCR Thanh ghi điều khiển SPI

$0C ($2C) UDR Thanh ghi dữ liệu vào/ra của bộ UART

$0B ($2B) USR Thanh ghi trạng thái UART

$0A ($2A) UCR Thanh ghi điều khiển UART

$09 ($29) UBRR Thanh ghi tốc độ baud của UART

$08 ($28) ACSR Thanh ghi điều khiển và trạng thái của mạch so sánh Analog

$07 ($27) ADMUX Thanh ghi lựa chọn của bộ dồn kênh ADC

$06 ($26) ADCSR Thanh ghi điều khiển và trạng thái của bộ ADC

$05 ($25) ADCH Thanh ghi dữ liệu byte cao của bộ ADC

$04 ($24) ADCL Thanh ghi dữ liệu byte thấp của bộ ADC

Trang 27

Tất cả các cổng I/O của µC AT90S8535 và các thiết bị ngoại vi đều đượcđặt trong gian cổng I/O Các vị trí cổng I/O được truy nhập bởi lệnh IN và OUTtruyền dữ liệu giữa 32 thanh ghi đa năng và không gian I/O Các thanh ghi I/O

có địa chỉ trong phạm vi từ $00 đến $1F có thể được truy nhập trực tiếp tới cácbit bằng cách sử dụng các lệnh SBI và CBI Trong các thanh ghi này, giá trị cácbit đơn có thể được kiểm tra bằng cách sử dụng các lệnh SBIS và SBIC Khi sửdụng các lệnh I/O cụ thể IN và OUT, các địa chỉ I/O từ $00 đến $3F phải được

sử dụng Khi xác định địa chỉ các thanh ghi I/O như địa chỉ của SRAM, phảithêm $20 vào các địa chỉ này

Bảng 2.2 : Vị trí các bit trong các thanh ghi I/O

$3C ($5C) Res

$37 ($57) Res

$36 ($56) Res

$32 ($52) TCNT0 Timer/Counter0 (8 Bits)

$31 ($51) Res

$30 ($50) Res

$2D ($4D) TCNT1H Timer/Counter1 – Counter Register High Byte

$2C ($4C) TCNT1L Timer/Counter1 – Counter Register Low Byte

$2B ($4B) OCR1AH Timer/Counter1 – Output Compare Register A High Byte

$2A ($4A) OCR1AL Timer/Counter1 – Output Compare Register A Low Byte

$29 ($49) OCR1BH Timer/Counter1 – Output Compare Register B High Byte

$28 ($48) OCR1BL Timer/Counter1 – Output Compare Register B Low Byte

$27 ($47) ICR1H Timer/Counter1 – Input Capture Register High Byte

$26 ($46) ICR1L Timer/Counter1 – Input Capture Register Low Byte

$24 ($44) TCNT2 Timer/Counter2 (8 Bits)

$23 ($43) OCR2 Timer/Counter2 Output Compare Register

$20 ($40) Res

Trang 28

$1E ($3E) EEARL EEAR7 EEAR6 EEAR5 EEAR4 EEAR3 EEAR2 EEAR1 EEAR0

$1D ($3D) EEDR EEPROM Data Register

$0F ($2F) SPDR SPI Data Register

$0C ($2C) UDR UART I/O Data Register

$09 ($29) UBRR UART Baud Rate Register

nó Chú ý đối với các lệnh CBI và SBI sẽ có tác dụng trên tất cả các bit trongthanh ghi I/O và thao tác ghi lại 1 vào bất kỳ cờ nào đã được thiết lập đồngnghĩa với việc xoá cờ đó Tuy nhiên, các lệnh CBI và SBI chỉ làm việc với cácthanh ghi có địa chỉ từ $00 đến $1F Chức năng của mỗi bit trong các thanh ghi

sẽ được giới thiệu trong từng phần có liên quan, dưới đây là hai thanh ghi chínhcủa vi mạch điều khiển AT90S8535

Thanh ghi trạng thái µC : SREG

Trang 29

Thanh ghi trạng thái (Status register) của µC AT90S8535 có địa chỉ tại vị

trí $3F ($5F) trong không gian I/O được định nghĩa như sau :

• Bit 7 - I : Bit cho phép ngắt chung (Global Interrupt Enable)

Bit cho phép ngắt chung phải được thiết lập để cho phép các ngắt Sau đó,mỗi sự điều khiển ngắt cho phép riêng được thực hiện trong các thanh ghi điềukhiển độc lập Nếu bit cho phép ngắt chung bị xoá, thì không có ngắt nào đượccho phép Bit I được xoá bởi phần cứng sau khi một ngắt xảy ra và được thiếtđặt bởi lệnh RETI để cho phép các ngắt tiếp theo

• Bit 6 - T : Bit lưu trữ sao chép (Bit Copy Storage)

Các lệnh sao chép bit BLD (BitLoaD) và BST (BitSTore) sử dụng bit Tnhư là nguồn hoặc đích cho thao tác bit Một bit của một thanh ghi trong tậpthanh ghi có thể sao chép vào trong bit T bằng lệnh BST và một bit trong T cóthể được sao chép vào một bit trong thanh ghi của tập thanh ghi bởi lệnh BLD

• Bit 5 - H : Bit cờ nhớ phụ (Half-carry Flag)

Cờ nhớ phụ H xác định số nhớ trong một số thao tác số học

• Bit 4 - S : Bit dấu (Sign Bit, S = N ⊕ V)

Bit dấu S luôn là một phép logic NAND giữa cờ phủ định N và cờ tràn số

bù hai V

• Bit 3 - V : Bit cờ tràn bù hai (Two’s Complement Oveflow Flag)

Cờ tràn số bù hai V hỗ trợ cho phép tính số bù hai

• Bit 2 - N : Bit cờ phủ định (Negative Flag)

Cờ phủ định N cho biết một kết quả âm từ một phép tính số học hoặc logic

• Bit 1 - Z : Bit cờ Zero (Zero Flag)

Cờ Zero Z cho biết một kết quả bằng không từ một phép tính số hoặc logic

• Bit 0 - C : Bit cờ nhớ (Carry Flag)

Trang 30

Cờ carry C xác định số nhớ trong một phép tính số hoặc logic

Chú ý : Thanh ghi trạng thái không tự động được lưu và khôi phục khitham gia vào một thủ tục ngắt hoặc khi trở về từ một thủ tục ngắt Do đó, nó phải đượcthực hiện bởi phần mềm

Thanh ghi con trỏ ngăn xếp : SP

Con trỏ ngăn xếp của µC AT90S8535 được thực hiện như hai thanh ghi 8bit ở địa chỉ $3E($5E) và $3D($5D) trong không gian I/O Do bộ nhớ SRAMcủa AT90S8535 có $25F địa chỉ, do đó con trỏ SP cần sử dụng 10 bit để xácđịnh các vị trí địa chỉ cần thiết

Con trỏ ngăn xếp SP trỏ tới vùng dữ liệu ngăn xếp trong SRAM nơi màmột chương trình con phuc vụ ngắt và ngắt được định vị Không gian ngăn xếptrong vùng dữ liệu SRAM phải được khai báo trong chương trình trước bất kỳlời gọi chương trình con nào được thực hiện hoặc bất kỳ ngắt nào được chophép Con trỏ ngăn xếp phải được thiết đặt ở những địa chỉ lớn hơn $60 SPgiảm đi 1 byte khi dữ liệu được đẩy vào Stack bởi lệnh PUSH và nó giảm đi 2byte khi một địa chỉ được đẩy vào Stack trong lời gọi chương trình con hoặcngắt SP được tăng lên 1 byte khi dữ liệu được lấy ra khỏi Stack với lệnh POP

và nó được tăng 2 byte khi một địa chỉ được lấy ra từ Stack với lệnh trở về từchương trình con RET hoặc lệnh trở về từ một ngắt RETI

2.1.1.8 Ngắt và xử lý ngắt trong µC AT90S8535

µC AT90S8535 cung cấp 16 nguồn gây ngắt khác nhau và một ngắt Reset.Các ngắt này và ngắt Reset có một vector chương trình độc lập trong không gian

Trang 31

bộ nhớ chương trình Tất cả các ngắt được gán với các bit cho phép ngắt riêng

và phải được thiết lập cùng với bit I trong thanh ghi SREG để cho phép ngắt xảy

ra

Vị trí địa chỉ thấp nhất trong không gian bộ nhớ chương trình được tự độngđịnh nghĩa là địa chỉ của vector Reset, tiếp theo đó là địa chỉ của các vector ngắtkhác Danh sách đầy đủ của các vector ngắt được thể hiện trong bảng 2.3, bảngnày cũng cho biết các cấp độ ưu tiên của các ngắt tuỳ theo vị trí địa chỉ củavector ngắt của nó theo nguyên tắc, địa chỉ càng thấp thì mức độ ưu tiên càngcao RESET có mức ưu tiên cao nhất, tiếp theo là INT0 v.v

Bảng 2.3 : Địa chỉ của các vector ngắt trong µC AT90S8535

4 $003 TIMER2 COMP Ngắt thích ứng so sánh của T/C 2

6 $005 TIMER1 CAPT Ngắt lưu giữ sự kiện của T/C 1

7 $006 TIMER1 COMPA Ngắt thích ứng so sánh A của T/C 1

8 $007 TIMER1 COMPB Ngắt thích ứng so sánh B của T/C 1

11 $00A SPI, STC Ngắt kết thúc truyền nối tiếp qua SPI

12 $00B UART, RX Ngắt kết thúc nhận dữ liệu của UART

13 $00C UART, UDRE Ngắt báo thanh ghi dữ liệu của UART rỗng

14 $00D UART, TX Ngắt hoàn thành truyền dữ liệu qua UART

17 $010 ANA_COMP Ngắt so sánh độ dài tín hiệu Analog

Một chương trình bình thường có thể thiết lập cho các địa chỉ của vectorReset và các vector ngắt khác như sau :

Địa chỉ Lệnh Nhãn/toán hạng Giải thích

$003 rjmp TIM2_COMP ;Điều khiển so sánh Timer2

$005 rjmp TIM1_CAPT ;Điều khiển bắt sự kiện Timer1

$006 rjmp TIM1_COMPA ;Điều khiển so sánh A của Timer1

Trang 32

$007 rjmp TIM1_COMPB ;Điều khiển so sánh B của Timer1

$00a rjmp SPI_STC ;Điều khiển kết thúc truyền dữ liệu qua SPI

$00c rjmp UART_DRE ;Điều khiển thông báo hết dữ liệu trong UDR

$010 rjmp ANA_COMP ;Điều khiển bộ so sánh tín hiệu tương tự

$011 MAIN: ldi r16, high(RAMEND) ;Bắt đầu chương trình chính

Các nguồn Reset của µC AT90S8535

µC AT90S8535 có 3 nguồn Reset khác nhau là : Power-on Reset (Reset khinguồn bật), Reset ngoài và Watchdog Reset

• Power-on Reset : MCU được thiết lập lại khi điện áp cung cấp thấp hơnngưỡng điện áp Power-on Reset (VPOT)

• Reset ngoài : MCU được thiết lập lại khi một mức điện áp thấp xuất hiệntrên chân RESET trong khoảng thời gian lớn hơn 50ns

• Watchdog Reset : MCU được thiết lập lại khi chu kỳ của mạch Wachdogtimer kết thúc và mạch Wachdog được cho phép

Trong thời gian Reset, tất cả các thanh ghi I/O được thiết lập lại với giá trịkhởi tạo và sự thực hiện chương trình được bắt đầu từ địa chỉ $000 Lệnh đặttrong địa chỉ $000 phải là lệnh RJMP (lệnh nhảy quan hệ) để thi hành thủ tụcReset Nếu một chương trình không cho phép bất một ngắt nào, thì các vectorngắt sẽ không được sử dụng và đoạn mã của chương trình có thể được đặt tại các

Trang 33

• Bit 7 2 : Ressered bits

• Bit 1 - EXTRF : Bit cờ Reset từ bên ngoài (EXTernal Reset Flag)

Sau một tín hiệu Reset Power-on, bit này không được xác định (X) Nó chỉ

có thể được thiết lập bởi một tín hiệu reset từ bên ngoài Một tín hiệu ResetWatchdog sẽ không thay đổi giá trị của bit này Bit này được xoá bằng cách ghigiá trị logic 0 vào bit

• Bit 0 - PORF : Bit cờ Reset Power-on (Power-On Reset Flag)

Bit này chỉ được thiết lập bởi một tín hiệu Reset Power-on Một tín hiệuReset Watchdog hoặc tín hiệu Reset từ bên ngoài sẽ không làm thay đổi giá trịcủa bit này Bit được xoá bằng cách ghi giá trị 0 vào bit

Bảng 2 4 : Giá trị của các bit EXTRF và PORF sau Reset

Watchdog Reset Không thay đổi Không thay đổi

Có thể sử dụng các giá trị của các bít này để xác định một điều kiện gây raReset Đối với phần mềm cần phải xoá cả hai bit PORF và EXTRF càng sớmcàng tốt trong chương trình Kiểm tra giá trị của các bit PORF và EXTR trướckhi các bit được xoá Nếu bit được xoá trước khi xuất hiện một tín hiệu Reset từbên ngoài hoặc của Watchdog, thì nguồn gốc của ngắt có thể được tìm thấy bằngcách sử dụng bảng 2.5

Trang 34

Vi mạch điều khiển AT90S8535 có hai thanh ghi điều khiển mặt nạ ngắt 8bit là : Thanh ghi mặt nạ ngắt chung - GIMSK (General Interrupt Mask register)

và thanh ghi mặt nạ ngắt của các mạch Timer/Counter – TISMK (Timer/CounterInterrupt Mask register)

Khi xẩy ra một ngắt, bit cho phép ngắt chung I bị xoá và tất cả các ngắt bịcấm Sử dụng phần mềm có thể thiết lập cho bit I để cho phép các ngắt đang bịche Bit I được lập sau khi thực hiện lệnh trở về từ ngắt - RETI

Khi bộ đếm chương trình PC trỏ tới một vector ngắt hiện tại để thực hiệnchương trình con phục vu ngắt, phần cứng sẽ xoá cờ ngắt tương ứng với ngắtpháp sinh Một vài cờ ngắt cũng có thể được xoá bằng cách ghi giá trị logic 1vào vị trí bit cờ đó Nếu một điều khiện ngắt xẩy ra khi bit cho phép ngắt tươngứng bị xoá, thì cờ ngắt sẽ được thiết lập và được nhớ cho đến khi ngắt đó đượccho phép hoặc cờ được xoá bởi phần mềm

Nếu một hoặc nhiều điều kiện ngắt xẩy ra khi bit cho phép ngắt chung bịxoá, các cờ ngắt tương ứng sẽ được thiết lập và được nhớ cho đến khi bit chophép ngắt chung được thiết lập và các ngắt sẽ được thực hiện tuỳ theo cấp ưutiên của mỗi ngắt

Chú ý : Mức ngắt ngoài không có cờ và sẽ chỉ được nhớ lâu bằng điều kiệnngắt tích cực Ngoài ra, thanh ghi trạng thái SREG sẽ không tự động lưu lại khitham gia một ngắt và khôi phụ lại khi trở về từ chương trình con phục vụ ngắt,

do đó nó phải được điều khiển bằng phần mềm

Các thanh ghi điều khiển ngắt của µC AT90S8535

Thanh ghi mặt nạ ngắt chung : GIMSK (General Interrupt Mask)

• Bit 7 - INT1 : Bit cho phép ngắt ngoài mức 1 (External Interrupt Request 1 Enable)

Trang 35

Khi bit INT1 được thiết lập và bit I trong thanh ghi trạng thái SREG đượcthiết lập, thì chân yêu cầu ngắt mức 1 từ bên ngoài được cho phép Các bitISC11 và ISC10 trong thanh ghi điều khiển chung MCUCR sẽ xác định ngắt từbên ngoài được kích hoạt theo sườn lên hay sườn xuống hoặc theo mức nhậnbiết của tín hiệu trên chân INT1 Sự kích hoạt trên chân này sẽ gây ra một yêucầu ngắt cho dù chân INT1 được cấu hình như một đầu ra Ngắt tương ứng củamột yêu cầu ngắt ngoài mức 1 được thực hiện từ địa chỉ $002 trong bộ nhớchương trình

• Bit 6 - INT0 : Bit cho phép ngắt ngoài mức 0 (External Interrupt Request 0 Enable)Khi bit INT0 và bit I trong thanh ghi trạng thái SREG được thiết lập, thìchân yêu cầu ngắt mức 0 từ bên ngoài được cho phép Các bit ISC01 và ISC00trong thanh ghi điều khiển chung MCUCR sẽ xác định ngắt từ bên ngoài đượckích hoạt theo sườn lên hay sườn xuống hoặc theo mức nhận biết của tín hiệutrên chân INT0 Sự kích hoạt trên chân này sẽ gây ra một yêu cầu ngắt cho dùchân INT0 được cấu hình như một đầu ra Ngắt tương ứng của một yêu cầu ngắtngoài mức 0 được thực hiện từ địa chỉ $001 trong bộ nhớ chương trình

• Bit 5 0 : Reserved bits

Thanh ghi cờ ngắt chung : GIFR (General Interrupt Flag Register)

• Bit 7- INTF1 : Bit cờ ngắt ngoài mức 1 (External Interrupt Flag 1)

Khi một tín hiệu theo sườn hoặc một sự thay đổi mức logic trên chân INT1

sẽ gây ra một yêu cầu ngắt, bit INTF1 được thiếp lập Cờ này luôn được xoá khichân này được thiết lập cho các ngắt có mức yêu tiên thấp, do đó trạng thái củamột ngắt có mức ưu tiên thấp có thể được xác định bằng cách đọc bit này

Nếu bit I trong thanh ghi trạng thái SREG và bit INT1 trong thanh ghi mặt

nạ ngắt chung GIMSK được thiết lập, MCU sẽ nhẩy tới địa chỉ ngắt $002 Do

Trang 36

ngắt được tác động bởi tín hiệu sườn và sự thay đổi mức logic, cờ này được xoákhi thủ tục ngắt được thực hiện, nó cũng có thể được xoá bởi việc ghi giá trịlogic 1 vào vị trí của cờ

• Bit 6 - INTF0 : Bit cờ ngắt ngoài mức 0 (External Interrupt Flag 0)

Khi một tín hiệu sườn hoặc một sự thay đổi logic trên chân INT0 gây ramột yêu cầu ngắt, bit INTF0 được thiếp lập Cờ này luôn được xoá (0) khi chânnày được đặt cấu hình cho các ngắt có mức ưu tiên thấp, như vậy trạng thái củamột ngắt có mức ưu tiên thấp có thể được xác định bằng cách đọc bit này

Nếu bit I trong thanh ghi trạng thái SREG và bit INT1 trong thanh ghi mặt

nạ ngắt chung GIMSK được thiết lập, MCU sẽ nhẩy tới địa chỉ ngắt $001 Dongắt được tác động bởi tín hiệu sườn và sự thay đổi mức logic, cờ này được xoákhi thủ tục ngắt được thực hiện, nó cũng có thể được xoá bởi việc ghi giá trịlogic 1 vào vị trí của cờ

Thanh ghi mặt nạ ngắt của các bộ Timer/Counter : TIMSK

• Bit 7 - OCIE2 : Bit cho phép ngắt so sánh bằng T/C2 (Timer/Counter2 Output

Compare Match Interrupt Enable)Khi bit OCIE2 được thiết lập và bit I trong thanh ghi trạng thái (SREG)được thiết lập, ngắt so sánh bằng T/C2 được cho phép Ngắt tương ứng tại địachỉ $003 được thực hiện nếu xuất hiện một tín hiệu so sánh bằng trong T/C2 (tức

là, khi bit OFC2 được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

• Bit 6 - TOIE2 : Bit cho phép ngắt tràn T/C2 (Timer/Counter2 Overflow

Interrupt Enable)Khi bit TOIE2 được thiết lập và bit I trong thanh ghi trạng thái (SREG)được thiết lập, ngắt tràn T/C2 được cho phép Ngắt tương ứng tại địa chỉ $004

Trang 37

được thực hiện nếu xuất hiện một tín hiệu tràn trong T/C2 (tức là, khi bit TOV2được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

• Bit 5 - TICIE1 : Bit cho phép ngắt bắt sự kiện vào của T/C1 (Timer/Counter1

Input Capture Interrup Enable)Khi bit TICIE1 được thiết lập và bit I trong thanh ghi trạng thái (SREG)được thiết lập, ngắt bắt sự kiện vào của T/C1 được cho phép Ngắt tương ứng tạiđại chỉ $005 được thực hiện nếu xuất hiện một sự kiện gây ra sự bắt tín hiệu trênchân 20, PD6 (ICP) (tức là, khi bit ICF1 được thiết lập trong thanh ghi cờ ngắtT/C [TIFR])

• Bit 4 - OCIE1A : Bit cho phép ngắt so sánh bằng A của T/C1 (Timer/Counter1

Output CompareA Match Interrupt Enable)Khi bit OCIE1A được thiết lập và bit I trong thanh ghi trạng thái được thiếtlập, ngắt so sánh bằng A của T/C1 được cho phép Ngắt tương ứng tại đại chỉ

$006 được thực hiện nếu xuất hiện một tín hiệu so sánh bằng A trong T/C1 (tức

là, khi bit OCF1A được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

• Bit 3 - OCIE1A : Bit cho phép ngắt so sánh bằng B của T/C1 (Timer/Counter1

Output CompareB Match Interrupt Enable)Khi bit OCIE1B được thiết lập và bit I trong thanh ghi trạng thái được thiếtlập, ngắt so sánh bằng B của T/C1 được cho phép Ngắt tương ứng tại địa chỉ

$007 được thực hiện nếu xuất hiện một tín hiệu so sánh bằnh B trong T/C1 (tức

là, khi bit OCF1B được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

• Bit 2 - TOIE1 : Bit cho phép ngắt tràn của T/C1 (Timer/Counter1 Overflow

Interrupt Enable)Khi bit TOIE1 được thiết lập và bit I trong thanh ghi trạng thái (SREG)được thiết lập, ngắt tràn T/C1 được cho phép Ngắt tương ứng tại đại chỉ $008được thực hiện nếu xuất hiện một tín hiệu tràn trong T/C1 (tức là, khi bit TOV1được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

• Bit 1: Không sử dụng

Trang 38

• Bit 0 - TOIE0 : Bit cho phép ngắt tràn của T/C0 (Timer/Counter0 Overflow

Interrupt Enable)Khi bit TOIE0 được thiết lập và bit I trong thanh ghi trạng thái (SREG)được thiết lập, ngắt tràn T/C0 được cho phép Ngắt tương ứng tại đại chỉ $009được thực hiện nếu xuất hiện một tín hiệu tràn trong T/C0 (tức là, khi bit TOV0được thiết lập trong thanh ghi cờ ngắt T/C [TIFR])

Thanh ghi cờ ngắt của các bộ Timer/Counter : TIFR (Timer/Counter Interrupt Flag)

• Bit 7 - OFC2 : Bit cờ so sánh đầu ra của T/C2 (Output compare Flag2)Bit OCF2 được thiết lập khi xuất hiện tín hiệu so sánh bằng giữa bộ T/C2

và dữ liệu trong OCR2 (Thanh ghi so sánh đầu ra của T/C 2) OCF2 được xoábằng phần cứng khi thực hiện chương trình điều khiển vector ngắt tương ứng.Bit OCF2 có thể được xoá bằng cách ghi giá trị logic 1 vào cờ này Khi bit Itrong thanh ghi trạng thái SREG và bit OCIE (T/C2 compare Match InteruptEnable) và bit OCF2 được thiết lập, ngắt thích ứng so sánh của T/C2 được thựchiện

• Bit 6 - TOV2 : Bit cờ tràn của T/C2 (Timer/Counter2 Overflow Flag)Bit TOV2 được thiết lập khi xuất hiện một tín hiệu tràn trong T/C2 BitTOV2 được xoá bởi phần cứng khi thực hiện chương trình điều khiển vectorngắt tương ứng Một cách khác, bit TOV2 có thể được xoá bằng cách ghi giá trị

1 vào bit cờ này Khi bit I trong thanh ghi trạng thái SREG và bit TOIE2 (T/C2Overflow Interupt Enable) và bit TOV2 được thiết lập, ngắt tràn của T/C2 đượcthực hiện Trong chế độ PWM, bit này được thiết lập khi bộ T/C1 bắt đầu đếm từgiá trị $0000

• Bit 5 - ICF1 : Cờ bắt tín hiệu vào T/C1 (Input Capture Flag1)

Bit ICF1 được thiết lập để dựng cờ cho phép lưu giữ một sự kiện đầu vào,

và cho biết giá trị của T/C1 đã được chuyển đến thanh ghi bắt tín hiệu vào

Trang 39

(ICR1) Bit ICF1 được xoá bởi phần cứng khi thực hiện chương trình điều khiểnvector ngắt tương ứng Một cách khác, bit ICF1 có thể được xoá bằng cách ghigiá trị 1 vào bit cờ này Khi bit I trong thanh ghi trạng thái SREG, bit TICIE1(Timer/Counter1 Input Capture Interrupt Enable) và bit ICF1 được thiết lập,ngắt bắt lưu giữ đầu vào T/C1 được thực hiện

• Bit 4 - OCF1A : Bit cờ so sánh A đầu ra của T/C1 (Output Compare Flag 1A)Bit OCF1A được thiết lập khi xuất hiện tín hiệu so sánh bằng giữa T/C1 và

dữ liệu trong OCR1A (Output Compare Register 1A) Bit OCF1A được xoá bởiphần cứng khi thực hiện chương trình điều khiển vector ngắt tương ứng Cũng

có thể xoá bit OCF1A bằng cách ghi giá trị 1 vào vị trí cờ này Khi bit I trongthanh ghi trạng thái SREG, bit OCIE1A (Timer/Counter1 Compare MatchInterruptA Enable) và bit OCF1A được thiết lập, ngắt so sánh bằng A của T/C1được thực hiện

• Bit 3 - OCF1B : Bit cờ so sánh B đầu ra của T/C1 (Output Compare Flag 1B)Bit OCF1B được thiết lập khi xuất hiện tín hiệu so sánh bằng giữa T/C1 và

dữ liệu trong OCR1B (Output Compare Register 1B) Bit OCF1B được xoá bởiphần cứng khi thực hiện chương trình điều khiển vector ngắt tương ứng Cũng

có thể xoá bit OCF1B bằng cách ghi giá trị 1 vào vị trí cờ này Khi bit I trongthanh ghi trạng thái SREG, bit OCIE1B (Timer/Counter1 Compare MatchInterruptB Enable) và bit OCF1B được thiết lập, ngắt thích ứng so sánh B củaT/C1 được thực hiện

• Bit 2 - TOV1 : Bit cờ tràn của T/C1 (Timer/Counter1 Overflow Flag)Bit TOV1 được thiết lập khi xuất hiện một tín hiệu tràn trong T/C1 BitTOV1 được xoá bởi phần cứng khi thực hiện chương trình điều khiển vectorngắt tương ứng Một cách khác, bit TOV1 có thể được xoá bằng cách ghi giá trị

1 vào bit cờ này Khi bit I trong thanh ghi trạng thái SREG, bit TOIE1(Timer/Counter1 Overflow Interrupt Enable) và bit TOV1 được thiết lập, ngắt

Trang 40

tràn của T/C1 được thực hiện Trong chế độ PWM, bit này được thiết lập khi bộT/C1 bắt đầu đếm từ giá trị $0000.

• Bit 1 : Không sử dụng

• Bit 0 - TOV0 : Bit cờ tràn T/C0 (Timer/Counter0 Overflow Flag)

Bit TOV0 được thiết lập khi xuất hiện một tín hiệu tràn trong T/C0 BitTOV0 được xoá bởi phần cứng khi thực hiện chương trình điều khiển vectorngắt tương ứng Một cách khác, bit TOV0 có thể được xoá bằng cách ghi giá trị

1 vào bit cờ này Khi bit I trong thanh ghi trạng thái SREG, bit TOIE0(Timer/Counter0 Overflow Interrupt Enable) và bit TOV0 được thiết lập, ngắttràn của T/C0 được thực hiện Trong chế độ PWM, bit này được thiết lập khi bộT/C1 bắt đầu đếm từ giá trị $0000

Các ngắt ngoài của µC AT90S8535

Các ngắt ngoài của µC AT90S8535 được gây ra bởi sự thay đổi tín hiệutrên các chân INT1 và INT0 Có thể thấy rằng, nếu được cho phép các ngắtngoài sẽ xảy ra cho dù các chân INT1/INT0 được thiết lập như là các đầu ra.Đặc điểm này cung cấp một cách tạo ra ngắt bằng phần mền Các ngắt ngoài cóthể được tạo ra khi xuất hiện sườn xuống hoặc sườn lên hay mức thấp của tínhiệu Khi ngắt ngoài được cho phép và được thiết lập điều kiện kích hoạt theomức, ngắt sẽ xảy ra trong khoảng thời gian chân được giữ ở mức thấp Các ngắtngoài được thiết lập như mô tả trong thanh ghi điều khiển MCU (MCUCR)

Thanh ghi điều khiển MCU : MCUCR (MCU Control Register)

Thanh ghi MCUCR chứa các bit điều khiển dành cho các chức năng chung

của MCU

• Bit 7 : Không sử dụng

Ngày đăng: 28/12/2014, 12:05

HÌNH ẢNH LIÊN QUAN

Hỡnh 2.1 : Cấu hỡnh chõn của àC AT90S8535 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
nh 2.1 : Cấu hỡnh chõn của àC AT90S8535 (Trang 9)
Hình 2.2 : Sơ đồ khối vi mạch điều khiển AT90S8535 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.2 Sơ đồ khối vi mạch điều khiển AT90S8535 (Trang 12)
Hỡnh 2.3 : Sơ đồ khối kiến trỳc của àC AT90S8535 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
nh 2.3 : Sơ đồ khối kiến trỳc của àC AT90S8535 (Trang 13)
Hỡnh 2.4 : Bản đồ bộ nhớ của  à C AT90S8535 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
nh 2.4 : Bản đồ bộ nhớ của à C AT90S8535 (Trang 15)
Bảng 2.2 : Vị trí các bit trong các thanh ghi I/O - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Bảng 2.2 Vị trí các bit trong các thanh ghi I/O (Trang 27)
Hình 2.11 : Sơ đồ khối mạch chia thời gian của T/C 0 và T/C1 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.11 Sơ đồ khối mạch chia thời gian của T/C 0 và T/C1 (Trang 46)
Hình 2.12 : Sơ đồ khối mạch chia thời gian của T/C2 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.12 Sơ đồ khối mạch chia thời gian của T/C2 (Trang 46)
Hình 2.13 : Sơ đồ khối mạch Timer/Counter0 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.13 Sơ đồ khối mạch Timer/Counter0 (Trang 48)
Hình 2.14 : Sơ đồ khối mạch Timer/Counter1 - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.14 Sơ đồ khối mạch Timer/Counter1 (Trang 49)
Hình 2.20 : Sơ đồ khối mạch SPI - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.20 Sơ đồ khối mạch SPI (Trang 71)
Hình 2.24 : Sơ đồ khối mạch truyền dữ liệu - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.24 Sơ đồ khối mạch truyền dữ liệu (Trang 77)
Hình 2.25 : Sơ đồ khối mạch nhận dữ liệu của UART - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.25 Sơ đồ khối mạch nhận dữ liệu của UART (Trang 79)
Bảng 2.23 : Sự thiết lập UBRR tại các tần số đồng hồ tinh thể khác nhau - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Bảng 2.23 Sự thiết lập UBRR tại các tần số đồng hồ tinh thể khác nhau (Trang 85)
Hình 2.30 : Kết nối nguồn cho bộ ADC - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.30 Kết nối nguồn cho bộ ADC (Trang 97)
Hình 2.31 : Giao diện hiển thị dữ liệu của LCD - tìm hiểu cấu trúc và đặc tính của vi mạch điều khiển AT90S8535
Hình 2.31 Giao diện hiển thị dữ liệu của LCD (Trang 111)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w