标题: stm32串口发送数据,LCD同步显示成功,包括了malloc [打印本页]

作者: Hmily    时间: 2015-8-9 14:31
标题: stm32串口发送数据,LCD同步显示成功,包括了malloc
看资料,LCD的驱动是HX8347,有两个不同方法实现

单片机源程序如下:
  1. ////////////////////////////////////////////////////////////////
  2. //   8月6号,功能:发送数据在显示屏上显示  LCD 控制器 HX8347 ///
  3. ////////////////////////////////////////////////////////////////
  4. #include "stm32f10x.h"
  5. #include "delay.h"
  6. #include "lcd_botton.h"
  7. #include "lcd.h"
  8. #include "led.h"
  9. #include "sys.h"
  10. #include "usart.h"          
  11. #include "stdio.h"
  12. #include "malloc.h"

  13. //#define FILE_MAX_SIZE 512


  14. int main(void)
  15. {
  16.         u8 rxlen;
  17.         u16 i;
  18.         u8 *write_buf=0;
  19.        
  20.         delay_config();       
  21.         led_GPIO_config();         // LED 端口初始化
  22.   LCD_Init();
  23.         uart_init(9600);
  24.         while (1)
  25.         {
  26.                 printf("\r\n您发送的消息为:\r\n\r\n");
  27.                 LCD_Str_6x12_O(150, 80,"start ", BLACK);
  28.          if(USART_RX_STA&0X8000)//串口收到数据了
  29.          {
  30.                  rxlen=USART_RX_STA&0X7FFF;        //得到数据长度
  31.                  write_buf=mymalloc(SRAMIN,512); //申请FILE_MAX_SIZE字节的空间
  32.                  for(i=0;i<rxlen;i++)
  33.                 {
  34.                         write_buf[i]=USART_RX_BUF[i];
  35.                 }
  36.                
  37.                
  38.                 for(i=rxlen;i<512;i++)
  39.                 {
  40.                         write_buf[i]=' ';
  41.                 }
  42.        
  43.                  LCD_Str_6x12_O(150, 120, write_buf, BLACK);
  44.                        
  45.                  delay_ms(1000);       
  46.                 myfree(SRAMIN,write_buf);        //释放内存               
  47.                 USART_RX_STA=0; //启动下一次接收
  48.         }
  49. }         
  50. }

复制代码

Keil代码下载:
Keil代码.7z (210.83 KB, 下载次数: 53)

作者: 蒲公英lhl    时间: 2015-9-20 16:14
楼主好厉害啊




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1