You are on page 1of 26

Chng 3: CC CNG VO/RA

Th.S L Quc n danlequoc@yahoo.com

Ni dung
3.1 GII THIU 3.2 CHC NNG CC CNG VO/RA 3.3 CC CHC NNG KHC CA CNG VO/RA 3.4 CC THANH GHI CNG VO/RA

3.1 GII THIU


Cc cng AVR c chc nng c-sa i-ghi nh cc port nhp/xut s thng
thng. iu ny c ngha l hng ca mt chn port no c th thay i m khng cn ch nh trc vi lnh SBI v CBI.

x: k hiu port n: bit c th ca port

S tng ng chn nhp/xut


3

3.2 CHC NNG CC CNG VO/RA


Mi Port gm c ba thanh ghi DDxn, PORTxn v PINxn. Cc bit DDxn
c truy xut ti a ch vo/ra DDRx, cc bit PORTxn ti a ch vo/ra PORTx v cc bit PINxn ti a ch vo/ra PINx. Bit DDxn trong thanh ghi DDRx la chn hng ca chn ny. Nu DDxn c ghi mc [1], Pxn c nh nh mt u ra. Nu DDxn c ghi lgic [0], Pxn c nh nh mt u vo. Nu PORTxn c ghi lgic [1] khi chn c nh nh mt u vo, in tr ko ln c kch hot. chuyn in tr ko ln khng hot ng, PORTxn phi c ghi logic [0] hay chn phi c nh nh mt u ra. Nhng port l trng thi khi mt iu kin reset tr nn tch cc, ngay khi khng c ng h ang chy. Nu PORTxn c ghi lgic [1] khi mt chn c nh nh mt u ra, th chn port c a ln cao (1). Nu PORTxn c ghi lgic [0] khi chn c nh nh mt chn u ra, chn port c iu khin thp (0). 4

3.2 CHC NNG CC CNG VO/RA

S chn nhp/xut s

3.2 CHC NNG CC CNG VO/RA

Chc nng cc cng xen k

3.2 CHC NNG CC CNG VO/RA


Tn tn hiu PUOE Tn y Pull-Up Override Enable Pull-Up Override Value Data Direction Override Enable Data Direction Override Value Port Value Override enable M t Nu c t, cho php ko ln c iu khin bng tn hiu PUOV. Nu xo tn hiu ny, ko ln c cho php khi {DDxn, PORTxn, PUD}=0b010 Nu PUOE c t, ko ln c/khng c php khi PUOV c t/xo bt chp vic ci t cc bit thanh ghi DDxn, PORTxn, PUD Nu c t, cho php li ng ra c iu khin bng tn hiu DDOV. Nu xo tn hiu ny, li ng ra c iu khin bng bit thanh ghi DDxn Nu DDOE c t, li ng ra c/khng c php khi DDOV c t/xo bt chp vic ci t bit thanh ghi DDxn Nu c t v li ng ra cho php, gi tr port c iu khin bi tn hiu PVOV. Nu PVOE c xo v li ng ra cho php, gi tr port c iu khin bng bit thanh ghi PORTxn

PUOV

DDOE

DDOV PVOE

3.2 CHC NNG CC CNG VO/RA

PVOV DIEOE

Port Value Override Value Digital Input Enale Override Enable

Nu PVOE c t, gi tr port c t ti PVOV, bt chp vic t bit thanh ghi PORTxn Nu c t, cho php ng vo s c iu khin bng tn hiu DIEOV. Nu xo tn hiu ny, cho php ng vo s c xc nh bng trng thi MCU (ch bnh thng, cc ch ng) Nu DIEOE c t, ng vo s c/khng c php khi DIEOV c t/xo bt chp trng thi MCU (ch bnh thng, cc ch ng) Ng vo s. Trong hnh Ng vo/ ra tng t, c th s dng song hng

DIEOV

Digital Input Enale Override Value Digital Input Analog Input/Output

DI AIO

3.2 CHC NNG CC CNG VO/RA


Thanh ghi vo/ra chc nng c bit - SFIOR

Bit 2 PUD: Pull-up disable


Khi PUD = 1, cc in tr ko ln cc port I/O c b qua ngay c nu cc thanh ghi DDxn v PORTxn c nh hnh cho php cc ko ln ({DDxn, PORTxn, PUD} = 0b01)

3.2 CHC NNG CC CNG VO/RA

10

3.3 CC CHC NNG XEN K CA CNG VO/RA

Port A
Port A c mt chc nng khc, n l ng vo tng t ca b bin i
ADC. Nu c mt s chn Port A c cu hnh lm ng ra th nht thit khng c thay i t ngt cc chn ny trong khi c mt qu trnh chuyn i ang din ra, nu khng th kt qu chuyn i s b sai lch.

