Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - syakovlev

Pages: 1 [2]
16
NXPTM M522XX, KINETIS and i.MX RT / Weird HW timer & Happy New Year
« on: December 30, 2008, 08:08:13 PM »
Two HW timer are created and used in similar way in project based on uTasker SP5, but
10ms timer fired in 10ms
40ms timer fired in 30ms ???

#define T_RAMP_DLY            (CLOCK_LIMIT)(10.0*MILLISEC)        // do next step
#define T_MODE_DLY            (CLOCK_LIMIT)(40.0*MILLISEC)        // wait for integrator to be ballanced

uTaskerGlobalMonoTimer( (UTASK_TASK)(OWN_TASK | HARDWARE_TIMER), T_RAMP_DLY, E_RAMP );
uTaskerGlobalMonoTimer( (UTASK_TASK)(OWN_TASK | HARDWARE_TIMER), T_MODE_DLY, E_MODE );

What might be the reason? Thx.

Best wishes to all :)




17
NXPTM M522XX, KINETIS and i.MX RT / DMA Timer Configuration or else
« on: November 16, 2008, 04:18:57 AM »
Hi all,

To use DMA timer #3 in input capture mode, timer was configured using function

void config_dma_timer_3(void)
{
   DMA_TIMER_SETUP ptrSettings;                                         // configuration parameters

   ptrSettings.mode = DMA_TIMER_ENABLE_CLOCK_DIVIDER |                  // DMA timer operation mode
                       DMA_TIMER_CAPTURE_RISING |
                       DMA_TIMER_FREERUN |
                       DMA_TIMER_INTERNAL_CLOCK;
   ptrSettings.int_handler = dma_timer3_service;                        // Interrupt handler to be configured
   ptrSettings.int_type = DMA_TIMER_INTERRUPT;                          // Identifier for when configuring
   ptrSettings.int_priority = DTIM3_INTERRUPT_PRIORITY;                 // Priority the user wants to set
   ptrSettings.channel = 3;                                             // DMA timer channel (0..3)
   ptrSettings.clock_divider = BUS_CLOCK_DIRECT;                        // internal bus clock divided by 1
   //ptrSettings.count_delay =                                          // count delay until interrupt (clocks or external pulses)
   fnConfigureInterrupt(&ptrSettings);
}

Now input capture works perfect, but all attempts to read state of timer_3 input pin failed.
Macros ( PORTIN_SETTC & (1<<3)) always == 1 :( regardless of real state of input (high or low).
GPT timer has GPT_Port_Data_Register (GPTPORT) which could be used to read state of input pin.
Looks like there is nothing similar for DMA timers.
Is it possible at all to do what I want using DMA timers?

Any ideas?
Thanks.

18
At first glance it looks OK, but has anyone positive experience of doing so?
Thx.

19
There is a line
*(.text .text.*)
in linker file m52235evb-rom.ld.
What does it exactly mean?
In GNU ld manuals I've found:

"For example,
.text . : { *(.text) }
and
.text : { *(.text) }
are subtly different. The first will set the address of the `.text' output section to the
current value of the location counter. The second will set it to the current value of the
location counter aligned to the strictest alignment of a `.text' input section."

"There are two ways to include more than one section:
*(.text .rdata)
*(.text) *(.rdata)
The difference between these is the order in which the `.text' and `.rdata' input sections
will appear in the output section. In the frst example, they will be intermingled, appearing
in the same order as they are found in the linker input. In the second example, all `.text'
input sections will appear first, followed by all `.rdata' input sections."

Thx.
Sergei.

20
NXPTM M522XX, KINETIS and i.MX RT / Re: Congratulations
« on: July 10, 2007, 12:31:05 AM »
Hi All,

If somebody ask me: " Why are you using uTasker?"
I wouldn't think too long to reply: "Because of great support".
I'm very grateful to uTasker team that I never fell alone while dealing
with my project problems.
So lets congratulate all of us with great chance to have so needed mutual support.

Big respect.
Sergei.

Pages: 1 [2]