Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

ARM RTOS programming ?

Status
Not open for further replies.

Embedded Partner

Full Member level 5
Full Member level 5
Joined
Nov 29, 2010
Messages
247
Helped
42
Reputation
84
Reaction score
37
Trophy points
1,308
Location
Hubli(INDIA)
Activity points
2,636
ARM RTOS programming(Blue Board) ?

can any one help me on ARM RTOS?

how to start ARM RTOS programming?

---------- Post added at 05:22 ---------- Previous post was at 05:20 ----------

i am using ARM 7TDMI-S processor(Blue Board) of LPC2148 processor
 
Last edited:

which processor does the blueboard have...
you can port Embedded Linux if Blueboard has AT9RM9200 .

the easiest is to port micro C OSII and do rtos programming if it has 2148 controller
refer this you would get some idea

**broken link removed**

**broken link removed**
 

i am using LPC2148 processor

---------- Post added at 06:01 ---------- Previous post was at 05:49 ----------

thanks ckshivaram

but how to begin with RTOS programming?

---------- Post added at 07:16 ---------- Previous post was at 06:01 ----------

how to write the program for ARM RTOS?

if there any example code for ARM RTOS please post it here..
 
Last edited:

C:\Keil\ARM\RV30\RTL\Kernel\Examples

---------- Post added at 22:27 ---------- Previous post was at 22:26 ----------

Micrium - LPC21xx

---------- Post added at 22:34 ---------- Previous post was at 22:27 ----------

Micrium - Application Notes
 
can any one provide ARM RTOS code for LPC2148 processor

---------- Post added at 05:32 ---------- Previous post was at 05:31 ----------

can anyone guide me to write the RTOS code for LPC2148?
 

i have written the code , please see the attachment
but i am getting some errors as, can any one tell me how to overcome with these errors

RTOS1.axf: Error: L6218E: Undefined symbol os_active_TCB (referred from rt_event.o).
RTOS1.axf: Error: L6218E: Undefined symbol tsk_lock (referred from rt_event.o).
RTOS1.axf: Error: L6218E: Undefined symbol tsk_unlock (referred from rt_event.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_alloc_TCB (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_free_TCB (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_idle_demon (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_init_context (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_init_mem (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_maxtaskrun (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_init (referred from rt_task.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_chk_robin (referred from rt_clock.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_force_irq (referred from rt_clock.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_inspect_cnt (referred from rt_clock.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_inspect_ovf (referred from rt_clock.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_reload (referred from rt_clock.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_clock_interrupt0 (referred from IRQ_RTX.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_alloc_TMR (referred from rt_timer.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_free_TMR (referred from rt_timer.o).
RTOS1.axf: Error: L6218E: Undefined symbol os_tmr_call (referred from rt_timer.o).
 

Attachments

  • ARM rtos program.rar
    579 bytes · Views: 117

These are all defined in the RTX_Config.c file that you need to compile as part of your application. Look at any of the examples for you board for help.
your problem will be solved if you add " RTX_config.c"
 
Thank you sir
now the errors are went but the output is not coming
i am doing 2 task
task1:buzzer_operation();
task2:ADC_operation();

could you please tell me where i am going wrong in this code
...
i have attached the code here
 

Attachments

  • ARM rtos program.rar
    621 bytes · Views: 125

now i am getting the output for the 2 Task's only

---------- Post added at 06:58 ---------- Previous post was at 06:57 ----------

for the 3rd task i am not getting any output

i have created the 3rd task in 2nd task, am i right here ?
 

good that you are learning fast and on your own with little guidance...... what is the priority of task 3.... i think you have a minor problem.. revisit your code once, you may find a minor fault.....
 

i have given 4th priority to the task 3...
this program is as similar as previously attached attachment
 

i have written the code and its working during equal priority
if i change the priorities then the 2nd ,3rd and 4th task's are not executing...
can anyone guide me for using other priority ?
 

Attachments

  • working program for 4 task.rar
    94 bytes · Views: 108

Hello,

Usualy the user it is not allowed to block the tasks with structure for(;;){...};
The task can be cyclic or on event and should be as small us possible, after a time you will be in os shutdown error, because OS has failsafe mecanism to prevent blocking task(software timers are incressed and when they overflow will result OS shutdown) In the core of the OS there is a for(;;){} loop. A timer interrupt generate the time period for the OS. The OS has a manger that generate tasks according with priority.
I would not use wait type instruction. We can do more then that, we can use timer hardware/software, not to look the microcontroller.
The cpu load is computed by total usage of time in tasks, the rest it is idle in the OS loop.
 
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top