﻿1/**
  ******************************************************************************
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * Copyright (C) Shanghai Eastsoft Microelectronics Co., Ltd. ALL rights reserved.
  *******************************************************************************
  */

<--------------------------------------------------------------------------------
Version history:
--------------------------------------------------------------------------------->
2024-03-12	V1.0.0	AE TEAM

<--------------------------------------------------------------------------------
Demo introduction:
--------------------------------------------------------------------------------->
1. Used on the board of ES-PDS-ES32F361x:
2. UART configure: 115200, 8, 1
3. Create two tasks:
	1) LED task: Continuously toggles the LED.
                2) Key task: if key1 is pressed, allocate memory from the memory
                    pool to store the current system time. If key2 is pressed, read the 
                    information stored in the previously allocated memory, print it 
                    and then free the memory.
<--------------------------------------------------------------------------------
System clock:
--------------------------------------------------------------------------------->
Internal HRC[4MHz] PLL to 72MHz.

<--------------------------------------------------------------------------------
Pin connection: 
--------------------------------------------------------------------------------->
KEY_TOP    ----  (PB5, GPIO_PIN_1)
KEY_BOTTOM ----  (PB7, GPIO_PIN_1)     
KEY_LEFT   ----  (PB4, GPIO_PIN_1) 
KEY_RIGHT  ----  (PB6, GPIO_PIN_1) 
KEY_CENTER ----  (PD2, GPIO_PIN_1) 

UART_TX    ----  (PB10, GPIO_FUNC_3)
UART_RX    ----  (PB11, GPIO_FUNC_3)