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.

Topics - hervé

Pages: 1 [2] 3
µTasker general / INTERNAL_ROUTE
« on: November 28, 2010, 05:43:54 PM »
Hello Mark,

When sending a message to a task we can test if it fits the buffer size allocated, by pointing the message to null.
Code: [Select]
fnWrite( TASK_TEST, 0, MSG_LENGTH); // test if we can write
How to do when sending to  INTERNAL_ROUTE, as the message is used to find the correct heap in this case ?

In fact I don't want to start writing a message if I could not complete ( it will be misinterpreted by the listener)


µTasker general / Thumb strange behaviour
« on: November 17, 2010, 03:32:00 PM »
Hello Mark,

My code is running for a while but sometime there's a strange behaviour :
From time to time, when going through the code uDisable_Interrupt();, the Thumb mode is cancelled, and then I got an exception.
Do you have any idea about this ?
Code: [Select]
extern QUEUE_TRANSFER entry_que(QUEUE_HANDLE channel, unsigned char *ptBuffer, QUEUE_TRANSFER Counter, unsigned char ucCallType, QUEUE_HANDLE DriverID)
    QUEQUE *ptQUEQue;
    QUEUE_TRANSFER rtn_val = 0;
    uDisable_Interrupt();                                                // disable all interrupts
    switch ( ucCallType ) {

T= 1 before uDisable_Interrupt();
T= 0 after uDisable_Interrupt();

Using Keil µVison in step by step debug mode.

NXPTM LPC2XXX and LPC17XX / Stack_Mem
« on: October 04, 2010, 03:59:05 PM »
Hello Mark,

I need help with your variables names  :-\.
On LPC23XX.c :
Code: [Select]
        _extern_ unsigned char Stack_Mem;
        #define HEAP_START_ADDRESS  &Stack_Mem                           // Keil - start of stack
        fnInitialiseHeap(ctOurHeap, HEAP_START_ADDRESS);                     // initialise heap
That means that you initialized OUR_HEAP_SIZE locations from Stack_Mem for the µTaskerHeap.

but on LPC23xx_keil.s:
Code: [Select]
        EXPORT  Stack_Mem
Stack_Mem       SPACE   USR_Stack_Size
What is the use of this line, which reserved USR_Stack_Size locations from Stack_Mem again.

µTasker general / fnFilterUserFile
« on: September 28, 2010, 09:44:42 AM »
Hi Mark,
I try to test my program with the simulator on the web part.
I got an error when trying to use a ptrFiles->fileName pointing to a bad area.
This test has to be modified for the simulator, don't you think so ?

µTasker general / fnFillBuf
« on: September 27, 2010, 10:25:04 AM »
Hello Mark,

During the EMAC_Interrupt
The function fnFillBuf() is called
the parameter ptQUEQue is read from the stack and assigned to register
The problem is that there is Interrupt activation inside it.

Code: [Select]
    if (ptQUEQue->put >= ptQUEQue->buffer_end) {
        ptQUEQue->put -= ptQUEQue->buf_length;                           // handle overflow
        FirstCopy -= (QUEUE_TRANSFER)(ptQUEQue->put - ptQUEQue->QUEbuffer);
    uEnable_Interrupt();                                                 // ensure copies do not block interrupts
    uMemcpy(ptrTo, input_buffer, FirstCopy);
    if (nr_of_bytes != FirstCopy) {
        uMemcpy(ptQUEQue->QUEbuffer, (input_buffer + FirstCopy), (nr_of_bytes - FirstCopy));

after uEnable_Interrupt() the register of the Interrupt bank are modified, then on the line
Code: [Select]
uMemcpy(ptQUEQue->QUEbuffer...ptQUEQue is no more pointing to a correct reference.....

Is this line
Code: [Select]
uEnable_Interrupt(); // ensure copies do not block interruptsreally necessary?

µTasker general / 1UserFiles.bin
« on: September 21, 2010, 01:08:16 PM »
Hello Mark,

Concerning the uploaded 1UserFiles.bin : how can i put in it the pseudo file "XML?Dummy" ?

µTasker general / TCIP
« on: August 02, 2010, 08:25:45 AM »
I don't know so much about TCPIP protocole, and I need some help to understand this behaviour :
My board at replies to a PC at but on frame #15 of this record there is an unnecessary ack for me. Can somebody explain it to me ?

µTasker general / I2C control
« on: March 12, 2010, 12:08:49 PM »

I use I2c for onboard component and it works fine.

I plan to use it with external PIA (8254 type) controlling a keyboard/display pad.
I send a command to the PIA but I don't know if it is connected or not :
"the function  (!fnWrite(MODAPortID, (unsigned char *)ucTramePIA, sizeof(ucTramePIA))) always reply OK."
How can I manage to see that there is no I2C component connected at this address?

The purpose is to test when keyboard/display are hot plugged so I can initialize them.

« on: January 25, 2010, 09:21:52 AM »
Hello Mark,

I think I quite misunderstood the stack and heap variables definition.

On LPC23xx_keil.s I wrote :
Code: [Select]
         EXPORT  Stack_Mem
Stack_Mem       SPACE   USR_Stack_Size

Heap_Size       EQU     0x00004800
Heap_Mem        SPACE   Heap_Size

0x00004800    is what I considered correct for my application

On TaskConfig.h
Code: [Select]
const HEAP_NEEDS ctOurHeap[] = {
    {DEFAULT_NODE_NUMBER, OUR_HEAP_SIZE},                                // our node requires this amount of heap space
    {0}                                                                  // end
So both have the same value.....

But on LPC23XX.c I saw that you wrote

        #define HEAP_START_ADDRESS  &Stack_Mem                          // Keil - start of stack

So I don't understand why you do this ?
On the map file I saw
   0x400042a8   0x00004800   Zero   RW         2637    HEAP                lpc23xx_keil.o
    0x40008aa8   0x00000434   Zero   RW         2636    STACK               lpc23xx_keil.o

But in fact the uTasker Heap is starting at 0x40008aa8 and reserve 0x4800 byte for uTaskerHeap.
Does that means that the Heap define in lpc23xx_keil.s is not used, and do I have to put its value to zero (to recover this memory) ?

Please clarify these varaibles for me.

µTasker general / FTP
« on: January 21, 2010, 04:38:13 PM »
Hello Mark,

As I understand,
"favicon.ico" is a part of user_files.
When I upload it, I got 1150 bytes which matches sizeof(_favicon).

When I look into the file, the first byte is in fact nxp_favicon[5] : It starts after the FILE_HEADER.
And it ends with five dummy bytes outside of nxp_favicon.

It will be better to cancel this 5 bytes (HEADER size) sending no ? and correct the file size also ...

What is the use of the FILE_HEADER for these user_files ?


µTasker general / fnSendBufTCP
« on: January 08, 2010, 09:23:25 AM »
Looking at different topic on the subject, specially which is very interresting, I wanted to use fnSendBufTCP.
But when I put it in my application, I got an exception error inside fnCheckTelnetBinaryTx() function with the simulator, as fnGetTelnetSession()returns a zero-pointer ....

Code: [Select]
extern int fnCheckTelnetBinaryTx(USOCKET Socket)
TELNET *TELNET_session = fnGetTelnetSession(Socket);

    if (TELNET_session->usTelnetMode & (TELNET_STUFF_TX_IAC | TELNET_BINARY_MODE)) {
        return 1;
    return 0;

So I changed it to :

Code: [Select]
extern int fnCheckTelnetBinaryTx(USOCKET Socket)
TELNET *TELNET_session = fnGetTelnetSession(Socket);

    if (TELNET_session == 0)
        return 0;
    if (TELNET_session->usTelnetMode & (TELNET_STUFF_TX_IAC | TELNET_BINARY_MODE)) {
        return 1;
    return 0;

µTasker general / VLAN
« on: January 06, 2010, 03:57:14 PM »
Hello Mark,

I activated the SUPPORT_VLAN but got the following errors :

Code: [Select]
.\ObjectFiles\TGIP_BM.axf: Error: L6218E: Undefined symbol vlan_active (referred from ethernet.o).
.\ObjectFiles\TGIP_BM.axf: Error: L6218E: Undefined symbol vlan_vid (referred from ethernet.o).

It looks like some files are missing, isn't it?

µTasker general / PPP
« on: November 25, 2009, 05:51:26 PM »

I wanted to test ppp.c

I set DEMO_UART either to 2 or  3
Then I got some stop when I put some breakpoint either on
static __interrupt void SCI2_Interrupt(void)
or on
static __interrupt void SCI3_Interrupt(void)

So my hardware is working and I can use both UART....

Now I define USE_PPP
and  set PPP_UART to 2  to test the PPP part....

I got an error because DCE_MODE is not defined on
tInterfaceParameters.Config = (CHAR_8 + NO_PARITY + ONE_STOP /*+ USE_XON_OFF*/ + CHAR_MODE + DCE_MODE);
I suppressed it(DCE_MODE) to compile with no error...

The problem is that I never got an interruption on
static __interrupt void SCI2_Interrupt(void) !!!

When I look at the definition of UART2 and UART3 , they are identical except baudrate : Normal  !
One gave interrupts, not the other : do you have an idea why there was no breakpoint stop on the corresponding interrupt, when defined by PPP.

PS: I checked the Vector Interrupt Controller and saw both UART2 and UART3 were enabled : Normal !

NXPTM LPC2XXX and LPC17XX / ADC Simulation
« on: November 19, 2009, 09:17:18 AM »

On my release I didn't find the simulator structure for ADC on simLPC23XX.h, is it normal?
I put one to make my simulator works, but if there is another let me know.

Code: [Select]
typedef struct stLPC23XX_PERIPH
    LPC23XX_FAST_GPIO   ucFastGPIO[5];
    LPC23XX_TIMER       ucSimTimer0;
    LPC23XX_TIMER       ucSimTimer1;
    LPC23XX_UART        ucSimUart0;
    LPC23XX_UART        ucSimUart1;
    LPC23XX_IIC         ucIIC0;
    LPC23XX_RTC         ucRTC;
    LPC23XX_LEG_GPIO    ucLegacyGPIO;
    LPC23XX_PIN_CON     ucPIN_CON;
    LPC23XX_SSP         ucSSP1;
    LPC23XX_ADC         ucADC; //ADD//191109//
    LPC23XX_IIC         ucIIC1;
    LPC23XX_SSP         ucSSP0;
    LPC23XX_TIMER       ucSimTimer2;
    LPC23XX_TIMER       ucSimTimer3;
    LPC23XX_UART        ucSimUart2;
    LPC23XX_UART        ucSimUart3;
    LPC23XX_IIC         ucIIC2;
    LPC23XX_RTC_RAM     ulRTC_ram;
    LPC23XX_SCM         ucSCM;
    LPC23XX_EMAC        ucEMAC;
    LPC23XX_EMC         ucEMC;
    LPC23XX_LCD         ucLCD;
    LPC23XX_VIC         ucVIC;
    LPC23XX_VIC_ADD     ucVICAddress;

typedef struct stLPC23XX_ADC
unsigned long AD_CR;
unsigned long AD_GDR;
unsigned long AD_INTEN;
unsigned long AD_DR0;
unsigned long AD_DR1;
unsigned long AD_DR2;
unsigned long AD_DR3;
unsigned long AD_DR4;
unsigned long AD_DR5;
unsigned long AD_DR6;
unsigned long AD_DR7;
unsigned long AD_STAT;

µTasker general / Periodic Interrupt Simulation
« on: November 06, 2009, 12:22:14 PM »
I want to use the simulator for an RTC component, delivering periodic signal on interrupt pin.
How can I do that with simulator ?

Pages: 1 [2] 3