- fix F411 F334 systeminit when HSI used - portinout always read IDR regardless of port direction

Fork of mbed-src by mbed official

Committer:
Geremia
Date:
Sat Sep 27 11:16:28 2014 +0000
Revision:
332:e299ae530e63
Parent:
227:7bd0639b8911
- fix F411 F334 systeminit when HSI used; - STMs PortInOut port.read() always read input data register (real external pin state) even if direction is output (same as other platforms)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 227:7bd0639b8911 1 /* mbed Microcontroller Library
mbed_official 227:7bd0639b8911 2 * Copyright (c) 2006-2013 ARM Limited
mbed_official 227:7bd0639b8911 3 *
mbed_official 227:7bd0639b8911 4 * Licensed under the Apache License, Version 2.0 (the "License");
mbed_official 227:7bd0639b8911 5 * you may not use this file except in compliance with the License.
mbed_official 227:7bd0639b8911 6 * You may obtain a copy of the License at
mbed_official 227:7bd0639b8911 7 *
mbed_official 227:7bd0639b8911 8 * http://www.apache.org/licenses/LICENSE-2.0
mbed_official 227:7bd0639b8911 9 *
mbed_official 227:7bd0639b8911 10 * Unless required by applicable law or agreed to in writing, software
mbed_official 227:7bd0639b8911 11 * distributed under the License is distributed on an "AS IS" BASIS,
mbed_official 227:7bd0639b8911 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 227:7bd0639b8911 13 * See the License for the specific language governing permissions and
mbed_official 227:7bd0639b8911 14 * limitations under the License.
mbed_official 227:7bd0639b8911 15 */
mbed_official 227:7bd0639b8911 16 #ifndef MBED_ASSERT_H
mbed_official 227:7bd0639b8911 17 #define MBED_ASSERT_H
mbed_official 227:7bd0639b8911 18
mbed_official 227:7bd0639b8911 19 #ifdef __cplusplus
mbed_official 227:7bd0639b8911 20 extern "C" {
mbed_official 227:7bd0639b8911 21 #endif
mbed_official 227:7bd0639b8911 22
mbed_official 227:7bd0639b8911 23 /** Internal mbed assert function which is invoked when MBED_ASSERT macro failes.
mbed_official 227:7bd0639b8911 24 * This function is active only if NDEBUG is not defined prior to including this
mbed_official 227:7bd0639b8911 25 * assert header file.
mbed_official 227:7bd0639b8911 26 * In case of MBED_ASSERT failing condition, the assertation message is printed
mbed_official 227:7bd0639b8911 27 * to stderr and mbed_die() is called.
mbed_official 227:7bd0639b8911 28 * @param expr Expresion to be checked.
mbed_official 227:7bd0639b8911 29 * @param file File where assertation failed.
mbed_official 227:7bd0639b8911 30 * @param line Failing assertation line number.
mbed_official 227:7bd0639b8911 31 */
mbed_official 227:7bd0639b8911 32 void mbed_assert_internal(const char *expr, const char *file, int line);
mbed_official 227:7bd0639b8911 33
mbed_official 227:7bd0639b8911 34 #ifdef __cplusplus
mbed_official 227:7bd0639b8911 35 }
mbed_official 227:7bd0639b8911 36 #endif
mbed_official 227:7bd0639b8911 37
mbed_official 227:7bd0639b8911 38 #ifdef NDEBUG
mbed_official 227:7bd0639b8911 39 #define MBED_ASSERT(expr) ((void)0)
mbed_official 227:7bd0639b8911 40
mbed_official 227:7bd0639b8911 41 #else
mbed_official 227:7bd0639b8911 42 #define MBED_ASSERT(expr) \
mbed_official 227:7bd0639b8911 43 do { \
mbed_official 227:7bd0639b8911 44 if (!(expr)) { \
mbed_official 227:7bd0639b8911 45 mbed_assert_internal(#expr, __FILE__, __LINE__); \
mbed_official 227:7bd0639b8911 46 } \
mbed_official 227:7bd0639b8911 47 } while (0)
mbed_official 227:7bd0639b8911 48 #endif
mbed_official 227:7bd0639b8911 49
mbed_official 227:7bd0639b8911 50 #endif