Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: TextLCD mbed-STM32F103C8T6 mbed
main.cpp
00001 //Realizado por Luis Malavé en e Smart Labs Electronics 00002 00003 #include "mbed.h" 00004 #include "TextLCD.h" 00005 #include "stm32f103c8t6.h" // en caso de usar Bluepill importar esta libreria para tener compatibilidad con los pines 00006 00007 TextLCD lcd(PB_9, PB_8, PB_7, PB_6, PB_5, PB_4, TextLCD::LCD16x2); // 4bit bus: rs, e, d4,d5,d6,d7, tipo de pantalla 00008 DigitalOut led(PC_13); // usado como monitor de estado de alto voltaje 00009 AnalogIn Vin (PA_0); // entrada de lectura analogica A0 00010 float realv; // medición de voltaje float 00011 00012 int main() { // Mi introduciión del programa 00013 lcd.locate(2,0); 00014 lcd.printf("e Smart Labs"); // imprime en pantalla 00015 wait(2); 00016 while(1) { 00017 lcd.cls (); // comando de borrado de pantalla 00018 lcd.locate(1,0); 00019 lcd.printf("STM32F103C8T6"); 00020 lcd.locate(1,1); 00021 lcd.printf("Mbed Bluepill"); 00022 wait (3); // espera 3 segundos 00023 00024 lcd.cls(); 00025 wait(0.5); 00026 while(1){ 00027 realv = (Vin * 200); // calculo de voltaje real 00028 lcd.cls(); 00029 lcd.locate(0,0); 00030 lcd.printf("%.2f Voltios", realv); // imprime el valor de la medición y el texto en display (%f imprime todos los decimales %.2f solo dos decimales) 00031 wait_ms(500); 00032 00033 if (realv > 120) { // Si el valor de medición es superior a 120 voltios enciende el Led e imprime en pantalla la condición 00034 led = 0; // por la configuración del led PC_13 enciende en estado bajo 00035 lcd.locate(1,1); 00036 lcd.printf("Sobrevoltaje", realv); 00037 wait_ms(500); 00038 } 00039 else { 00040 led = 1; // apaga el led en estado alto por la configuracion del led PC_13 00041 lcd.locate(1,1); 00042 lcd.printf("Voltaje OK", realv); 00043 wait_ms(3000); 00044 } 00045 00046 00047 00048 //lcd.printf("Volt(%f)", Vin.read()); 00049 //wait(2); 00050 } 00051 } 00052 }
Generated on Tue Jul 26 2022 01:05:26 by
1.7.2