/**************************************************************************** * Copyright: (C)2018 Î人ÁèÔÆÎïÍøÖÇ¿ÆÊµÑéÊÒ www.iot-yun.com * Author: GuoWenxue QQ: 281143292 * Description: ·Ü¶·STM32v5¿ª·¢°å ´®¿ÚʹÓóÌÐò * * ChangeLog: * °æ±¾ºÅ ÈÕÆÚ ×÷Õß ËµÃ÷ * V1.0.0 2018.05.11 GuoWenxue ·¢²¼¸Ã°æ±¾ ****************************************************************************/ #include #include #include "stm32f10x.h" #include "stm32v5_led.h" #include "stm32v5_usart.h" void delay(uint32_t count) { while(count--) ; return ; } int main(void) { uint8_t which=USART_PORT1; uint8_t g_TxBuf[RXBUF_SIZE]; uint8_t g_TxLen = 0; init_led_gpio(); turn_led(LED1, ON); init_dbg_uart(which, 115200); printf("\nUSART%d test program verison 1.0.0\n", which); delay(0x4FFFFF); while(1) { #if 0 /* ¸Ã´úÂëΪ¼òµ¥²âÊÔ´úÂë */ turn_led(LED3, ON); usart_puts("Hello World!\n"); delay(0x4FFFFF); turn_led(LED3, OFF); printf("Goodbye World!\n"); delay(0x4FFFFF); #else /* ¸Ã´úÂëÓÃÀ´½«½ÓÊÕµ½µÄÒ»ÐÐÊý¾Ý(\r\n½áβ)»Ø´«»ØÈ¥ */ if( g_RxEnd_Flag ) { turn_led(LED3, ON); memset(g_TxBuf, 0, sizeof(g_TxBuf)); /* ½«·¢ËÍbufferÀïÃæµÄÊý¾ÝÇåÁã */ memcpy(g_TxBuf, g_RxBuf, g_RxLen); /* ½«½ÓÊÕbufferÀïÃæµÄÊý¾Ý¿½±´µ½·¢ËÍbufferÖÐÈ¥*/ g_TxLen = g_RxLen; /* ½«·¢ËÍÊý¾Ý³¤¶ÈÉèÖÃΪ½ÓÊÕµ½µÄÊý¾Ý³¤¶È */ g_RxLen = 0; g_RxEnd_Flag = 0; /* ½«½ÓÊÕÊý¾ÝÍê³É±êʶÉèΪ0, ÕâÑù´®¿Ú½ÓÊÕÖжϾÍÄܼÌÐø¿ªÊ¼½ÓÊÕÊý¾ÝÁË */ usart_send_data(g_TxBuf, g_TxLen); /* ½«½ÓÊÕµ½µÄÊý¾Ý»Ø´«»ØÈ¥ */ turn_led(LED3, OFF); } #endif } }