<?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: MPC5604 eMIOS SAOCmode? in MPC5xxx</title>
    <link>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466222#M1809</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The channel CADR must be less or equal to external bus CADR register otherwise the FLAG is not set and output is not toggled.&lt;/P&gt;&lt;P&gt;So if CHANNEL#23 CADR=1000&amp;nbsp; and CHANNEL#18 CADR=1000 then the FLAG is set each 1ms. In your code you will see 2ms square wave on the LED. The same will be if you will use&amp;nbsp; CHANNEL#23 CADR=1000&amp;nbsp; and CHANNEL#18 CADR=500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BTW if using SAOC mode you can see square wave directly on the eMIOS output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Petr&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 05 Jan 2016 08:55:13 GMT</pubDate>
    <dc:creator>PetrS</dc:creator>
    <dc:date>2016-01-05T08:55:13Z</dc:date>
    <item>
      <title>MPC5604 eMIOS SAOCmode?</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466219#M1806</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,all:&lt;/P&gt;&lt;P&gt;i try to use the emios_0 channel18 in&amp;nbsp; SAOC mode to output a pulse. In the main(),&amp;nbsp; polling the EMIOS_0.CH[18].CSR.B.FLAG instead of using the interrupt.&amp;nbsp; but cannot find the FLAG set.&lt;/P&gt;&lt;P&gt;Here is the code:&lt;/P&gt;&lt;P&gt;(1)&amp;nbsp; how is BUS_ A's clock generated? how to confirm the clock work?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; channel 18 has no internal clocks like channel 1-8, so choose the BUS_ A。&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;(2)&amp;nbsp; SAOC compared the data stored in the register A1 with internal counter, am i right?&amp;nbsp;&amp;nbsp; what is the internal clock here?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;(3) does the freeze mode matter when i use PE to debug SAOC,&amp;nbsp; i had disable the freeze mode ,but it didn't help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;emois_0_init()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; SIU.PCR[66].R = 0x0603;&amp;nbsp;&amp;nbsp;&amp;nbsp; //set as emios&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.MCR.B.GPRE&amp;nbsp; = 63;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // global prescalser set 63&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.MCR.B.GPREN = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // prescaler enable&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.MCR.B.GTBE&amp;nbsp; = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // enable global time base&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.MCR.B.FRZ&amp;nbsp;&amp;nbsp; = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // disable the freeze.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.BSL&amp;nbsp;&amp;nbsp; =&amp;nbsp; 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //CLOCK select BUS_ A,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.EDSEL&amp;nbsp; = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //troggle &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.UCPRE =&amp;nbsp; 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //prescaler set 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.UCPEN =&amp;nbsp; 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //enable &lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;prescaler&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.FREN&amp;nbsp; =&amp;nbsp; 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //disable freeze mode&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.FORCMA = 0;&amp;nbsp; //&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.FORCMB = 0;&amp;nbsp; //&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CCR.B.MODE&amp;nbsp; =&amp;nbsp; 3;&amp;nbsp;&amp;nbsp;&amp;nbsp; //select SAOC mode&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CSR.B.FLAG&amp;nbsp; = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;&amp;nbsp; EMIOS_0.CH[18].CADR.R=5000;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;the main:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;main:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SWT_DisableWatchDog();&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM_Init();&amp;nbsp;&amp;nbsp;&amp;nbsp; //64MHZ&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; emois_0_init();&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;// EnableExternalInterrupts();&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(EMIOS_0.CH[18].CSR.B.FLAG&amp;nbsp; == 1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EMIOS_0.CH[18].CSR.B.FLAG&amp;nbsp; = 1; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EMIOS_0.CH[18].CADR.R=500; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; };&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #444444; font-family: Tahoma, 'Microsoft Yahei', Simsun;"&gt;thank you very much for your time !!~&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Jan 2016 09:50:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466219#M1806</guid>
      <dc:creator>binpenghu</dc:creator>
      <dc:date>2016-01-04T09:50:08Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5604 eMIOS SAOCmode?</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466220#M1807</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Counter bus A is driven by the Unified Channel #23. So you should set the channel 23 to the MCB mode and set the counter boundary by CADR register so the internal counter counts from 1 to CADR value. You can check the CNT register is changed within debugger and also the FLAG is set on match with CADR value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Yes, counter bus in SAOC mode can be either internal or external and is selected through bits BSL[0:1]. The channel’s CNT register represents internal counter bus, but as you wrote the channel 18 (type Y) does not have internal counter implemented, so it cannot work for you. You have to select counter bus A or D (channel 16).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. When in debug mode, bit FRZ in the EMIOSMCR and bit FREN in the EMIOSC[n] register are both set, the internal counter and Unified Channel capture and compare functions are halted. The UC is frozen in its current state.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Petr&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Jan 2016 21:02:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466220#M1807</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2016-01-04T21:02:32Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5604 eMIOS SAOCmode?</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466221#M1808</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Petr Stancik,&lt;/P&gt;&lt;P&gt;thank you for your reply.&lt;/P&gt;&lt;P&gt;(1) if set channel#23 CADR = 500, and the channel#18 CADR =1000, then the channel#18 match event didn't happen? and&amp;nbsp; if set CHANNEL#23 CADR=1000&amp;nbsp; and CHANNEL#18 CADR=1000，generate a 2ms cycle square wave. if change the channel#18 CADR value,&amp;nbsp; #18CADR = 500 and #CADR=1000, would generate the&amp;nbsp; same 2ms cycle square wave?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EMIOS_0.CH[23].CCR.B.BSL = 0x03; // use internal clock.&lt;/P&gt;&lt;P&gt;EMIOS_0.CH[23].CCR.B.MODE = 0x50; //MCB mode,internal clock input&lt;/P&gt;&lt;P&gt;EMIOS_0.CH[23].CCR.B.UCPEN = 1;&lt;/P&gt;&lt;P&gt;EMIOS_0.CH[23].CCR.B.UCPRE = 0;&lt;/P&gt;&lt;P&gt;EMIOS_0.CH[23].CADR.R = 500;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in the main:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(EMIOS_0.CH[18].CSR.B.FLAG&amp;nbsp; == 1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EMIOS_0.CH[18].CSR.B.FLAG&amp;nbsp; = 1; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EMIOS_0.CH[18].CADR.R=500; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LED1 = ~LED1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; };&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jan 2016 07:07:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466221#M1808</guid>
      <dc:creator>binpenghu</dc:creator>
      <dc:date>2016-01-05T07:07:36Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5604 eMIOS SAOCmode?</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466222#M1809</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The channel CADR must be less or equal to external bus CADR register otherwise the FLAG is not set and output is not toggled.&lt;/P&gt;&lt;P&gt;So if CHANNEL#23 CADR=1000&amp;nbsp; and CHANNEL#18 CADR=1000 then the FLAG is set each 1ms. In your code you will see 2ms square wave on the LED. The same will be if you will use&amp;nbsp; CHANNEL#23 CADR=1000&amp;nbsp; and CHANNEL#18 CADR=500.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BTW if using SAOC mode you can see square wave directly on the eMIOS output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Petr&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jan 2016 08:55:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5604-eMIOS-SAOCmode/m-p/466222#M1809</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2016-01-05T08:55:13Z</dc:date>
    </item>
  </channel>
</rss>

