Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos » Arduino y Raspberry Pi
Foros Registrarse ¿Olvidaste tu contraseña?
14/12/2016 #41


Americo8888 dijo: Ver Mensaje
Revivo este post, haber si algún compañero del foro me echa una mano, estoy controlando un linear array TCD1304AP de Toshiba con el STM32F103, ya pude controlar al CCD, mis intentos de usar Arduino fueron nulos pues no hay suficiente RAM (solo 2K) con el STM32 dispongo de 20K de RAM y es más rápido, para programar utilizo el IDE de Arduino 1.6 con el truco para el STM32, lo cierto es que cuando envío el buffer con 3648 valores hacia la PC a 115200 bauds, me toma 3 o 4 segundos, muy lento!, busco un ejemplo de código para transferencia masiva USB con el STM32F103, alguien tiene algo que me ayude?. Aquí el código de envio hacia la PC
Código:
 /*-----------------------------------------------------------
 Enviar datos del buffer hacia PC, por serial port, ¡es lento!
 ------------------------------------------------------------*/
void Enviar_buffer()
{
  digitalWrite(Led_testigo, HIGH); // Led testigo On
   // Ahora imprimimos al puerto serial
   for (int i=0;i<Num_Pixels;i++)
   {
    Serial.print(i);
    Serial.print(",");
    Serial.println(Pixel_array[i]);
   } 
  digitalWrite(Led_testigo, LOW); // Led testigo Off
}
Gracias
Americo
Yo mismo me respondo, ya encontré la solución para hacer la comunicación más rápida:
simplemente implemento una tasa de bauds muy alta; en el código del STM32, escribo algo así:
void setup()
{
//Serial.begin(115200); ésta es la máxima clásica en el IDE Arduino
Serial.begin(1500000); ésta es la que implementé
}
30/12/2016 #42


El Espectroscopio PC funcionando
Aqui muestro un video de la aplicación VB para un espectroscopio PC con 3648 pixeles del TCD1304 controlado por un STM32F103, comentado lineas arriba
Americo8888
31/12/2016 #43


2da parte del Espectroscopio PC con STM32
STM32F103 controlando un sensor lineal TCD1304 de 3648 pixels para el Espectroscopio PC
Americo8888
15/04/2017 #44

Avatar de george.manson.69

Frdm-kl25z
Hola amigos,

Les comparto algunas practicas que hice con la tarjeta de Frdm-KL25Z usando Keil Uvision 5,

El codigo es de ejemplo con el uso de una pantall OLED

Código:
#include <MKL25Z4.h>
#include "SPI0.h"
#include "oled_GXF.h"

