<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Forum - Recent Threads</title><link>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><lastBuildDate>Tue, 09 May 2023 17:53:56 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum" /><item><title>PSoC6S4 Vector table of the cm0+ in flash.</title><link>https://community.element14.com/thread/52905?ContentTypeID=0</link><pubDate>Tue, 09 May 2023 17:53:56 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:82f87a1e-2b09-40e8-9d0c-29e550a2015e</guid><dc:creator>Digimorf</dc:creator><slash:comments>5</slash:comments><comments>https://community.element14.com/thread/52905?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52905/psoc6s4-vector-table-of-the-cm0-in-flash/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Has anyone tried to leave the vector table of the cm0+ in flash and configure an interrupt?&lt;/p&gt;
&lt;p&gt;By default it is copied into SRAM. No doubt about it&amp;#39;s faster to fetch the addresses of the IRQ handlers at runtime, but I need to check if the access to SRAM by both cores causes jitter in fetching the IRQ handlers.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I tried to customize the startup file of the cm0+, but something must be inherited by the PDL such as the ram_table_address.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>CY8C62 DMA from buffer to GPIO P10_0..2</title><link>https://community.element14.com/thread/52607?ContentTypeID=0</link><pubDate>Wed, 15 Mar 2023 23:51:41 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:ec48e0d6-dd34-4b25-9004-0a9df184b8f0</guid><dc:creator>Digimorf</dc:creator><slash:comments>8</slash:comments><comments>https://community.element14.com/thread/52607?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52607/cy8c62-dma-from-buffer-to-gpio-p10_0-2/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I am working on the configuration of a DMAC channel for streaming data bytes from a buffer to the GPIO port 10, using only GPIOs from 0 to 2. I think I am missing something but I really can&amp;#39;t make it work.&lt;/p&gt;
&lt;p&gt;Since I am learning for now I am triggering the DMA by simply enabling the block, next I will trigger it with a CC0 of a counter. But, let&amp;#39;s see what I got so far.&lt;/p&gt;
&lt;p&gt;I have started an &amp;quot;Empty Project&amp;quot; from the getting started section. Then in the &amp;quot;Device Configurator&amp;quot; I simply set the DMAC channel 0 for a transfer of 1 byte.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/* NOTE: This is a preview only. It combines elements of the
 * cycfg_dmas.c and cycfg_dmas.h files located in the folder
 * C:/Users/Francesco/mtw/Empty_App_1/bsps/TARGET_APP_CY8CKIT-062S4/config/GeneratedSource.
 */

#include &amp;quot;cy_dmac.h&amp;quot;
#if defined (CY_USING_HAL)
    #include &amp;quot;cyhal_hwmgr.h&amp;quot;
#endif //defined (CY_USING_HAL)

#define cpuss_0_dmac_0_chan_0_HW DMAC
#define cpuss_0_dmac_0_chan_0_CHANNEL 0U
#define cpuss_0_dmac_0_chan_0_IRQ cpuss_interrupts_dmac_0_IRQn

cy_stc_dmac_descriptor_config_t cpuss_0_dmac_0_chan_0_Descriptor_0_config = 
{
    .retrigger = CY_DMAC_RETRIG_IM,
    .interruptType = CY_DMAC_1ELEMENT,
    .triggerOutType = CY_DMAC_1ELEMENT,
    .channelState = CY_DMAC_CHANNEL_ENABLED,
    .triggerInType = CY_DMAC_1ELEMENT,
    .dataPrefetch = false,
    .dataSize = CY_DMAC_WORD,
    .srcTransferSize = CY_DMAC_TRANSFER_SIZE_WORD,
    .dstTransferSize = CY_DMAC_TRANSFER_SIZE_WORD,
    .descriptorType = CY_DMAC_SINGLE_TRANSFER,
    .srcAddress = NULL,
    .dstAddress = NULL,
    .srcXincrement = 0,
    .dstXincrement = 0,
    .xCount = 1,
    .srcYincrement = 1,
    .dstYincrement = 1,
    .yCount = 1,
    .nextDescriptor = NULL,
};
cy_stc_dmac_descriptor_t cpuss_0_dmac_0_chan_0_Descriptor_0 = 
{
    .ctl = 0UL,
    .src = 0UL,
    .dst = 0UL,
    .xSize = 0UL,
    .xIncr = 0UL,
    .ySize = 0UL,
    .yIncr = 0UL,
    .nextPtr = 0UL,
};
cy_stc_dmac_channel_config_t cpuss_0_dmac_0_chan_0_channelConfig = 
{
    .descriptor = &amp;amp;cpuss_0_dmac_0_chan_0_Descriptor_0,
    .priority = 3,
    .enable = false,
    .bufferable = false,
};
#if defined (CY_USING_HAL)
    const cyhal_resource_inst_t cpuss_0_dmac_0_chan_0_obj = 
    {
        .type = CYHAL_RSC_DMA,
        .block_num = 2U,
        .channel_num = cpuss_0_dmac_0_chan_0_CHANNEL,
    };
