Content originally posted in LPCWare by 正原 on Sun Sep 01 18:51:26 MST 2013
lpc812默认用P0.0(rx)、P0.4(tx)做串口通讯,与另一主单片机连接。连接p0.4(tx)的主单片机那端被拉高了,而且主单片机那端不能修改。
在lpc812 datasheet中,P0.4外部拉高,则进入Deep power-down mode;拉低则退出Deep power-down mode。
lpc812接入主单片机系统后,在上电过程中,需要用到P0.4(TX)与外部通讯握手,而外部(主单片机那端)被拉高了,所以lpc812上电不能正常工作,即主CPU收不到P0.4(TX)发出的握手信号。 在软件的main()函数开始有调试信息,但并没有输出。说明cpu没有正常工作起来。如果lpc不接入主单片机系统,lpc812能正常运行。
看datasheet中说可以禁止p0.4的唤醒功能,于是设置LPC_PMU->DPDCTRL |= (0x1 << 1)禁止后,与lpc812接的另一模块却不能工作。
问题:如果一定要用p0.4通讯,同时外部将p0.4拉高且不能更改,如何实现?