Caratula de analisis numericos

Dependencies:   mbed STM32F103C8T6_Hello

Files at this revision

API Documentation at this revision

Comitter:
JasperQM
Date:
Fri Sep 13 16:51:31 2019 +0000
Parent:
13:485613003845
Commit message:
Caratula

Changed in this revision

PinNames.h Show annotated file Show diff for this revision Revisions of this file
STM32F103C8T6_Portada.lib Show annotated file Show diff for this revision Revisions of this file
SysClockConf.cpp Show annotated file Show diff for this revision Revisions of this file
SysClockConf.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
stm32f103c8t6.h Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/PinNames.h	Fri Sep 13 16:51:31 2019 +0000
@@ -0,0 +1,152 @@
+/* mbed Microcontroller Library
+ *******************************************************************************
+ * Copyright (c) 2014, STMicroelectronics
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ *    this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ *    this list of conditions and the following disclaimer in the documentation
+ *    and/or other materials provided with the distribution.
+ * 3. Neither the name of STMicroelectronics nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * 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.
+ *******************************************************************************
+ *
+ * Modified by Zoltan Hudak 2017
+ *
+ */
+#ifndef MBED_PINNAMES_H
+#define MBED_PINNAMES_H
+
+#include "cmsis.h"
+#include "PinNamesTypes.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+    // Not connected
+    NC = (int)0xFFFFFFFF,
+
+    // Ports
+    PA_0  = 0x00,
+    PA_1  = 0x01,
+    PA_2  = 0x02,
+    PA_3  = 0x03,
+    PA_4  = 0x04,
+    PA_5  = 0x05,
+    PA_6  = 0x06,
+    PA_7  = 0x07,
+    PA_8  = 0x08,
+    PA_9  = 0x09,
+    PA_10 = 0x0A,
+    PA_11 = 0x0B,
+    PA_12 = 0x0C,
+    PA_13 = NC,
+    PA_14 = NC,
+    PA_15 = 0x0F,
+
+    PB_0  = 0x10,
+    PB_1  = 0x11,
+    PB_2  = NC,
+    PB_3  = 0x13,
+    PB_4  = 0x14,
+    PB_5  = 0x15,
+    PB_6  = 0x16,
+    PB_7  = 0x17,
+    PB_8  = 0x18,
+    PB_9  = 0x19,
+    PB_10 = 0x1A,
+    PB_11 = 0x1B,
+    PB_12 = 0x1C,
+    PB_13 = 0x1D,
+    PB_14 = 0x1E,
+    PB_15 = 0x1F,
+
+    PC_0  = NC,
+    PC_1  = NC,
+    PC_2  = NC,
+    PC_3  = NC,
+    PC_4  = NC,
+    PC_5  = NC,
+    PC_6  = NC,
+    PC_7  = NC,
+    PC_8  = NC,
+    PC_9  = NC,
+    PC_10 = NC,
+    PC_11 = NC,
+    PC_12 = NC,
+    PC_13 = 0x2D,
+    PC_14 = 0x2E,
+    PC_15 = 0x2F,
+
+    PD_2  = NC,
+
+    // ADC internal channels
+    ADC_TEMP = 0xF0,
+    ADC_VREF = 0xF1,
+
+    // Arduino connector namings
+    A0          = PA_0,
+    A1          = PA_1,
+    A2          = PA_4,
+    A3          = PB_0,
+    A4          = NC,
+    A5          = NC,
+    D0          = PA_3,
+    D1          = PA_2,
+    D2          = PA_10,
+    D3          = PB_3,
+    D4          = PB_5,
+    D5          = PB_4,
+    D6          = PB_10,
+    D7          = PA_8,
+    D8          = PA_9,
+    D9          = NC,
+    D10         = PB_6,
+    D11         = PA_7,
+    D12         = PA_6,
+    D13         = PA_5,
+    D14         = PB_9,
+    D15         = PB_8,
+
+    // Generic signals namings
+    LED1        = PC_13,
+    LED2        = NC,
+    LED3        = NC,
+    LED4        = NC,
+    USER_BUTTON = NC,
+    SERIAL_TX   = PA_2,
+    SERIAL_RX   = PA_3,
+    USBTX       = PA_2,
+    USBRX       = PA_3,
+    I2C_SCL     = PB_8,
+    I2C_SDA     = PB_9,
+    SPI_MOSI    = PA_7,
+    SPI_MISO    = PA_6,
+    SPI_SCK     = PA_5,
+    SPI_CS      = PB_6,
+    PWM_OUT     = PB_3
+} PinName;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/STM32F103C8T6_Portada.lib	Fri Sep 13 16:51:31 2019 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/hudakz/code/STM32F103C8T6_Hello/#485613003845
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SysClockConf.cpp	Fri Sep 13 16:51:31 2019 +0000
@@ -0,0 +1,60 @@
+/*
+  ******************************************************************************
+  * @file    SysClockConf.c
+  * @author  Zoltan Hudak
+  * @version 
+  * @date    05-July-2016
+  * @brief   System Clock configuration for STM32F103C8T6
+  ******************************************************************************
+  * @attention
+  *
+  * <h2><center>&copy; COPYRIGHT(c) 2016 Zoltan Hudak <hudakz@outlook.com>
+  *
+  * All rights reserved.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+  */
+
+#include "SysClockConf.h"
+#include "mbed.h"
+
+void HSE_SystemClock_Config(void) {
+    RCC_OscInitTypeDef        RCC_OscInitStruct;
+    RCC_ClkInitTypeDef        RCC_ClkInitStruct;
+    RCC_PeriphCLKInitTypeDef  PeriphClkInit;
+
+    RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
+    RCC_OscInitStruct.HSEState = RCC_HSE_ON;
+    RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1;
+    RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
+    RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
+    RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9;
+    HAL_RCC_OscConfig(&RCC_OscInitStruct);
+    RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
+    RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
+    RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
+    RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
+    RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
+    HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2);
+    PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_ADC|RCC_PERIPHCLK_USB;
+    PeriphClkInit.AdcClockSelection = RCC_ADCPCLK2_DIV6;
+    PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_PLL_DIV1_5;
+    HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit);
+}
+
+void confSysClock(void) {
+    HAL_RCC_DeInit();
+    HSE_SystemClock_Config();
+    SystemCoreClockUpdate();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SysClockConf.h	Fri Sep 13 16:51:31 2019 +0000
@@ -0,0 +1,2 @@
+#pragma once
+void confSysClock(void);
\ No newline at end of file
--- a/main.cpp	Tue Feb 05 08:30:37 2019 +0000
+++ b/main.cpp	Fri Sep 13 16:51:31 2019 +0000
@@ -1,17 +1,189 @@
+/* ###########################################################################
+**    Archivo        : main.c
+**    Proyecto       : STM32-F103C8_Plantilla
+**    Procesador     : STM32F103C8
+**    Herramienta    : Mbed
+**    Version        : Driver 01.01
+**    Compilador     : GNU C Compiler
+**    Fecha/Hora     : 14-07-2015, 11:48, # CodeGen: 0
+**    Descripción    :
+**         Este proyecto muestra la configuracion del uso de la terminal serial
+**         This module contains user's application code.
+**   Componentes     : Serial, etc .
+**   Configuraciones : Se puede selecionar entre diferentes  velocidades de transmision
+**   Autores         :
+**         ATEAM Development Group:
+**          - Antulio Morgado Valle
+**
+**   Versión        : Beta
+**   Revisión       : A
+**   Release        : 0
+**   Bugs & Fixes   :
+**   Date           : 20/10/2019
+**                    Added support for Led_RGB
+**                    22/09/2018 
+**                    Added LCD Menu, Beta version (with bugs)
+**
+** ###########################################################################*/
+/*
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+:  Includes
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+*/
 #include "mbed.h"
+#include "stm32f103c8t6.h"
+#include "PinNames.h"
+#include "Serial.h"
+#include "stdio.h"
 
-Serial      pc(PA_2, PA_3); // TX, RX
-DigitalOut  myled(PC_13);   // on-board LED
+/*
+:...............................................................................
+:  Definiciones
+:...............................................................................
+*/
+#define  on             0               // Estado para boton presionado
+#define off             1               // Estado para boton sin presionar
+#define hold            2               // Estado para boton mantenido
+#define release         3               // Estado para boton liberado
+#define FALSE           0               // Estado FASLO
+#define TRUE            1               // Estado VERDADERO
+/*
++-------------------------------------------------------------------------------
+|  Configuración de Puertos 
++-------------------------------------------------------------------------------
+*/
+// Host Pc terminal Comunication channel
+Serial terminal (PA_2,PA_3);  //Inicioaliza la comunicacion serial a la PC(RX,TX)   
+//Serial terminal(USBTX,USBRX,1115200);/TX,RX
+/*
++-------------------------------------------------------------------------------
+|  Variables Globales de Usuario 
++-------------------------------------------------------------------------------
+*/
+uint32_t Baud_Rate   =  115200 ;           // Velocidad de transmision
+/*
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+|  Definición de Funciones Prototipo y Rutinas de los Vectores de Interrupción
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+*/
+void Setup(void); //Function que inicializa la tarjeta;
+/*
+END definitions */  
+/*
+#===============================================================================
+|
+|               P R O G R A M A     P R I N C I P A L
+|
+#=============================================================================== 
+*/
+int main()          
+{
+void confSysClock();
+void Setup();
+terminal.printf("escuela");
+int i=0;
+do
+{
+    printf("* ");
+    i++;
+}while(i<29);
+printf("\n*\n*       Instituto Polietecnico Nacional           \t*");
+printf("\n* Escuela Superior de Ingenieria Mecanica y Electrica\t*");
+printf("\n*\n*              Analisis numerico                  \t*");
+printf("\n*\n*          Quintana Malaga Jordi Jasper           \t*");
+printf("\n*                  Grupo: 4CV2                       \t\n");
+do
+{
+    printf("* ");
+    i++;
+}while(i<58);
+
+system("pause");
+return 0;
+}
+/* END main */
+
+/*
+................................................................................
+:  Rutinas de los Vectores de Interrupción
+................................................................................
+*/
   
-int main() 
-{  
-    while(1) {
-        // The on-board LED is connected via a resistor to +3.3V (not to GND). 
-        // So the LED is active on 0
-        myled = 0;      // turn the LED on
-        wait_ms(200);   // wait 200 millisecond
-        myled = 1;      // turn the LED off
-        pc.printf("Blink\r\n");
-        wait_ms(1000);  // wait 1000 millisecond
-    }
+/*
+______________________________________________________________________________
+|
+|  Funciones Prototipo
+|_______________________________________________________________________________
+*/
+                // Las Funciones Prototipo van aquí !
+void Setup() 
+{
+  terminal.baud(Baud_Rate);
+  terminal.printf("System is wake up!.\n\t");
 }
+/* END routines */    
+                
+/* END program */
+
+/*+-----------------------------------------------------------------------------       
+*+  Conexión al Led Testigo:
+*+ 
+*+  Los leds se pueden conectar a cualquier pin que se declare como DigitalOut. 
+*+  El dispositivo puede drenar hasta 20ma por todas sus salidas a un voltaje de 
+*+  3.3V, pero se recomienda no exceder de 1mA por salida.
+*+  Esto se logra poniendo una resistencia limitadora de mínimo 330 Ohms.
+*+  
+*+    3.3V o 5V
+*+       O
+*+       |
+*+       |
+*+       /
+*+       \   1K
+*+       /
+*+       \                         UTILIZANDO LÓGICA NEGATIVA
+*+       |
+*+    __|__
+*+    \      /
+*+     \    /
+*+      \  /
+*+     _\/_
+*+       |
+*+       |__________________________  PIN (Digital Out)
+*+
+*+      
+*+      
+*+       
+*+                    1K
+*+                   
+*+        ________/\  /\  /\  ____    PIN (Digital Out)
+*+       |           \/  \/  \/
+*+       |      
+*+       |
+*+     __|__
+*+    \      /
+*+     \    /
+*+      \  /                       UTILIZANDO LÓGICA POSITIVA
+*+      _\/_
+*+       |
+*+       |
+*+       |
+*+     __|__
+*+      ___
+*+       _
+*+       _
+*+
+*+      GND
+*+
++----------------------------------------------------------------------------
+*+
+*+   Powered by
+*+
+*+          T H E     A N T U L I U ' S   T E A M   R&D  Unltd 
+*+
+*+  Research, Development, Systems, Equipment, Support & Spare Parts.
+*+  (C) Copyright 1989-2019, All Rights Reserved            
+*+
+*+  Welcome to The Beaners Proyect Community!                   
+*+----------------------------------------------------------------------------*/
+
+/* END Mbed */
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stm32f103c8t6.h	Fri Sep 13 16:51:31 2019 +0000
@@ -0,0 +1,3 @@
+#pragma once
+#include "PinNames.h"
+#include "SysClockConf.h"