#endif //defined (CY_USING_HAL)


void reserve_cycfg_dmas(void)
{
#if defined (CY_USING_HAL)
    cyhal_hwmgr_reserve(&amp;amp;cpuss_0_dmac_0_chan_0_obj);
#endif //defined (CY_USING_HAL)
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The three GPIOs P10_0..2 are configured as:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;const cy_stc_gpio_pin_config_t CYBSP_A0_config = 
{
    .outVal = 0,
    .driveMode = CY_GPIO_DM_STRONG_IN_OFF,
    .hsiom = CYBSP_A0_HSIOM,
    .intEdge = CY_GPIO_INTR_DISABLE,
    .intMask = 0UL,
    .vtrip = CY_GPIO_VTRIP_CMOS,
    .slewRate = CY_GPIO_SLEW_FAST,
    .driveSel = CY_GPIO_DRIVE_1_2,
    .vregEn = 0UL,
    .ibufMode = 0UL,
    .vtripSel = 0UL,
    .vrefSel = 0UL,
    .vohSel = 0UL,
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Then in the main.c I set the destination and source:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#include &amp;quot;cyhal.h&amp;quot;
#include &amp;quot;cybsp.h&amp;quot;

#define scanline_dma_HW             cpuss_0_dmac_0_chan_0_HW
#define scanline_dma_descriptor     cpuss_0_dmac_0_chan_0_Descriptor_0
#define scanline_dma_descriptor_cfg cpuss_0_dmac_0_chan_0_Descriptor_0_config
#define scanline_dma_CH             cpuss_0_dmac_0_chan_0_CHANNEL
#define scanline_dma_CH_cfg         cpuss_0_dmac_0_chan_0_channelConfig

uint32_t pix = 0x5;
GPIO_PRT_Type* scanline_rgb_port = GPIO_PRT10;


int main(void)
{
    cy_rslt_t result;

#if defined (CY_DEVICE_SECURE)
    cyhal_wdt_t wdt_obj;

    /* Clear watchdog timer so that it doesn&amp;#39;t trigger a reset */
    result = cyhal_wdt_init(&amp;amp;wdt_obj, cyhal_wdt_get_max_timeout_ms());
    CY_ASSERT(CY_RSLT_SUCCESS == result);
    cyhal_wdt_free(&amp;amp;wdt_obj);
#endif

    /* Initialize the device and board peripherals */
    result = cybsp_init();

    /* Board init failed. Stop program execution */
    if (result != CY_RSLT_SUCCESS)
    {
        CY_ASSERT(0);
    }

    /* Enable global interrupts */
    __enable_irq();

    Cy_DMAC_Descriptor_Init(&amp;amp;scanline_dma_descriptor,
                            &amp;amp;scanline_dma_descriptor_cfg);

    Cy_DMAC_Descriptor_SetSrcAddress(&amp;amp;scanline_dma_descriptor,
                                     (void*)&amp;amp;pix);

    Cy_DMAC_Descriptor_SetDstAddress(&amp;amp;scanline_dma_descriptor,
                                     (void*)(scanline_rgb_port-&amp;gt;OUT));

    Cy_DMAC_Channel_Init(scanline_dma_HW,
                         scanline_dma_CH,
                         &amp;amp;scanline_dma_CH_cfg);

    Cy_DMAC_Channel_SetDescriptor(scanline_dma_HW,
                                  scanline_dma_CH,
                                  &amp;amp;scanline_dma_descriptor);

    Cy_DMAC_Channel_Enable(scanline_dma_HW,
                          scanline_dma_CH);

    Cy_DMAC_Enable(scanline_dma_HW);

    for (;;)
    {

    }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;My Logic Analyzer should show signals 0 and 2 pulsing from low to high but nothing happens, I can&amp;#39;t understand if the transfer doesn&amp;#39;t start, or if the GPIO port is not correct for output.&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t been lucky in finding an example of the use of DMA on GPIOs, so I am asking here&amp;nbsp;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>how to include 'cy_retarget_io.h' into our project?</title><link>https://community.element14.com/thread/52598?ContentTypeID=0</link><pubDate>Mon, 13 Mar 2023 20:09:07 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:11a422e6-22f0-4b16-b8e3-e2856506ee40</guid><dc:creator>Sudeep AJ</dc:creator><slash:comments>3</slash:comments><comments>https://community.element14.com/thread/52598?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52598/how-to-include-cy_retarget_io-h-into-our-project/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;So currently I am experimenting with HAL UART APIs and I learnt that there is cy_tetarget_io which helps us to use printf function with UART. I used it with the example project provided and it worked perfectly. But when I tried to include it in my Empty Project I am getting an fatal error. Can anyone please help me with this issue?&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" style="max-height:360px;max-width:640px;"  src="https://community.element14.com/resized-image/__size/1280x720/__key/communityserver-discussions-components-files/380/Screenshot-from-2023_2D00_03_2D00_14-01_2D00_38_2D00_09.png" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Is anyone using PSoC creator to build projects?</title><link>https://community.element14.com/thread/52582?ContentTypeID=0</link><pubDate>Sat, 11 Mar 2023 09:51:43 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:d8296b1b-4888-4254-a6d4-3c187a5c61a8</guid><dc:creator>Sudeep AJ</dc:creator><slash:comments>6</slash:comments><comments>https://community.element14.com/thread/52582?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52582/is-anyone-using-psoc-creator-to-build-projects/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;If it can be used could anyone please tell me which Device to select in the PSoC creator?&lt;/p&gt;
&lt;p&gt;This is the first time exposure for me to work with something like this and I am taking time to learn and get comfortable using the IDEs before jumping into my project. I tried running example codes with Modus Toolbox but I feel I need to understand the code, but I am not able to find any documents explaining the code completely, if anyone could help me with this I would appreciate that.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>PSoC creator</title><link>https://community.element14.com/thread/52562?ContentTypeID=0</link><pubDate>Mon, 06 Mar 2023 23:57:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:21951a15-b477-4419-b92d-e7bfc95e0a7c</guid><dc:creator>Digimorf</dc:creator><slash:comments>5</slash:comments><comments>https://community.element14.com/thread/52562?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52562/psoc-creator/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Is it possible to use PSoC creator to create an application for the CY8CKIT-062S4? I didn&amp;#39;t see this kit in the supported ones&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How's the challenge going for you?</title><link>https://community.element14.com/thread/52500?ContentTypeID=0</link><pubDate>Fri, 24 Feb 2023 12:46:03 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:dd747108-7aa4-49db-9089-2ca3c15ebcd1</guid><dc:creator>cstanton</dc:creator><slash:comments>11</slash:comments><comments>https://community.element14.com/thread/52500?ContentTypeID=0</comments><wfw:commentRss>https://community.element14.com/challenges-projects/design-challenges/at-the-core-design-challenge/f/forum/52500/how-s-the-challenge-going-for-you/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Any unexpected hiccups so far? Deviating from your plans? Life getting in the way?&lt;/p&gt;
&lt;p&gt;Or is it all working out just fine?&lt;/p&gt;
&lt;p&gt;Don&amp;#39;t be afraid to post in the forums if you&amp;#39;re needing some help with what you&amp;#39;re doing, too. While there are winners to the design challenge,&amp;nbsp;getting to grips with the hardware / your knowledge isn&amp;#39;t really being assessed and we&amp;#39;d rather foster a spirit of helping one another.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>