/var/www/restricted/ssh/stm32/www/stm32circle/ STM CircleOS forum / How to add a new application?

Username:     
Password:     
             

Forum

# 1   2010-06-28 07:18:26 How to add a new application? (project: Circle OS 4.62)

brucezcg
Member
Registered: 2010-06-21
Posts: 21

How to add a new application? (project: Circle OS 4.62)

I want to add my application to the Circle OS3.82, the steps are as follows:
when the process ended, the app didn't work, but when I use Ride7 to debug and load the application,it works well.I wonder why? Thanks!

C:\Program Files\Raisonance\Ride\Bin>Circle_Mgr.exe AF:\STM32\myproj\objdebug\ap
plication.o S
Circle_Mgr: software for managing CircleOS applications.
Copyright Raisonance 2007.


Connecting to RLink... OK
Connecting to target... OK
          Silicon Revision Id: 0x10016414.
          Option bytes: RDP=0xA5, USER=0xFF, WRP=0xFFFFFFFF
OK
Reading FAT table...
App0: Name=HELLO,  Addr=0x08006000, Size=8KB.... OK

Linking file F:\STM32\myproj\objdebug\application.o...
Link of F:\STM32\myproj\objdebug\application.o succeeded...
Hex file generated...
Blank-checking the FLASH area...
Erase page @8008000 OK

Erase page @8008400 OK

Erase page @8008800 OK
……

Offline

 

# 2   2010-06-29 01:07:54 How to add a new application? (project: Circle OS 4.62)

brucezcg
Member
Registered: 2010-06-21
Posts: 21

Re: How to add a new application? (project: Circle OS 4.62)

nobody help me?

Offline

 

# 3   2010-06-29 05:23:33 How to add a new application? (project: Circle OS 4.62)

ntrf.zns
Member
From: Belgorod, Russia
Registered: 2009-11-01
Posts: 134

Re: How to add a new application? (project: Circle OS 4.62)

How exactly it "didn't work"?

You can't see application in the list? Make sure you included the correct FAT.elf file to your project.

You also didn't posted the full log. Maybe you have some problems with linking process.

Offline

 

# 4   2010-06-30 01:21:12 How to add a new application? (project: Circle OS 4.62)

brucezcg
Member
Registered: 2010-06-21
Posts: 21

Re: How to add a new application? (project: Circle OS 4.62)

I can see the application, and my application is to show "Hello world!" on the screen, When I use Ride7 to debug, it worked well, but when I use Circle_Mgr.exe to load the application, Although I can see the application, but when it run ,it shows nothing,and the Primer2 didn't response any operation!

Offline

 

# 5   2010-06-30 06:20:46 How to add a new application? (project: Circle OS 4.62)

ntrf.zns
Member
From: Belgorod, Russia
Registered: 2009-11-01
Posts: 134

Re: How to add a new application? (project: Circle OS 4.62)

Can i see your Init routine?

By the way Circle_mgr won't overwrite any applications already installed. So if you still having the same apllication table as in here - your application didn't install correctly.

Code:

Reading FAT table...
App0: Name=HELLO,  Addr=0x08006000, Size=8KB.... OK

Offline

 

# 6   2010-07-01 07:14:35 How to add a new application? (project: Circle OS 4.62)

brucezcg
Member
Registered: 2010-06-21
Posts: 21

Re: How to add a new application? (project: Circle OS 4.62)

/************************* (C) COPYRIGHT 2007 RAISONANCE **********************
* File Name          :  Application.c
* Author             :
* Date First Issued  :
* Description        :  Circle_App CircleOS application template.
* Revision           :
*******************************************************************************/

/* Includes ------------------------------------------------------------------*/
#include "circle_api.h"

/* Private defines -----------------------------------------------------------*/

#define NEEDEDVERSION "V 1.5" // Put here the minimal CircleOS version needed by your application

/* Private variables ---------------------------------------------------------*/

/* Private functions ---------------------------------------------------------*/
enum MENU_code MsgVersion(void);

/* Public variables ----------------------------------------------------------*/

const char Application_Name[8+1] = {"HELLO"};  // max 8 characters for application name

/*******************************************************************************
* Function Name  : Application_Ini
* Description    : Initialization function of Circle_App. This function will
*                  be called only once by CircleOS.
* Input          : None
* Return         : MENU_CONTINUE_COMMAND
*******************************************************************************/
enum MENU_code Application_Ini ( void )
   {
   if(strcmp(UTIL_GetVersion(), NEEDEDVERSION) < 0)
      {
      return MsgVersion();
      }
     
      // TODO: Write your application initialization function here.
   BUTTON_SetMode(BUTTON_ONOFF);
   return MENU_CONTINUE_COMMAND;
   }

/*******************************************************************************
* Function Name  : Application_Handler
* Description    : Management of the Circle_App.
*
* Input          : None
* Return         : MENU_CONTINUE
*******************************************************************************/
enum MENU_code Application_Handler ( void )
   {

   // TODO: Write your application handling here.
   //       This routine will get called repeatedly by CircleOS, until we
   //       return MENU_LEAVE
   const char msg[] = "Hello, World!";
   u32 btn_status;
   
   LED_Set(LED_GREEN,LED_ON);
   DRAW_DisplayString( 5, 20, msg, sizeof(msg)); // X, Y, string, length
   
   btn_status = BUTTON_GetState();

    if(btn_status == BUTTON_PUSHED)
        return MENU_Quit();
    return MENU_CONTINUE;   // Returning MENU_LEAVE will quit to CircleOS
   }

/*******************************************************************************
* Function Name  : MsgVersion
* Description    : Display the current CircleOS version and the version needed
*                  exit to main menu after 4 secondes
*
* Input          : None
* Return         : MENU_CONTINUE
*******************************************************************************/
enum MENU_code MsgVersion(void)
   {
   int hh,mm,ss,ss2;
   
   DRAW_DisplayString(5,60,"CircleOS",17);
   DRAW_DisplayString(80,60,UTIL_GetVersion(),3);
   DRAW_DisplayString(5,34,NEEDEDVERSION,3);
   DRAW_DisplayString(40,34," required",12);
   
   RTC_GetTime(&hh,&mm,&ss);
   ss = ss + 4;                  // 4 secondes
   ss = ss%60;
   
   do
      {
      RTC_GetTime(&hh,&mm,&ss2);
      }while (ss2 != ss);           // do while < 4 secondes
   
   return MENU_REFRESH;
   }

Offline

 

# 7   2010-07-01 10:27:53 How to add a new application? (project: Circle OS 4.62)

ntrf.zns
Member
From: Belgorod, Russia
Registered: 2009-11-01
Posts: 134

Re: How to add a new application? (project: Circle OS 4.62)

Your application works fine on my PC: correctly installs and cotrrectly functions. Looks like it's problem with your circle_mgr.exe. Try updating the software.

Offline

 

# 8   2010-07-02 05:35:14 How to add a new application? (project: Circle OS 4.62)

brucezcg
Member
Registered: 2010-06-21
Posts: 21

Re: How to add a new application? (project: Circle OS 4.62)

Please Tell me your CircleOS & Ride version please

Offline

 

# 9   2010-07-03 13:58:07 How to add a new application? (project: Circle OS 4.62)

ntrf.zns
Member
From: Belgorod, Russia
Registered: 2009-11-01
Posts: 134

Re: How to add a new application? (project: Circle OS 4.62)

RIDE7 : 7.30.10.1059
RKit-ARM: 1.22.09.0254

Primer 2 PCB Version: 1.1
CircleOS: 3.8 (+ Touchscreen / LCD-on-FSMC / FS modified).

Offline

 

Board footer