請教有關C8051F040 P4~P7 使用方式
請教一下有關於P4~P7 IO的使用問題~
小弟目前在測試C8051F040的IO腳位
因為P0~P3可規劃給一些其他的功能使用(UR,INT,TimerINT,ADC2等等)
所以想把P4~P7拿來當作一般IO來使用
可是發現使用相同的設定,還是無法控制P4~P7的腳位(P0~P3沒有問題)
小弟是先宣告 1.6跟7.6
sbit LED1 = P1^6;
sbit LED2 = P7^6;
然後Port設定
void PORT_Init (void)
{
char SFRPAGE_SAVE = SFRPAGE;
SFRPAGE = CONFIG_PAGE;
XBR0 = 0x04;
XBR1 = 0x00;
XBR2 = 0x40;
P0MDOUT |= 0x01;
P1MDOUT |= 0x40;
P7MDOUT |= 0x40;
SFRPAGE = SFRPAGE_SAVE;
}
接著用UART傳Data給MCU
如果MCU確認Data正確就將
LED1 = 1;
LED2 = 1;
結果:LED1(1.6腳)亮了 , LED2(7.6腳)沒亮
問題:為什麼相同的設定(1.6跟7.6皆設定為推挽放大),卻有不同的結果?
所以小弟在想應該是P4~P7如果要當作一般IO腳應該有其他的設定。
小弟想把AT89S52上的C code移植到C8051F040,可是P4~P7使用這邊卡住了,
如果版主或其他知道問題點的朋友可以提點一下小弟,謝謝你 ^^