<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=46&amp;t=16232&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-09-18T17:50:07+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=46&amp;t=16232&amp;mode</id>
<entry>
<author><name><![CDATA[patryk.619]]></name></author>
<updated>2016-09-18T17:50:07+01:00</updated>
<published>2016-09-18T17:50:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16232&amp;p=168934#p168934</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16232&amp;p=168934#p168934"/>
<title type="html"><![CDATA[STM32L152 pierwsze zliczenie timera]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16232&amp;p=168934#p168934"><![CDATA[
Witam,<br />natknąłem się na takie zjawisko, że jeśli chce sobie zliczać impulsy zewnętrzne przez ETR i ustawiam preskaler to pierwsze zliczenie odbywa się jakby go nie było, dopiero po wykonaniu przerwania liczy zgodnie z zamierzeniem. Wklejam kod jakby co<br />[syntax=c]int main(void) {<br /><br />RCC-&gt;AHBENR |= (RCC_AHBENR_GPIOBEN | RCC_AHBENR_GPIOAEN);<br />RCC-&gt;APB1ENR |= RCC_APB1ENR_TIM2EN;<br />GPIOA-&gt;MODER |=GPIO_MODER_MODER0_1;<br />GPIOA-&gt;AFR&#91;0&#93; |= GPIO_AF1_TIM2;<br />GPIOB-&gt;MODER |= (GPIO_MODER_MODER7_0 | GPIO_MODER_MODER6_0);<br />SysTick_Config(2000000 /1);<br />//EXTI-&gt;IMR |= EXTI_IMR_IM0;<br />//EXTI-&gt;FTSR |= EXTI_FTSR_TR0;<br />TIM2-&gt;PSC = 2;<br />TIM2-&gt;ARR = 3;<br />TIM2-&gt;DIER =TIM_DIER_UIE;<br /><br />TIM2-&gt;SMCR |= (TIM_SMCR_TS_2|TIM_SMCR_TS_1|TIM_SMCR_TS_0);<br />TIM2-&gt;SMCR |= TIM_SMCR_ECE;<br />TIM2-&gt;SMCR |= TIM_SMCR_ETP;<br /><br />TIM2-&gt;CR1 =TIM_CR1_CEN;<br />NVIC_EnableIRQ(TIM2_IRQn);<br /><br />while (1) {<br />if(GPIOA-&gt;IDR &amp; GPIO_IDR_IDR_0)LED_BLUE_HIGH;<br />//else LED_GREEN_LOW;<br />}<br />}<br />__attribute__((interrupt)) void SysTick_Handler(void){<br /><br />}<br /><br />__attribute__((interrupt)) void EXTI0_IRQHandler(void){<br /><br /><br />}<br />__attribute__((interrupt)) void TIM2_IRQHandler(void){<br />TIM2-&gt;SR &amp;=~ TIM_SR_UIF;<br />GPIOB-&gt;ODR ^=GPIO_ODR_ODR_7;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7898">patryk.619</a> — 18 wrz 2016, o 17:50</p><hr />
]]></content>
</entry>
</feed>