11

3.3 CC CHC NNG XEN K CA CNG VO/RA

Port B

12

3.3 CC CHC NNG XEN K CA CNG VO/RA


SCK Port B, Bit 7: Chn ng vo Slave clock, ng ra Master clock cho
knh SPI. Khi SPI c dng nh mt Slave, chn ny mc nhin c cu hnh l ng vo bt chp bit DDB7 bit. Khi SPI c dng lm mt Master, hng truyn d liu trn chn ny c iu khin bi DDB7 bit. Khi chn ny c t lm ng vo, PORT B7 bit vn s iu khin in tr ko ln. MISO Port B, Bit 6 : Ng vo d liu Master, ng ra d liu Slave cho knh SPI. Khi SPI c dng nh mt Slave, chn ny mc nhin c cu hnh l ng vo bt chp DDB6 bit. Khi SPI c dng nh mt Slave, hng truyn d liu trn chn ny do DDB6 iu khin. Khi chn ny b p lm ng vo, PORT B6 bit vn s iu khin in tr ko ln. MOSI Port B, Bit 5 : Ng ra d liu Master, ng vo d liu Slave cho knh SPI. Khi SPI c dng nh mt Slave, chn ny mc nhin c cu hnh l ng vo bt chp DDB5 bit. Khi SPI c dng nh mt Slave, hng truyn d liu trn chn ny do DDB5 iu khin. Khi chn ny b p lm ng vo, PORT B5 bit vn s iu khin in tr ko ln.
13

3.3 CC CHC NNG XEN K CA CNG VO/RA


SS Port B, Bit 4 : Slave la chn ng vo. Khi SPI c dng nh mt
Slave, chn mc nhin c cu hnh l ng bt chp DDB4 bit. Lc ny, nu khi b p xung mc thp th s lm kch hot SPI. Khi SPI c dng nh mt Master, hng truyn d liu trn chn ny do DDB4 iu khin. Khi chn ny b p lm ng vo, PORT B4 bit vn s iu khin in tr ko ln. AIN1/OC0 Port B, Bit 3 AIN1, ng vo m b so snh tng t. Cu hnh chn port nh ng vo vi in tr ko ln bn trong khng hot ng chc nng port s trnh nhiu vi chc nng ca b so snh tng t. OC0, ng ra b so snh: chn PB3 c th phc v nh ng vo ngoi cho b so snh b Timer/Counter0. Chn PB3 phi c cu hnh nh mt ng ra (t DDB3 [1]) phc v chc nng ny. Chn OC0 l chn ng ra cho chc nng timer ch PWM
14

3.3 CC CHC NNG XEN K CA CNG VO/RA


AIN0/INT2 Port B, Bit 2
AIN0, ng vo dng b so snh tng t. Cu hnh chn port nh ng vo vi in tr ko ln bn trong khng hot ng chc nng port s trnh nhiu vi chc nng ca b so snh tng t. INT2, ngun ngt ngoi 2 : chn PB2 c th phc v nh mt ngun ngt ngoi ti MCU. T1 Port B, Bit 1 : Ngun ca b Timer/Counter1. T0/XCK Port B, Bit 0 T0, ngun b m Timer/Counter1. XCK, ng h ngoi USART. Thanh ghi nh hng d liu (DDB0) iu khin ng h l ng ra (DDB0 c t) hay l ng vo (DDB0 c xo). Chn XCK ch c tch cc khi USART hot ng trong ch ng b.

15

3.3 CC CHC NNG XEN K CA CNG VO/RA

Port C

16

3.3 CC CHC NNG XEN K CA CNG VO/RA


TOSC2 Port C, Bit 7 : TOSC2, chn b dao ng Timer 2 : Khi bit AS2
trong thanh ghi ASSR c set ln [1] cho php ng h bt ng b ca b Timer/Counter2, chn PC7 khng c kt ni t port v tr thnh ng ra o ca b khuch i dao ng. Trong ch ny, mt b dao ng thch anh c kt ni ti chn ny v chn khng th dng nh chn I/O. TOSC1 Port C, Bit 6 : TOSC1, chn b dao ng Timer 1 : Khi bit AS2 trong thanh ghi ASSR c set ln [1] cho php ng h bt ng b ca b Timer/Counter2, chn PC6 khng c kt ni t port v tr thnh ng vo ca b khuch i dao ng o. Trong ch ny, mt b dao ng thch anh c kt ni ti chn ny v chn khng th dng nh chn I/O. TDI Port C, Bit 5 : TDI, JTAG kim tra d liu vo : D liu u vo ni tip c dch trong thanh ghi lnh hoc thanh ghi d liu. Khi giao din JTAG c cho php, chn ny khng th dng nh I/O.
17

