GIỚI THIỆU CỔNG VÀO RA ATMEGA128

Download Report

Transcript GIỚI THIỆU CỔNG VÀO RA ATMEGA128

Môn học:
Vi điều khiển
Giảng viên :
Nguyễn Chí Nhân
NHÓM I
1. HOÀNG DUY UYÊN
2. NGUYỄN VƯƠNG THANH
3. NGUYỄN THỊ THẢO
4. NGUYỄN THỊ KIM THỦY
5. TRƯƠNG PHƯỚC THUẬN
 ATmega128 có tất cả 64 chân bao gồm 7
cổng (port ) vào ra 8 bit là : PortA, PortB,
PortC, PortD, PortE, PortF, PortG , tương
ứng với 56 đường vào ra và 8 chân còn lại
RESET, XTAL1, XTAL2, AVCC, AREF, PEN và
2 chân GND.
Sơ đồ chân
ATMEGA128
Cổng vào ra là một trong số các phương
tiện để vi điều khiển giao tiếp với các
Thiết bị ngoại vi.
 Các cổng vào ra của AVR là cổng vào ra hai chiều có
thể định hướng, tức có thể chọn hướng của cổng là
hướng vào (input ) hay hướng ra (output ). Tất các
các cổng vào ra của AVR điều có tính năng Đọc –
Chỉnh sửa – Ghi ( Read – Modify – write ) khi sử dụng
chúng như là các cổng vào ra số thông thường.
CÁCH HOẠT ĐỘNG
Khi khảo sát các cổng như là các cổng vào ra số
thông thường thì tính chất của các cổng ( PortA,
PortB,…PortG ) là tương tự nhau, nên ta chỉ cần
khảo sát một cổng nào đó trong số 7 cổng của vi
điều khiển là đủ.
Mỗi một cổng vào ra của vi điều khiển được liên
kết với 3 thanh ghi : PORTx, DDRx, PINx. ( ở đây x là
để thay thế cho A, B,…G ).
Ba thanh ghi này sẽ được phối hợp với nhau để
điều khiển hoạt động của cổng
1.THANH GHI DDRX
Đây là thanh ghi 8 bit ( có thể đọc ghi ) có chức
năng điều khiển hướng của cổng (là lối ra hay lối
vào ).
Khi một bit của thanh ghi này dược set lên một
thì chân tương ứng với nó được cấu hình thành
ngõ ra.
 Ngược lại, nếu bit của thanh ghi DDRx là 0 thì
chân tương ứng với nó được thiết lập thành ngõ
vào.
2. THANH GHI PORTX.
 PORTx là thanh ghi 8 bit có thể đọc ghi. Đây là
thanh ghi dữ liệu của PORTx.
 Nếu thanh ghi DDRx thiết lập cổng là lối ra, khi đó
giá trị của thanh ghi PORTx cũng là giá trị của các
chân tương ứng của PORTx.
 Khi thanh ghi DDRx thiết lập cổng thành lối vào thì
thanh ghi PORTx đóng vai trò như một thanh ghi
điều khiển cổng.
3. THANH GHI PINX.
 PINx không phải là một thanh ghi thực sự, đây là địa
chỉ trong bộ nhớ I/O kết nối trực tiếp tới các chân
của cổng. Khi ta đọc PORTx tức ta đọc dữ liệu được
chốt trong PORTx, còn khi đọc PINx thì giá trị logic
hiện thời ở chân của cổng tương ứng được đọc.
 Vì thế đối với thanh ghi PINx ta chỉ có thể đọc mà
không thể ghi
Địa chỉ của tất cả các port
4. Chức năng các Port của AVR
Port Port Port Port Port Port Port
A
B
C
D
E
F
G
 PB 7:là ngõ ra so sánh và là ngõ ra của bộ
điều chế xung (PWM) của timer/counter1
và timer/counter2.
 PB6: ngõ ra bên ngoài cho ngõ ra so sánh
B của bộ timer/counter1.
 PB5: ngõ ra bên ngoài cho ngõ ra so sánh
A của bộ timer/counter1.
 PB4: ngõ ra bên ngoài cho ngõ ra so sánh
B của bộ timer/counter1.
 PB3: ngõ vào master , ra slave dữ liệu cho
