我們經(jīng)常要設(shè)置某個I/O口為輸出,或者輸入,或者帶上拉的輸入,在fastavr中是這樣的:
例子:
設(shè)置整個A口為輸出:
ddra=255'十進(jìn)制表示,行首或行尾的單引號之后為注釋,默認(rèn)是綠色
ddra=&hff‘十六進(jìn)制表示,十六進(jìn)制數(shù)加前綴&h
ddra=&B11111111'二進(jìn)制表示,二進(jìn)制數(shù)加前綴&B
設(shè)置A口高四位為輸出,低四位為輸入:
ddra=&B11110000
porta=porta Or &b00001111'用邏輯或的方式打開低四位的上拉而不影響高四位的輸出狀態(tài)
設(shè)置整個B口為輸入:
ddrb=0
ddrb=&h00
ddrb=&b00000000
打開B口的全部上拉,或B口部分上拉:
portb=255:portb=&b11000011'當(dāng)我們要在一行中寫多條語句的時候請將它們用冒號隔開
設(shè)置單個I/O口:
set ddra.7’porta第七位為輸出口
reset ddrb.0’portb.0為輸入口
set portb.0’接著打開portb.0的上拉
當(dāng)我們要清除某些位而不想影響其它位的時候,用邏輯與 and
porta=porta and &B01111110'porta.7 ,porta.0 被清零而不影響其它位
總結(jié):我們?nèi)绻皇窃O(shè)置單個輸入輸出口,我們可以用set ,reset指令,如果要同時改變一個端口的幾個位,那么最好
使用邏輯與或非來完成,and是與可以用來清零,or是或可以用來置位,not是非可以用來取反。