导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→求助--关于数据存储

* 65808: 求助--关于数据存储

   灵犀 
灵犀发表的帖子 

 求助--关于数据存储
我写了一个简单的串口调试程序,把从串口输入的以“a"为结尾的数据存储到一个字符数组,当串口输入”b “时,程序将存储的数据发到PC机上。但是数据总是按照初始赋的值发出来。调试了很久了,找不出原因,麻烦各位帮看代码有什么问题?
#include   <reg52.h>  
#include  <string.h>  
#define uchar unsigned char
uchar r_buf[32];

uchar r_ready=0,t=0,r_in;

uchar user1_IP[20]={"987654321"};


serial () interrupt 4 using 1  //transmit and receive interupt
{
  uchar temp;   
 if(RI)
    {
      RI=0;
   temp=SBUF;
   r_buf[r_in++]=temp;
      if(temp==0x61)
   r_ready=1;
   if(temp==0x62)
   t=1;
 
            
  
         }
   
}
      
  

   
   
  
main()
{
   
 uchar i;
 TMOD=0x20;
 TL1=0xfd;
 TH1=0xfd;
    TCON=0x40;//启动定时器
 SCON=0x50;
 PCON=0x00;
 IE=0x90;  //允许串行口中断

   
 while(1)
  { 
         
   
      //RI=1;//??????????????????????????????
   if(r_ready==1)
   {
    r_ready=0;
    for(i=0;i  <r_in;i++)
        { 
      user1_IP[i]=r_buf[i];
      r_buf[i]=0;
      SBUF=user1_IP[i];
      while(TI==0);
      TI=0;
       
     }
    r_in=0;
   }
   if(t==1)
   {
    t=0;
       for(i=0;i  <strlen(user1_IP);i++)
    {
     SBUF=user1_IP[i];
     while(TI==0);
     TI=0;
     }
   }
    

     
    
    }
}

发表时间:2004年11月4日15:13:56

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:TCP/IP做TCP/IP时,请问这样一个问题: MCU向上位机发送的网业数据如何生成?&
[下一篇帖子]:本人想用cd4052扩串口和两单片机通讯,一个经232和计算机通讯,不知可行否?