This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430 F5529如何保存一个字端口的值?



程序中用到了P7端口,其中的p7.0 p7.1,p7.2  p7.3端口用作输出端口,现在是想在程序中的一处保存这四个端口的情况

我是这么写的:

定义:int save;

然后程序中某处:

        save=P7OUT;

另一处:

     P7OUT |=save;

问题是我读到的save值有问题,我想确认是不是这个地方的问题,如何更好的保存端口状态的信息

  • 读取IO的值用到的寄存器是PxIN只读寄存器,在程序中读取该寄存器的值可以得到当前IO的状态。

  • sfesly sfesly,

    PxOUT Register是RW的,故应该可以对端口情况进行读取的。

    你只保存这四个输出端口的状态的话,程序写的是不完善的,应该为:

    save=P7OUT & 0x0F;

    P7OUT = 0xF0 ^ save;

    为了进一步验证这样写是正确的,你先给4个端口写个输出状态,用此法后,看看输出状态还对不对?

    希望对你有帮助!O(∩_∩)O~