OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3668|回复: 3

求各位大神看一下

[复制链接]

8

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
135
金钱
135
注册时间
2016-9-20
在线时间
21 小时
发表于 2016-10-9 21:51:21 | 显示全部楼层 |阅读模式
1金钱
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"         
#include "dma.h"

#define SEND_BUF_SIZE 1        //·¢Ëíêy¾Y3¤¶è,×îoÃμèóúsizeof(TEXT_TO_SEND)+2μÄÕûêy±¶.
u8 SendBuff[SEND_BUF_SIZE];        //·¢Ëíêy¾Y»o3åÇø
const u8 TEXT_TO_SEND[]={"ALIENTEK WarShip STM32F1 DMA ′®¿úêμÑé"};
int main(void)
{         
        u16 i;
        u8 len=0,t=0;
        u8 j,mask=0;
        u8 *data={0};
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//éèÖÃÖD¶ÏóÅÏè¼¶·Ö×éÎa×é2£o2λÇàÕ¼óÅÏè¼¶£¬2λÏìó|óÅÏè¼¶
        uart_init(115200);                 //′®¿ú3õê¼»ˉÎa115200
        LCD_Init();                                   //3õê¼»ˉLCD                 
        MYDMA_Config(DMA1_Channel4,(u32)&USART1->DR,(u32)SendBuff,SEND_BUF_SIZE);//DMA1í¨μà4,íaéèÎa′®¿ú1,′æ′¢Æ÷ÎaSendBuff,3¤¶èSEND_BUF_SIZE.
        POINT_COLOR=RED;//éèÖÃ×ÖìåÎaoìé«
        j=sizeof(TEXT_TO_SEND);          
        for(i=0;i<SEND_BUF_SIZE;i++)//ì&#238;3&#228;êy&#190;Yμ&#189;SendBuff
  {
         if(t>=j)//&#188;óè&#235;&#187;&#187;DD·&#251;
                {
                        if(mask)
                         {
                                SendBuff[i]=0x0a;
                                t=0;
                   }
                         else
                         {
                                SendBuff[i]=0x0d;
                                mask++;
                         }       
                }
                else//&#184;′&#214;&#198;TEXT_TO_SENDó&#239;&#190;&#228;
                {
                        mask=0;
                        SendBuff[i]=TEXT_TO_SEND[t];
                        t++;
                }              
  }          
        USART_DMACmd(USART1,USART_DMAReq_Tx,ENABLE); //ê1&#196;ü′&#174;&#191;ú1μ&#196;DMA·¢&#203;í      
        MYDMA_Enable(DMA1_Channel4);//&#191;aê&#188;ò&#187;′&#206;DMA′&#171;ê&#228;£&#161;          
        while(1)
        {
        if(DMA_GetFlagStatus(DMA1_FLAG_TC4)!=RESET)        //&#197;D&#182;&#207;í¨μà4′&#171;ê&#228;íê3é
                {
                 DMA_ClearFlag(DMA1_FLAG_TC4);//&#199;&#229;3yí¨μà4′&#171;ê&#228;íê3é±ê&#214;&#190;
                 break;
                }                      
        }
        while(1);
        if(USART_RX_STA&0X8000)       
        {
          len=USART_RX_STA&0x3fff;//μ&#195;μ&#189;′&#203;′&#206;&#189;óê&#213;μ&#189;μ&#196;êy&#190;Y3¤&#182;è  
    for(t=0;t<len;t++)
      {
        USART_SendData(USART1, USART_RX_BUF[t]);//&#189;óê&#213;μ&#189;μ&#196;êy&#190;Y·¢μ&#189;′&#174;&#191;ú1
        while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
      }
                                data[t]=USART_RX_BUF[len];
        USART_RX_STA=0;                               
        LCD_ShowString(30,30,210,30,30,data);
        }               
       
}



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

8

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
135
金钱
135
注册时间
2016-9-20
在线时间
21 小时
 楼主| 发表于 2016-10-9 21:52:15 | 显示全部楼层
我想把发送的数据显示在lcd上  但是下载程序后lcd直接熄灭了
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-10-12 23:05:02 | 显示全部楼层
仿真跟踪找下问题。
回复

使用道具 举报

4

主题

74

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
201
金钱
201
注册时间
2017-4-5
在线时间
24 小时
发表于 2017-4-17 19:25:17 | 显示全部楼层
我也试了,目前还没出来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-8-22 02:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表