const uint8_t _5a8dccb220de5c6775c873ead6ff2e43Bitmaps[] =
{
	0x20, 0x00, 0x01, 0x80, //   #                    ##  
	0x78, 0x0E, 0x03, 0xC0, //  ####       ###       #### 
	0xCC, 0x7F, 0xC7, 0x60, // ##  ##   #########   ### ##
	0xC7, 0xC0, 0xF0, 0x60, // ##   #####      ####     ##
	0xDB, 0x00, 0x1F, 0xE0, // ## ## ##           ########
	0xFC, 0x00, 0x06, 0x60, // ######               ##  ##
	0xD8, 0x00, 0x03, 0xC0, // ## ##                 #### 
	0xF0, 0x00, 0x01, 0xE0, // ####                   ####
	0xF0, 0x00, 0x01, 0xE0, // ####                   ####
	0x60, 0x00, 0x00, 0x40, //  ##                      # 
	0x40, 0x00, 0x00, 0xC0, //  #                      ## 
	0x60, 0x00, 0x00, 0xC0, //  ##                     ## 
	0x63, 0x80, 0x38, 0x80, //  ##   ###         ###   #  
	0x47, 0x80, 0x3C, 0xC0, //  #   ####         ####  ## 
	0x27, 0xB4, 0xFD, 0x80, //   #  #### ## #  ###### ##  
	0x33, 0x9F, 0x3C, 0x80, //   ##  ###  #####  ####  #  
	0x1E, 0x1E, 0x0F, 0x00, //    ####    ####     ####   
	0x0A, 0x06, 0x06, 0x00, //     # #      ##      ##    
	0x07, 0x00, 0x5C, 0x00, //      ###         # ###     
	0x01, 0xC8, 0xF0, 0x00, //        ###  #   ####       
	0x03, 0x3F, 0x88, 0x00, //       ##  #######   #      
	0x02, 0x3F, 0x98, 0x00, //       #   #######  ##      
	0x03, 0x1F, 0x18, 0x00, //       ##   #####   ##      
	0x05, 0xBF, 0xEC, 0x00, //      # ## ######### ##     
	0x04, 0xFD, 0xE4, 0x00, //      #  ###### ####  #     
	0x08, 0x79, 0xC6, 0x00, //     #    ####  ###   ##    
	0x0C, 0xF1, 0xE2, 0x00, //     ##  ####   ####   #    
	0x05, 0xFB, 0xF6, 0x00, //      # ###### ###### ##    
	0x06, 0x76, 0xCC, 0x00, //      ##  ### ## ##  ##     
	0x03, 0xEC, 0xF8, 0x00, //       ##### ##  #####      
	0x01, 0xFF, 0xB0, 0x00, //        ########## ##       
	0x00, 0x0F, 0x00, 0x00, //             ####           
};

void GPIO_Init(void){

	SIM->SCGC5 |= SIM_SCGC5_PORTD(1);		// Open Clock to PORTD
	PORTD->PCR[1] = PORT_PCR_MUX(2);		// PIN 1 AS CLK
	PORTD->PCR[2] = PORT_PCR_MUX(2);		// PIN 2 AS MOSI
	//PORTD->PCR[3] = PORT_PCR_MUX(2);	// PIN 3 AS MISO
	PORTD->PCR[0] = PORT_PCR_MUX(1);		// PIN 0 AS SS
	PORTD->PCR[5] = PORT_PCR_MUX(1);		// PIN 5 AS RST
	PORTD->PCR[6] = PORT_PCR_MUX(1);		// PIN 6 AS DC
 	
	GPIOD->PDDR	|= (1 << 1);						// PIN 1 AS OUTPUT / CLK
	GPIOD->PDDR	|= (1 << 2);						// PIN 2 AS OUTPUT / MOSI
	//GPIOD->PDDR	&= ~(1 << 3);					// PIN 3 AS INPUT  / MISO
	GPIOD->PDDR	|= (1 << 0);						// PIN 0 AS OUTPUT / SS

	GPIOD->PDDR |= (1 << 5);						//PIN 5 AS RST
	GPIOD->PDDR |= (1 << 6);						//PIN 6 AS DC


}

int main(void){
	
	GPIO_Init();
	SPI0_Init();
	
	init_screen();

	while(1){
	
			Screen_invertDisplay(1);
			Screen_display();
			delay_ms(250);
			Screen_invertDisplay(0);
			Screen_display();
			delay_ms(250);
			Screen_clearDisplay();
			drawBitmap1(0,0,_5a8dccb220de5c6775c873ead6ff2e43Bitmaps,32,32,WHITE);
			Screen_display();
			
			startscrolldiagright(0x00,0x07);
		
			while(1);	
	
	}


}


¡Saludos!
Archivos Adjuntos
Tipo de Archivo: zip KL25.zip (4,68 MB (Megabytes), 0 visitas)
17/04/2017 #45

Avatar de george.manson.69

Frdm-kl25z
Hola,

Les comparto un video introductorio par los Microcontroladores KL25Z.


¡Saludos!
29/04/2017 #46

Avatar de george.manson.69

Tutorial FRDM KL25Z 2
Hola a todos,

Les comparto un video sobre usar la libreria del acelerometro MMA8451Q.


¡Saludos!
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Arduino y Raspberry Pi

Cerrar
Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos » Arduino y Raspberry Pi

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.