3.3 CC CHC NNG XEN K CA CNG VO/RA


TDO Port C, Bit 4 : TDO, JTAG kim tra d liu ra : D liu u ra ni
tip t thanh ghi lnh hoc thanh ghi d liu. Khi giao din JTAG c cho php, chn ny khng th dng nh I/O. TMS Port C, Bit 3 : TMS, JTAG kim tra chn ch : Chn ny dng cho vic iu hng thng qua my trng thi iu khin TAP. Khi giao din JTAG c cho php, chn ny khng th dng nh I/O. TCK Port C, Bit 2 : TCK, JTAG kim tra ng h : thao tc JTAG ng b ti TCK. Khi giao din JTAG cho php, chn ny khng th dng nh chn I/O. SDA Port C, Bit 1 : SDA, d liu giao din ni tip 2 dy : Khi bit TWEN trong thanh ghi TWCR c set ln [1] cho php b giao din ni tip 2 dy, chn PC1 khng c kt ni t port v tr thnh chn I/O d liu ni tip cho b giao din ni tip 2 dy. Trong ch ny, c mt b lc gai trn chn trit nhng gai ngn hn 50ns trong tn hiu vo.
18

3.3 CC CHC NNG XEN K CA CNG VO/RA


SCL Port C, Bit 0 : SCL, ng h giao din ni tip 2 dy : Khi bit
TWEN trong thanh ghi TWCR c set ln [1] cho php b giao din ni tip 2 dy, chn PC0 khng c kt ni t port v tr thnh chn I/O d liu ni tip cho b giao din ni tip 2 dy. Trong ch ny, c mt b lc xung nhn trn chn trit nhng gai ngn hn 50ns trong tn hiu vo.

19

3.3 CC CHC NNG XEN K CA CNG VO/RA

Port D

20

3.3 CC CHC NNG XEN K CA CNG VO/RA


OC2 Port D, Bit 7 : Ng ra b so snh b Timer/Counter2. Chn PD7
c th dng nh ng ra bn ngoi dng so snh ng ra b nh thi Timer/Counter2. OC2 phi c cu hnh lm ng ra (DDD7 c set [1]) thc hin chc nng ny. OC2 cn c dng lm chn ng ra cho chc nng Timer ca ch PWM. ICP1 Port D, Bit 6 : Chn bt tn hiu ng vo. Chn PD6 c th hot ng nh mt chn bt tn hiu ng vo cho b Timer/Counter1. OC1A Port D, Bit 5 : OC1A, ng ra A b so snh ng ra. Chn PD5 c th dng nh ng ra bn ngoi cho b so snh A ng ra b nh thi Timer/Counter1. Chn ny phi c cu hnh nh mt ng ra (DDD5 c set ln [1]) phc v chc nng ny. Chn OC1A cng l chn ng ra cho chc nng Timer ca ch PWM. OC1B Port D, Bit 4 : OC1B, ng ra B b so snh ng ra. Chn PD4 c th dng nh ng ra bn ngoi cho b so snh B ng ra b nh thi Timer/Counter1. Chn ny phi c cu hnh nh mt ng ra (DDD4 c set ln [1]) phc v chc nng ny. Chn OC1B cng l 21 chn ng ra cho chc nng Timer ca ch PWM.

3.3 CC CHC NNG XEN K CA CNG VO/RA


INT1 Port D, Bit 3 : INT1, ngun ngt ngoi 1 : Chn PD3 c th dng
nh mt ngun ngt ngoi. INT0 Port D, Bit 2 : INT0 ngun ngt ngoi 0 : Chn PD2 c th dng nh mt ngun ngt ngoi. TXD Port D, Bit 1 : TXD, truyn d liu (chn ng ra d liu cho USART). Khi b truyn USART c cho php, chn ny c cu hnh nh mt ng ra bt chp gi tr ca DDD1. RXD Port D, Bit 0 : RXD, nhn d liu (chn ng ra d liu cho USART). Khi b nhn USART c cho php, chn ny c cu hnh nh mt ng vo bt chp gi tr ca DDD0. Khi USART p chn ny lm ng vo, in tr ko ln c th c iu khin bng bit PORTD0.

22

3.4 CC THANH GHI CNG VO/RA

Cc thanh ghi Port A:

23

3.4 CC THANH GHI CNG VO/RA

Cc thanh ghi Port B:

24

3.4 CC THANH GHI CNG VO/RA

Cc thanh ghi Port C:

25

3.4 CC THANH GHI CNG VO/RA

Cc thanh ghi Port D:

26

You might also like