Fixed with HAL.
Fork of ST_L152_32MHZ by
Not finish yet. External crystal doesn't work.
Diff: ST_L152_32MHZ.h
- Revision:
- 0:84e23a19e37d
- Child:
- 1:bdeac50afe1a
diff -r 000000000000 -r 84e23a19e37d ST_L152_32MHZ.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ST_L152_32MHZ.h Tue Mar 11 20:34:57 2014 +0000 @@ -0,0 +1,49 @@ +/* mbed library for the ST NUCLEO board L152RE + * to change the CPU clock to 32 MHz + * A pll clock of 96 MHz is used to enable USB + * + * Copyright (c) 2014 Peter Drescher - DC2PD + * Released under the MIT License: http://mbed.org/license/mit + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + +#ifndef MBED_ST_L152_32MHZ_H +#define MBED_ST_L152_32MHZ_H + +/** Setup cpu speed to 32 MHz + * + * @code + * #include "mbed.h" + * #include "ST_L152_32MHZ.h" + * + * // place the init before other code to ensure right timing of other objects ! + * L152_init32 myinit(0); // use the internal oscillator + * + */ + +class L152_init32 +{ +public: + /** Create a L152_init32 object to change the clock + * @param external = 0 use internal oscillator + * @param external = 1 use external 8 MHz crystal - you have to add some comonents to the pcb ! +*/ +L152_init32(unsigned int external); +int clk_err; + +protected: +// do the magic ;-) +int setup_clock_32MHZ(int external); +}; + +#endif + +