<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Bizarre state of output pin when enabling PInt0 in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/Bizarre-state-of-output-pin-when-enabling-PInt0/m-p/1033422#M40247</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Asier,&lt;/P&gt;&lt;P&gt;I suppose that you can enter pin interrupt and execute the pint_intr_callback() function, but it appears that you can NOT toggle the PIO0_1 pin.&lt;/P&gt;&lt;P&gt;I suppose that you can initialize the PIO0_1 pin as GPIO pin and toggle the pin with the code:&lt;/P&gt;&lt;P&gt;//PIO0_1 as output&lt;BR /&gt;//configure PIO0_1 as output with SDK&lt;BR /&gt;void PIO0_1_Init(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gpio_pin_config_t PIO0_1_config = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kGPIO_DigitalOutput, 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSCON-&amp;gt;SYSAHBCLKCTRL |= 1 &amp;lt;&amp;lt; 7; //enable SWM clock&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SWM0-&amp;gt;PINENABLE0|=0x102;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO-&amp;gt;MASK[0]&amp;amp;=~(0x02);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PortInit(GPIO, 0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIO, 0, 1, &amp;amp;PIO0_1_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinWrite(GPIO,0,1,1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinWrite(GPIO,0,1,0);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;in the the callback function, you can try to use the code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;GPIO_PortToggle(GPIO, 0, 1u &amp;lt;&amp;lt;1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls have a try.&lt;/P&gt;&lt;P&gt;BTW, if you can not enter PIN interrupt, pls refer to the pin interrupt example in SDK.&lt;/P&gt;&lt;P&gt;Hope It can help you&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 04 Feb 2020 09:04:09 GMT</pubDate>
    <dc:creator>xiangjun_rong</dc:creator>
    <dc:date>2020-02-04T09:04:09Z</dc:date>
    <item>
      <title>Bizarre state of output pin when enabling PInt0</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Bizarre-state-of-output-pin-when-enabling-PInt0/m-p/1033421#M40246</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm just starting with NXP's MCUs: I'm trying a simple example. I configure PIO0_10 as input pin and PIO0_1 as output.&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have a square wave in PIO0_10 input and I want to enable PInt0 attached to this input. Then, I want to enable PInt0 interrupt and toggle the output pin PIO0_1 whenever an interrupt callback is happened.&lt;/P&gt;&lt;P&gt;The issue I have is that when I do "PINT_Init(PINT);" my PIO0_1 output gets a bizarre state of 1v.&lt;/P&gt;&lt;P&gt;Any idea what is wrong on my code ? Is there something I'm forgeting ?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Asier.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using LPC822.&lt;/P&gt;&lt;P&gt;My code is next:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define BOARD_INITPINS_BLOQ_PORT 0U&lt;/P&gt;&lt;P&gt;#define BOARD_INITPINS_BLOQ_PIN 1U&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void pint_intr_callback(pint_pin_int_t pintr, uint32_t pmatch_status)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (!change)&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;change = true;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GPIO_PinWrite(BOARD_INITPINS_BLOQ_GPIO, BOARD_INITPINS_BLOQ_PORT, BOARD_INITPINS_BLOQ_PIN, 1);&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;change = false;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GPIO_PinWrite(BOARD_INITPINS_BLOQ_GPIO, BOARD_INITPINS_BLOQ_PORT, BOARD_INITPINS_BLOQ_PIN, 0);&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void init_PInt(void)&lt;BR /&gt;{&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;/* Connect trigger sources to PINT */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;SYSCON_AttachSignal(SYSCON, kPINT_PinInt0, 10);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;/* Initialize PINT */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;PINT_Init(PINT);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* Setup Pin Interrupt 0 for rising edge */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;PINT_PinInterruptConfig(PINT, kPINT_PinInt0, kPINT_PinIntEnableRiseEdge, pint_intr_callback);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;/* Enable callbacks for PINT0 by Index */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;PINT_EnableCallbackByIndex(PINT, kPINT_PinInt0);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(void) {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;/* Init board hardware. */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPins();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootClocks();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPeripherals();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;init_PInt();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(1){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Feb 2020 12:57:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Bizarre-state-of-output-pin-when-enabling-PInt0/m-p/1033421#M40246</guid>
      <dc:creator>asier</dc:creator>
      <dc:date>2020-02-03T12:57:37Z</dc:date>
    </item>
    <item>
      <title>Re: Bizarre state of output pin when enabling PInt0</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Bizarre-state-of-output-pin-when-enabling-PInt0/m-p/1033422#M40247</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Asier,&lt;/P&gt;&lt;P&gt;I suppose that you can enter pin interrupt and execute the pint_intr_callback() function, but it appears that you can NOT toggle the PIO0_1 pin.&lt;/P&gt;&lt;P&gt;I suppose that you can initialize the PIO0_1 pin as GPIO pin and toggle the pin with the code:&lt;/P&gt;&lt;P&gt;//PIO0_1 as output&lt;BR /&gt;//configure PIO0_1 as output with SDK&lt;BR /&gt;void PIO0_1_Init(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gpio_pin_config_t PIO0_1_config = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kGPIO_DigitalOutput, 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSCON-&amp;gt;SYSAHBCLKCTRL |= 1 &amp;lt;&amp;lt; 7; //enable SWM clock&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SWM0-&amp;gt;PINENABLE0|=0x102;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO-&amp;gt;MASK[0]&amp;amp;=~(0x02);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PortInit(GPIO, 0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIO, 0, 1, &amp;amp;PIO0_1_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinWrite(GPIO,0,1,1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinWrite(GPIO,0,1,0);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;in the the callback function, you can try to use the code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;GPIO_PortToggle(GPIO, 0, 1u &amp;lt;&amp;lt;1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls have a try.&lt;/P&gt;&lt;P&gt;BTW, if you can not enter PIN interrupt, pls refer to the pin interrupt example in SDK.&lt;/P&gt;&lt;P&gt;Hope It can help you&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Feb 2020 09:04:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Bizarre-state-of-output-pin-when-enabling-PInt0/m-p/1033422#M40247</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2020-02-04T09:04:09Z</dc:date>
    </item>
  </channel>
</rss>

