<?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: Machine cycle of MC9S12XHZ512 micro-controller. in S12 / MagniV Microcontrollers</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Machine-cycle-of-MC9S12XHZ512-micro-controller/m-p/382676#M10827</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is an example for similar MCU with a lot of description:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Freescale Semiconductor Inc.&lt;/P&gt;&lt;P&gt;* (c) Copyright 2004-2005 Freescale Semiconductor, Inc.&lt;/P&gt;&lt;P&gt;* ALL RIGHTS RESERVED.&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;Services performed by FREESCALE in this matter are performed AS IS and without &lt;/P&gt;&lt;P&gt;any warranty. CUSTOMER retains the final decision relative to the total design &lt;/P&gt;&lt;P&gt;and functionality of the end product. FREESCALE neither guarantees nor will be &lt;/P&gt;&lt;P&gt;held liable by CUSTOMER for the success of this project.&lt;/P&gt;&lt;P&gt;FREESCALE DISCLAIMS ALL WARRANTIES, EXPRESSED, IMPLIED OR STATUTORY INCLUDING, &lt;/P&gt;&lt;P&gt;BUT NOT LIMITED TO, IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR &lt;/P&gt;&lt;P&gt;A PARTICULAR PURPOSE ON ANY HARDWARE, SOFTWARE OR ADVISE SUPPLIED TO THE PROJECT&lt;/P&gt;&lt;P&gt;BY FREESCALE, AND OR NAY PRODUCT RESULTING FROM FREESCALE SERVICES. IN NO EVENT&lt;/P&gt;&lt;P&gt;SHALL FREESCALE BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF&lt;/P&gt;&lt;P&gt;THIS AGREEMENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CUSTOMER agrees to hold FREESCALE harmless against any and all claims demands or&lt;/P&gt;&lt;P&gt;actions by anyone on account of any damage, or injury, whether commercial, &lt;/P&gt;&lt;P&gt;contractual, or tortuous, rising directly or indirectly as a result of an advise&lt;/P&gt;&lt;P&gt;or assistance supplied CUSTOMER in connection with product, services or goods &lt;/P&gt;&lt;P&gt;supplied under this Agreement.&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;* File&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; main.c&lt;/P&gt;&lt;P&gt;* Owner&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r62780&lt;/P&gt;&lt;P&gt;* Version&amp;nbsp;&amp;nbsp; 1.0&lt;/P&gt;&lt;P&gt;* Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sep-15-2010&lt;/P&gt;&lt;P&gt;* Classification&amp;nbsp;&amp;nbsp; General Business Information&lt;/P&gt;&lt;P&gt;* Brief&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FLASH E/W&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;* Detailed Description:&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* - the SW software demonstrates one of the possibilities how to generate SW&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay by means of ECT.&lt;/P&gt;&lt;P&gt;* - Generates only one impulse given length after the delay of given length&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;* - The hard delay, which means the CPU does not work on another task, is presented. &lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; It waits in loop.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* - Theory:&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* interval = TCx * dt = TCx * (prescaler/fbus)&lt;/P&gt;&lt;P&gt;* TCx = interval / (prescaller/fbus) = interval * fbus / prescaler&lt;/P&gt;&lt;P&gt;* There are two ways for TCx and prescaler setup:&lt;/P&gt;&lt;P&gt;* 1) prescaler = constant (min and max interval is given)&lt;/P&gt;&lt;P&gt;* 2) prescaler and TCx are considered as a variables to calculate required interval&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; interval = f(TCx, prescaler)&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; this solution is more difficult&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* This example solves item 1. &lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; - Prescaler = const = 8.&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; - fbus = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - TCx = interval / (prescaller/fbus) = interval * fbus / prescaler&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Max interval can be calculated as interval[us]=65535*prescaler/fbus[MHz]&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; and setup precision is dt=prescaler/fbus&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for fbus = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 1 then max interval is&amp;nbsp;&amp;nbsp; 8191.8 us; dt =&amp;nbsp; 0.125 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 2 then max interval is&amp;nbsp; 16383,7 us; dt =&amp;nbsp; 0.250 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 4 then max interval is&amp;nbsp; 32767,5 us; dt =&amp;nbsp; 0.500 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 8 then max interval is&amp;nbsp; 65535&amp;nbsp;&amp;nbsp; us; dt =&amp;nbsp; 1.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 16 then max interval is&amp;nbsp; 131070&amp;nbsp; us; dt =&amp;nbsp; 2.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 32 then max interval is&amp;nbsp; 262140&amp;nbsp; us; dt =&amp;nbsp; 4.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 64 then max interval is&amp;nbsp; 524280&amp;nbsp; us; dt =&amp;nbsp; 8.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler = 128 then max interval is 1048560&amp;nbsp; us; dt = 16.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;* - tested on: HCS12X STARTER KIT&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; - OSCCLK = 16MHz, BUSCLK = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; - Reference to documentation: MC9S12XDP512V2 Rev.2.17&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;Revision History:&lt;/P&gt;&lt;P&gt;Version&amp;nbsp; Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Author&amp;nbsp; Description of Changes&lt;/P&gt;&lt;P&gt;1.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sep-15-2010&amp;nbsp; R62780&amp;nbsp; Initial version&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;hidef.h&amp;gt;&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; // common defines and macros&lt;/P&gt;&lt;P&gt;#pragma LINK_INFO DERIVATIVE "mc9s12xdp512"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#include "map.h"&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Local function prototypes&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void Delay(UWORD interval);&lt;/P&gt;&lt;P&gt;static void ECT_Init(void);&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Local variables&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;// NONE&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : ECT_Init&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sets ECT for required functionality&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void ECT_Init(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR2 = 0x03;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // prescaller = 8&lt;/P&gt;&lt;P&gt;&amp;nbsp; //--- channel 0 setup ---------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TCTL1 = 0x00;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // timer disconnected form output pin logic&lt;/P&gt;&lt;P&gt;&amp;nbsp; TIOS&amp;nbsp; = 0x01;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // channels 0 is output compare &lt;/P&gt;&lt;P&gt;&amp;nbsp; //-----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TIE_C0I = 0;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // disable interrupt from channel 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; //-----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR1 = 0xF0;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // enable timer,stop in wait,stop in freeze, fast flag clear&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : Delay&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : UWORD interval&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Performs hard delay&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void Delay(UWORD interval)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt; TC0 = TCNT + interval;&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; // set new value and clear interrupt flag&amp;nbsp; &lt;/P&gt;&lt;P&gt;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // TC0 = t + interval * fbus / prescaler;&lt;/P&gt;&lt;P&gt; while(!TFLG1_C0F);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : main&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Demonstrate SW delay&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;void main(void) &lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt; for(;;)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ECT_Init();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; DDRB=0xFF;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // an output port to visualize period&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; for(;;) &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delay(10000);&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; // true delay is value 500*prescaller/busclk=&lt;/P&gt;&lt;P&gt;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // = 10000*8/8MHz = 10000us = 10ms&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB = ~PORTB;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;The Answer to the Ultimate Question of Life, the Universe, and Everything is:.......... 42. &lt;/P&gt;&lt;P&gt;(Douglas Adams - The Hitchhiker's Guide to the Galaxy)&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Jan 2015 13:36:18 GMT</pubDate>
    <dc:creator>lama</dc:creator>
    <dc:date>2015-01-06T13:36:18Z</dc:date>
    <item>
      <title>Machine cycle of MC9S12XHZ512 micro-controller.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Machine-cycle-of-MC9S12XHZ512-micro-controller/m-p/382675#M10826</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How can I calculate machine cycle of MC9S12XHZ512 micro-controller.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to create time delay in MC9S12XHZ512 micro-controller using Timer, I have used 16MHz crystal on my micro-controller board with no prescale, Can someone explain me how can I calculate delay of 1ms if I am using 16-bit Timer.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 02 Jan 2015 04:37:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Machine-cycle-of-MC9S12XHZ512-micro-controller/m-p/382675#M10826</guid>
      <dc:creator>kdn</dc:creator>
      <dc:date>2015-01-02T04:37:25Z</dc:date>
    </item>
    <item>
      <title>Re: Machine cycle of MC9S12XHZ512 micro-controller.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Machine-cycle-of-MC9S12XHZ512-micro-controller/m-p/382676#M10827</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is an example for similar MCU with a lot of description:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Freescale Semiconductor Inc.&lt;/P&gt;&lt;P&gt;* (c) Copyright 2004-2005 Freescale Semiconductor, Inc.&lt;/P&gt;&lt;P&gt;* ALL RIGHTS RESERVED.&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;Services performed by FREESCALE in this matter are performed AS IS and without &lt;/P&gt;&lt;P&gt;any warranty. CUSTOMER retains the final decision relative to the total design &lt;/P&gt;&lt;P&gt;and functionality of the end product. FREESCALE neither guarantees nor will be &lt;/P&gt;&lt;P&gt;held liable by CUSTOMER for the success of this project.&lt;/P&gt;&lt;P&gt;FREESCALE DISCLAIMS ALL WARRANTIES, EXPRESSED, IMPLIED OR STATUTORY INCLUDING, &lt;/P&gt;&lt;P&gt;BUT NOT LIMITED TO, IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR &lt;/P&gt;&lt;P&gt;A PARTICULAR PURPOSE ON ANY HARDWARE, SOFTWARE OR ADVISE SUPPLIED TO THE PROJECT&lt;/P&gt;&lt;P&gt;BY FREESCALE, AND OR NAY PRODUCT RESULTING FROM FREESCALE SERVICES. IN NO EVENT&lt;/P&gt;&lt;P&gt;SHALL FREESCALE BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF&lt;/P&gt;&lt;P&gt;THIS AGREEMENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CUSTOMER agrees to hold FREESCALE harmless against any and all claims demands or&lt;/P&gt;&lt;P&gt;actions by anyone on account of any damage, or injury, whether commercial, &lt;/P&gt;&lt;P&gt;contractual, or tortuous, rising directly or indirectly as a result of an advise&lt;/P&gt;&lt;P&gt;or assistance supplied CUSTOMER in connection with product, services or goods &lt;/P&gt;&lt;P&gt;supplied under this Agreement.&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;* File&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; main.c&lt;/P&gt;&lt;P&gt;* Owner&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r62780&lt;/P&gt;&lt;P&gt;* Version&amp;nbsp;&amp;nbsp; 1.0&lt;/P&gt;&lt;P&gt;* Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sep-15-2010&lt;/P&gt;&lt;P&gt;* Classification&amp;nbsp;&amp;nbsp; General Business Information&lt;/P&gt;&lt;P&gt;* Brief&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FLASH E/W&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;* Detailed Description:&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* - the SW software demonstrates one of the possibilities how to generate SW&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay by means of ECT.&lt;/P&gt;&lt;P&gt;* - Generates only one impulse given length after the delay of given length&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;* - The hard delay, which means the CPU does not work on another task, is presented. &lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; It waits in loop.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* - Theory:&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* interval = TCx * dt = TCx * (prescaler/fbus)&lt;/P&gt;&lt;P&gt;* TCx = interval / (prescaller/fbus) = interval * fbus / prescaler&lt;/P&gt;&lt;P&gt;* There are two ways for TCx and prescaler setup:&lt;/P&gt;&lt;P&gt;* 1) prescaler = constant (min and max interval is given)&lt;/P&gt;&lt;P&gt;* 2) prescaler and TCx are considered as a variables to calculate required interval&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; interval = f(TCx, prescaler)&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; this solution is more difficult&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;* This example solves item 1. &lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; - Prescaler = const = 8.&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp; - fbus = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - TCx = interval / (prescaller/fbus) = interval * fbus / prescaler&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Max interval can be calculated as interval[us]=65535*prescaler/fbus[MHz]&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; and setup precision is dt=prescaler/fbus&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for fbus = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 1 then max interval is&amp;nbsp;&amp;nbsp; 8191.8 us; dt =&amp;nbsp; 0.125 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 2 then max interval is&amp;nbsp; 16383,7 us; dt =&amp;nbsp; 0.250 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 4 then max interval is&amp;nbsp; 32767,5 us; dt =&amp;nbsp; 0.500 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp;&amp;nbsp; 8 then max interval is&amp;nbsp; 65535&amp;nbsp;&amp;nbsp; us; dt =&amp;nbsp; 1.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 16 then max interval is&amp;nbsp; 131070&amp;nbsp; us; dt =&amp;nbsp; 2.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 32 then max interval is&amp;nbsp; 262140&amp;nbsp; us; dt =&amp;nbsp; 4.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler =&amp;nbsp; 64 then max interval is&amp;nbsp; 524280&amp;nbsp; us; dt =&amp;nbsp; 8.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If prescaler = 128 then max interval is 1048560&amp;nbsp; us; dt = 16.000 us&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;* - tested on: HCS12X STARTER KIT&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; - OSCCLK = 16MHz, BUSCLK = 8MHz&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; - Reference to documentation: MC9S12XDP512V2 Rev.2.17&lt;/P&gt;&lt;P&gt;********************************************************************************&lt;/P&gt;&lt;P&gt;Revision History:&lt;/P&gt;&lt;P&gt;Version&amp;nbsp; Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Author&amp;nbsp; Description of Changes&lt;/P&gt;&lt;P&gt;1.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sep-15-2010&amp;nbsp; R62780&amp;nbsp; Initial version&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;hidef.h&amp;gt;&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; // common defines and macros&lt;/P&gt;&lt;P&gt;#pragma LINK_INFO DERIVATIVE "mc9s12xdp512"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#include "map.h"&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Local function prototypes&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void Delay(UWORD interval);&lt;/P&gt;&lt;P&gt;static void ECT_Init(void);&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;* Local variables&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;// NONE&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : ECT_Init&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sets ECT for required functionality&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void ECT_Init(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR2 = 0x03;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // prescaller = 8&lt;/P&gt;&lt;P&gt;&amp;nbsp; //--- channel 0 setup ---------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TCTL1 = 0x00;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // timer disconnected form output pin logic&lt;/P&gt;&lt;P&gt;&amp;nbsp; TIOS&amp;nbsp; = 0x01;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // channels 0 is output compare &lt;/P&gt;&lt;P&gt;&amp;nbsp; //-----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TIE_C0I = 0;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // disable interrupt from channel 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; //-----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR1 = 0xF0;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // enable timer,stop in wait,stop in freeze, fast flag clear&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : Delay&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : UWORD interval&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Performs hard delay&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;static void Delay(UWORD interval)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt; TC0 = TCNT + interval;&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; // set new value and clear interrupt flag&amp;nbsp; &lt;/P&gt;&lt;P&gt;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // TC0 = t + interval * fbus / prescaler;&lt;/P&gt;&lt;P&gt; while(!TFLG1_C0F);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;Function Name : main&lt;/P&gt;&lt;P&gt;Engineer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : r62780&lt;/P&gt;&lt;P&gt;Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Sep/15/2010&lt;/P&gt;&lt;P&gt;Parameters&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Modifies&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Returns&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;Notes&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Demonstrate SW delay&lt;/P&gt;&lt;P&gt;Issues&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : NONE&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;P&gt;void main(void) &lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt; for(;;)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ECT_Init();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; DDRB=0xFF;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // an output port to visualize period&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; //----------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; for(;;) &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delay(10000);&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; // true delay is value 500*prescaller/busclk=&lt;/P&gt;&lt;P&gt;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // = 10000*8/8MHz = 10000us = 10ms&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB = ~PORTB;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;/*******************************************************************************&lt;/P&gt;&lt;P&gt;The Answer to the Ultimate Question of Life, the Universe, and Everything is:.......... 42. &lt;/P&gt;&lt;P&gt;(Douglas Adams - The Hitchhiker's Guide to the Galaxy)&lt;/P&gt;&lt;P&gt;*******************************************************************************/&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2015 13:36:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Machine-cycle-of-MC9S12XHZ512-micro-controller/m-p/382676#M10827</guid>
      <dc:creator>lama</dc:creator>
      <dc:date>2015-01-06T13:36:18Z</dc:date>
    </item>
  </channel>
</rss>

