Chris Conlon b89354880f switch pragma once uses, causes warnings on some compilers | 9 ani în urmă | |
---|---|---|
.. | ||
Kinetis_FlashPlacement.xml | 9 ani în urmă | |
Kinetis_MemoryMap.xml | 9 ani în urmă | |
README.md | 9 ani în urmă | |
arm_startup.c | 9 ani în urmă | |
benchmark_main.c | 9 ani în urmă | |
hw.h | 9 ani în urmă | |
include.am | 9 ani în urmă | |
kinetis_hw.c | 9 ani în urmă | |
retarget.c | 9 ani în urmă | |
test_main.c | 9 ani în urmă | |
user_settings.h | 9 ani în urmă | |
wolfssl.hzp | 9 ani în urmă |
This directory contains a CrossWorks solution named wolfssl.hzp.
Inside are three projects:
You will need to install the "Freescale Kinetis CPU Support Package" in the Rowley Package Manager under Tools -> Pacakge Manager.
All hardware functions are defined in kinetis_hw.c
and are currently setup for a Freescale Kinetis K64 Coretx-M4 microcontroller. This file can be customized to work with other Kinetis microcontrollers by editing the top part of the file. Testing for this project was done with the Freescale Kinetis MK64FN1M0xxx12
using the TWR-K64F120M
.
To create support for a new ARM microcontroller the functions in hw.h
will need to be implemented.
Also you will need to configure the ARM Architecture and ARM Core Type in the "Solution Properties" -> "ARM". Also the "Target Processor" in each of the projects ("Project Properties" -> "Target Processor")
To enable Freescale MMCAU:
lib_mmcau.a
and cau_api.h
files into the project.FREESCALE_MMCAU
define in user_settings.h
and make sure its value is 1
.lib_mmcau.a
file to Source Files
in the application project.arm_startup.c
: Handles startup from reset_handler
. Disabled watchdog, initializes sections, initializes heap, starts harware and starts main.benchmark_main.c
: The main function entrypoint for benchmark application.hw.h
: The hardware API interface. These hardware interface functions are required for all platforms.kinetis_hw.c
: The most basic hardware implementation required for Kinetis.test_main.c
: The main function entrypoint for test application.user_libc.c
: Defines stubs for functions required by libc. It also wraps hardware functions for UART, RTC and Random Number Generator (RNG).user_settings.h
: This is the custom user configuration file for WolfSSL.If you are writting your own application, the following functions need to be implemented to support the WolfSSL library:
double current_time(int reset)
: Returns a doulbe as seconds.milliseconds.int custom_rand_generate(void)
: Returns a 32-bit randomly generated number.