lpc2000系列微控制器的大部分管腳都具有多種功能,即管腳復(fù)用,但是同一引腳在同一時(shí)刻只能使用其中一個(gè)功能,通過配置相關(guān)寄存器控制多路開關(guān)來連接引腳與片內(nèi)外設(shè)。
外部存儲器寄存器描述——pinsel0
外部存儲器寄存器描述——pinsel1
外部存儲器寄存器描述——pinsel2
外部總線設(shè)置
pinsel[5:4]與數(shù)據(jù)總線和控制線的關(guān)系列表
使用示例——將p0.8、p0.9設(shè)置為txd1、rxd1
通過查閱pinse0寄存器設(shè)置表,得到p0.9和p0.8的控制位為pinsel0[19:16],當(dāng)該域設(shè)置為[0101](0x05)時(shí)選擇 rxd1和 txd1 ;
c代碼:
pinsel0 = 0x05 << 16;
為了不影響別的管腳連接設(shè)置,通常選擇下面的設(shè)置方法。
c代碼:
pinsel0 = (pinsel0 & 0xfff0ffff) | (0x05 << 16);
啟動(dòng)代碼相關(guān)部分
lpc2200系列微控制器是總線開放型芯片,其總線寬度可設(shè)置為8位、16位或32位,對于沒有使用到的總線引腳(比如16位總線寬度時(shí),d16~d31位沒有使用),可作為gpio使用。