FRDM K64F Metronome

Committer:
ram54288
Date:
Sun May 14 18:35:07 2017 +0000
Revision:
0:a2cb7295a1f7
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ram54288 0:a2cb7295a1f7 1 /*
ram54288 0:a2cb7295a1f7 2 * Copyright (c) 2016 ARM Limited. All rights reserved.
ram54288 0:a2cb7295a1f7 3 * SPDX-License-Identifier: Apache-2.0
ram54288 0:a2cb7295a1f7 4 * Licensed under the Apache License, Version 2.0 (the License); you may
ram54288 0:a2cb7295a1f7 5 * not use this file except in compliance with the License.
ram54288 0:a2cb7295a1f7 6 * You may obtain a copy of the License at
ram54288 0:a2cb7295a1f7 7 *
ram54288 0:a2cb7295a1f7 8 * http://www.apache.org/licenses/LICENSE-2.0
ram54288 0:a2cb7295a1f7 9 *
ram54288 0:a2cb7295a1f7 10 * Unless required by applicable law or agreed to in writing, software
ram54288 0:a2cb7295a1f7 11 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
ram54288 0:a2cb7295a1f7 12 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ram54288 0:a2cb7295a1f7 13 * See the License for the specific language governing permissions and
ram54288 0:a2cb7295a1f7 14 * limitations under the License.
ram54288 0:a2cb7295a1f7 15 */
ram54288 0:a2cb7295a1f7 16
ram54288 0:a2cb7295a1f7 17 #ifndef _PAL_RTOS_TEST_UTILS_H
ram54288 0:a2cb7295a1f7 18 #define _PAL_RTOS_TEST_UTILS_H
ram54288 0:a2cb7295a1f7 19
ram54288 0:a2cb7295a1f7 20 #include "pal_types.h"
ram54288 0:a2cb7295a1f7 21 #include "pal_rtos.h"
ram54288 0:a2cb7295a1f7 22 #include "pal_test_utils.h"
ram54288 0:a2cb7295a1f7 23
ram54288 0:a2cb7295a1f7 24 #define THREAD_STACK_SIZE 1024*sizeof(uint32_t)
ram54288 0:a2cb7295a1f7 25
ram54288 0:a2cb7295a1f7 26 typedef struct threadsArgument{
ram54288 0:a2cb7295a1f7 27 uint32_t arg1;
ram54288 0:a2cb7295a1f7 28 uint32_t arg2;
ram54288 0:a2cb7295a1f7 29 uint32_t arg3;
ram54288 0:a2cb7295a1f7 30 uint32_t arg4;
ram54288 0:a2cb7295a1f7 31 uint32_t arg5;
ram54288 0:a2cb7295a1f7 32 uint32_t arg6;
ram54288 0:a2cb7295a1f7 33 uint32_t arg7;
ram54288 0:a2cb7295a1f7 34 }threadsArgument_t;
ram54288 0:a2cb7295a1f7 35
ram54288 0:a2cb7295a1f7 36
ram54288 0:a2cb7295a1f7 37 extern threadsArgument_t g_threadsArg;
ram54288 0:a2cb7295a1f7 38
ram54288 0:a2cb7295a1f7 39 extern uint32_t g_threadStorage[20];
ram54288 0:a2cb7295a1f7 40
ram54288 0:a2cb7295a1f7 41 void palThreadFunc1(void const *argument);
ram54288 0:a2cb7295a1f7 42 void palThreadFunc2(void const *argument);
ram54288 0:a2cb7295a1f7 43 void palThreadFunc3(void const *argument);
ram54288 0:a2cb7295a1f7 44 void palThreadFunc4(void const *argument);
ram54288 0:a2cb7295a1f7 45 void palThreadFunc5(void const *argument);
ram54288 0:a2cb7295a1f7 46 void palThreadFunc6(void const *argument);
ram54288 0:a2cb7295a1f7 47
ram54288 0:a2cb7295a1f7 48
ram54288 0:a2cb7295a1f7 49 typedef struct timerArgument{
ram54288 0:a2cb7295a1f7 50 uint32_t ticksBeforeTimer;
ram54288 0:a2cb7295a1f7 51 uint32_t ticksInFunc1;
ram54288 0:a2cb7295a1f7 52 uint32_t ticksInFunc2;
ram54288 0:a2cb7295a1f7 53 }timerArgument_t;
ram54288 0:a2cb7295a1f7 54
ram54288 0:a2cb7295a1f7 55 extern timerArgument_t g_timerArgs;
ram54288 0:a2cb7295a1f7 56
ram54288 0:a2cb7295a1f7 57 void palTimerFunc1(void const *argument);
ram54288 0:a2cb7295a1f7 58 void palTimerFunc2(void const *argument);
ram54288 0:a2cb7295a1f7 59
ram54288 0:a2cb7295a1f7 60
ram54288 0:a2cb7295a1f7 61 void palThreadFuncCustom1(void const *argument);
ram54288 0:a2cb7295a1f7 62 void palThreadFuncCustom2(void const *argument);
ram54288 0:a2cb7295a1f7 63 void palThreadFuncCustom3(void const *argument);
ram54288 0:a2cb7295a1f7 64 void palThreadFuncCustom4(void const *argument);
ram54288 0:a2cb7295a1f7 65
ram54288 0:a2cb7295a1f7 66
ram54288 0:a2cb7295a1f7 67 #define MEMORY_POOL1_BLOCK_SIZE 32
ram54288 0:a2cb7295a1f7 68 #define MEMORY_POOL1_BLOCK_COUNT 5
ram54288 0:a2cb7295a1f7 69 #define MEMORY_POOL2_BLOCK_SIZE 12
ram54288 0:a2cb7295a1f7 70 #define MEMORY_POOL2_BLOCK_COUNT 4
ram54288 0:a2cb7295a1f7 71
ram54288 0:a2cb7295a1f7 72 extern palMutexID_t mutex1;
ram54288 0:a2cb7295a1f7 73 extern palMutexID_t mutex2;
ram54288 0:a2cb7295a1f7 74
ram54288 0:a2cb7295a1f7 75 extern palSemaphoreID_t semaphore1;
ram54288 0:a2cb7295a1f7 76
ram54288 0:a2cb7295a1f7 77 #endif //_PAL_RTOS_TEST_UTILS_H