<?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: why do not work my timer B?? in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171042#M11482</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi quimey.&lt;/P&gt;&lt;P&gt;The error is here:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;TASC &amp;amp;= ~(0b10000000);/*PONGO EL FLAG NUEVAMENTE A CERO*/&lt;/P&gt;&lt;P&gt;^^^&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;TBSC is right.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;bye&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 14 May 2009 18:19:17 GMT</pubDate>
    <dc:creator>gigias</dc:creator>
    <dc:date>2009-05-14T18:19:17Z</dc:date>
    <item>
      <title>why do not work my timer B??</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171041#M11481</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello I have programmed my&amp;nbsp; TIMA and I extract a pulses of approximately 1Hz&lt;/P&gt;&lt;P&gt;but with TIMB dont Work,I have used :1-a mr32&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2-a mr16&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3-other mr16&lt;/P&gt;&lt;P&gt;All are free samples, this is the program:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;#include &amp;lt;hidef.h&amp;gt; /* for EnableInterrupts macro */&lt;BR /&gt;#include "derivative.h" /* include peripheral declarations */&lt;/P&gt;&lt;P&gt;int i=0;&lt;BR /&gt;int j=0;&lt;BR /&gt;void pllinit(void);&lt;BR /&gt;void init_pwm_timerb(void);&lt;BR /&gt;void input_ini(void);&lt;/P&gt;&lt;P&gt;void main(void) {&lt;/P&gt;&lt;P&gt;&amp;nbsp; EnableInterrupts; /* enable interrupts */&lt;BR /&gt;&amp;nbsp; /* include your code here */&lt;BR /&gt;pllinit();&lt;BR /&gt;init_pwm_timerb();&lt;BR /&gt;input_ini();&lt;BR /&gt;&amp;nbsp; for(;&lt;A href="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif"&gt;&lt;IMG alt=":smileywink:" class="emoticon emoticon-smileywink" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif" title="Smiley Wink" /&gt;&lt;/A&gt; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __RESET_WATCHDOG(); /* feeds the dog */&lt;BR /&gt;&amp;nbsp; } /* loop forever */&lt;BR /&gt;&amp;nbsp; /* please make sure that you never leave main */&lt;BR /&gt;}&lt;BR /&gt;void pllinit(void){&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;PBWC = 0x80;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* set Auto Bandwidth Control */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;PCTL &amp;amp;= ~(0x20);&amp;nbsp;&amp;nbsp;/* turn PLL off to be able to program multiplier */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;PPG=0x37;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* multiply X-tal frequency by 3 =&amp;gt; X-tal=9.83MHz *3 ~= 30MHz //para mi seria&amp;nbsp; 0x37;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bus frequency 32MHz/10 = 3MHz, VCO range = 7 *///32/9.83=3&lt;BR /&gt;&amp;nbsp;&amp;nbsp;PCTL |= 0x20;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* turn on the PLL */&lt;BR /&gt;&amp;nbsp;while (~PBWC &amp;amp; 0x40);&amp;nbsp; &amp;nbsp;/* wait for PLL lock */&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PCTL |= 0x10;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;/* use PLL clock */&amp;nbsp;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;void init_pwm_timerb(void){&lt;BR /&gt;&amp;nbsp; //timer que determina la frecuencia del var&lt;BR /&gt;&amp;nbsp; TBSC_TSTOP=1;/* Stop the TIMA counter by setting the TIMA stop bit, TSTOP.*/&lt;BR /&gt;&amp;nbsp; TBSC_TRST=1;/* Reset the TIMA counter and prescaler by setting the TIMA reset bit, TRST.*/&lt;BR /&gt;&amp;nbsp; TBMODH=0b11111111;&lt;BR /&gt;&amp;nbsp; TBMODL=0b11111110;/*In the TIMA counter modulo registers (TAMODH–TAMODL), write the value for the required PWM&lt;BR /&gt;&amp;nbsp; period.*/&lt;BR /&gt;&amp;nbsp; TBCH0H=0b00000000;/* In the TIMA channel x registers (TACHxH–TACHxL), write the value for the required pulse width.*/&lt;BR /&gt;&amp;nbsp; TBCH0L=0b11111111;&lt;BR /&gt;&amp;nbsp; TBSC_PS0=0;/*INTERNAL BUS CLOCK /64 */&lt;BR /&gt;&amp;nbsp; TBSC_PS1=1;//=1*64*65534/8000000=524mseg&lt;BR /&gt;&amp;nbsp; TBSC_PS2=1;&lt;BR /&gt;&amp;nbsp; TBSC0_MS0B=0;//unbuffered(0;1)/*Write 1:0 (for buffered output compare&lt;BR /&gt;//&amp;nbsp; or PWM signals) to the mode select bits, MSxB–MSxA.*/&lt;BR /&gt;&amp;nbsp; TBSC0_MS0A=1;&lt;BR /&gt;&amp;nbsp; TBSC0_TOV0=1;/* Write 1 to the toggle-on-overflow bit, TOVx.*/&lt;BR /&gt;&amp;nbsp; TBSC0_ELS0B=1;&lt;BR /&gt;&amp;nbsp; TBSC0_ELS0A=1;&lt;BR /&gt;&amp;nbsp; /*WRITE 1:1 (polarity 0 — to set output on&lt;BR /&gt;&amp;nbsp; compare) to the edge/level select bits, ELSxB–ELSxA. The output action on compare must&lt;BR /&gt;&amp;nbsp; force the output to the complement of the pulse width level.*/&lt;BR /&gt;&amp;nbsp; TBSC_TSTOP=0;/*In the TIMA status control register (TASC), clear the TIMA stop bit, TSTOP.*/&lt;BR /&gt;&amp;nbsp; TBSC_TOIE=1;/*habilito la interrupcion*/&lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp;void input_ini(void){&lt;BR /&gt;DDRA=0b00000100;/*PTA2 SALIDA*/&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;interrupt 16 void overflow_pwmb(void){&lt;BR /&gt;&amp;nbsp; #pragma TRAP_PROC SAVE_REGS&lt;BR /&gt;&amp;nbsp;&amp;nbsp; TASC &amp;amp;= ~(0b10000000);/*PONGO EL FLAG NUEVAMENTE A CERO*/&lt;/P&gt;&lt;P&gt;if(i==0){&lt;BR /&gt;PTA_PTA2=1;&lt;BR /&gt;i=1;}&lt;BR /&gt;else {&lt;BR /&gt;PTA_PTA2=0;&lt;BR /&gt;i=0;}&lt;/P&gt;&lt;P&gt;return ;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;how you can see the program is very simple&amp;nbsp;, I change A for B and the number 16 for 13 for the interrupt but don´t work(tihs make a sine wave of 66kHZ?? for 2 seconds)&lt;/P&gt;&lt;P&gt;The reason can be that the mr`s are samples??&lt;/P&gt;&lt;P&gt;please help mi&lt;/P&gt;&lt;P&gt;Thank you for your time&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2009 22:55:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171041#M11481</guid>
      <dc:creator>quimey</dc:creator>
      <dc:date>2009-04-10T22:55:06Z</dc:date>
    </item>
    <item>
      <title>Re: why do not work my timer B??</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171042#M11482</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi quimey.&lt;/P&gt;&lt;P&gt;The error is here:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;TASC &amp;amp;= ~(0b10000000);/*PONGO EL FLAG NUEVAMENTE A CERO*/&lt;/P&gt;&lt;P&gt;^^^&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;TBSC is right.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;bye&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 May 2009 18:19:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171042#M11482</guid>
      <dc:creator>gigias</dc:creator>
      <dc:date>2009-05-14T18:19:17Z</dc:date>
    </item>
    <item>
      <title>Re: why do not work my timer B??</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171043#M11483</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Very common newbie error:&lt;BR /&gt;&lt;BR /&gt;int i=0;&lt;BR /&gt;int j=0;&lt;BR /&gt;&lt;BR /&gt;You forgot to declare those as volatile.&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 May 2009 20:10:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/why-do-not-work-my-timer-B/m-p/171043#M11483</guid>
      <dc:creator>Lundin</dc:creator>
      <dc:date>2009-05-14T20:10:06Z</dc:date>
    </item>
  </channel>
</rss>