SPI. Khi SPI được khởi tạo là tầng chủ thì
pin 3 được mặc định là ngõ vào bất chấp
DDB3. khi SPI được khởi tạo là tầng tớ thì
pin3 bị điều khiển trực tiếp bởi DDB3.
 PB2: ngõ vào slave , ra master dữ liệu cho
SPI . Khi SPI được khởi tạo là tầng tớ thì
pin 2 được mặc định là ngõ vào bất chấp
DDB2,khi SPI được khởi tạo là tầng chủ thì
pin2 bị điều khiển trực tiếp bởi DDB2.
 PB1:ngõ vào slave ra master clock cho SPI
khi SPI được khởi tạo là tầng chủ thì pin 1
được mặc định là ngõ vào bất chấp
DDB1,khi SPI được khởi tạo là tầng tớ thì
pin1 bị điều khiển trực tiếp bởi DDB1.
 PB0: là ngõ vào tầng slave khi ) khi SPI
được khởi tạo là tầng tớ thì pin 2 được
mặc định là ngõ vào bất chấp DDB0,khi
SPI được khởi tạo là tầng chủ thì pin2 bị
điều khiển trực tiếp bởi DDB0.
 PD 7:bộ đếm nguồn ngược
2(Timer/Counter2)
 PD 6:bộ đếm nguồn ngược
1(Timer/Counter1)
 PD 5:để giao tiếp vào/ra bên ngoài với
USART1. do DDD4 điều khiển vào ra .
XCK1 chỉ hoạt động khi USART1 hoạt
động đồng bộ.
 PD 4:hoạt động như ngõ vào tự kích của
bộ Timer/Counter1.
 PD 3: nguồn ngắt ngoại 3.Khi máy phát
USART1 được kích hoạt thì pin được mặc
định là ngõ ra bất chấpDDD3.
 PD 2:nguồn ngắt ngoại 2,khi máy thu
USART1 được kích hoạt thì nó là input
bất chấp DDD2
 PD 1:nguồn ngắt ngoại 1,và là ngõ
giao tiếp nối tiếp hai dây.
 PE 7:ngõ vào nguồn ngắt ngoại 7,ngõ vào
tự kích cho bộ (Timer/counter3)
 PE 6: ngõ vào nguồn ngắt ngoại 6,hay làm
ngõ vào xung clock cho bộ
(Timer/Counter3).
 PE 5: ngõ vào nguồn ngắt ngoại 5,và là
ngõ ra bộ so sánh C,nó còn là lối ra bộ
điều chế độ rộng xung (PWM) cho
timer/counter
 PE 4: ngõ vào nguồn ngắt ngoại 4,và là
ngõ ra bộ so sánh B,nó còn là lối ra bộ
điều chế độ rộng xung (PWM) cho
timer/counter
 PE 3:nối với lối vào âm của bộ so sánh
tương tự ; ngõ ra bộ so sánh A,nó còn là lối
ra bộ điều chế độ rộng xung (PWM) cho
timer/counter
 PE 2:nối với lối vào dương của bộ so sánh
tương tự,được điều khiển trực tiếp bởi giá
trị dương đưa vào của bộ so sánh
analog.đồng thời là ngõ vào/ra xung clock
của bộ USART0 và được điều khiển bởi
DDE2, XCK0 pin hoạt động khi USART0 la
đồng bộ.
 PE1:được dùng như ngõ ra dữ liệu của
ATmega128 hay chân phát của UART0
 PE 0: là ngõ vào
 PF 7:ngõ vàobộ chuyển đổi tương tự sang
số kênh7,dữ liệu vào được dịch đến thanh
ghi cấu trúc hoặc thanh ghi dử liệu,khi thiết
bi JTAG được kích hoạt thì pin không hoạt
động như pin I/O.
 PF6: … kênh 6
 PF5: … kênh 5
 PF4: … kênh 4
 PF 3/2/1/0:ngõ vào bộ chuyển đổi tương tự
sang số kênh 3/2/1/0.
 PG 4/3:một tinh thể
dao động được nối với
pin,và pin không còn
dùng như pin I/O
 PG 2:kíchhoạt chốt địa
chỉ cho bộ nhớ ngoài.
 PG 1:đọc vào tín hiệu
điều khiển bộ nhớ dữ
liệu ngoài.
 PG 0:viết ra tín hiệu
điều khiển bộ nhớ
ngoài