In the comment and code extracted below, it is clear that this routine SHOULD set the PxOUT registers, but it does not in Grace 3.0. The previous Grace 2 routine GPIO_graceinit did set these registers. As a workaround I have set them in the user code preamble, but shouldn't Grace do this for you? I believe this is a bug in Grace 3.0.
/*======== PinMux_graceInit ======== * Initialize * * The PinMux registers should be set in a specific order: * PxOUT * PxSEL or PxSELx * PxDIR * PxREN * PxIES * PxIFG * PxIE * * This will ensure that: * - IFG doesn't get set by manipulating the pin function, edge * select, and pull-up/down resistor functionalities (see * Section 8.2.6 of the MSP430 User's manual) * - Glitch-free setup (configuring the OUT register _before_ * setting the pin direction) * - Pull-up/pull-down resistor enable with the correct direction * (.up. vs. .down.) */ void PinMux_graceInit(void)
↧
Forum Post: Grace 3 does not initialize PxOUT
↧