打印

CY68013串口问题

[复制链接]
2348|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
harvard83|  楼主 | 2011-11-9 14:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
dqyubsh| | 2011-11-9 20:33 | 只看该作者
把电路图和程序发上来。你看到别人这么问问题,你能答上吗?

使用特权

评论回复
板凳
harvard83|  楼主 | 2011-11-22 22:04 | 只看该作者
2# dqyubsh
这个是我的程序 大家给看一下 设置有没有问题呢
BYTE  temp_data;
BYTE  flag;
void REG_Init()
{
    CPUCS = 0x10; //48Mhz
    CKCON = (CKCON&(~bmSTRETCH)) | 1;
}
void SerialPort_Init()
{
    TMOD = (TMOD & 0x0F) | 0x20;   // 定时器1工作方式2,自动重载  
  CKCON |= 0x10;  //T1M = CLKOUT/4
   EICON |= 0x80;  //设置SMOD1=1,波特率加倍  
  SCON1 = 0x50;  //串行口1工作方式1,10位异步收发,REN=0,允许接收。RI1=0,TI1=0
   TH1  = 0xD9;      //定时器1的初值      
  ES1 = 1;     //允许串口1中断
  TR1 = 1;
   EA = 1;
}
void Serial_SendChar(BYTE source)
{
    SBUF1 = source;
    while(TI1 == 0);
    TI1 = 0;
}
void Serial_Interrupt1() interrupt 7
{        
     if(RI1 == 1)
    {
        RI1 = 0;
        temp_data = SBUF1;
        flag = 1;
    }
}     

void main(void)
{
    REG_Init();
    SerialPort_Init();
    EA = 1;
    while(1)
    {
         if(flag==1)
        {
             flag=0;
            Serial_SendChar(temp_data);
        }
    }
}

使用特权

评论回复
地板
harvard83|  楼主 | 2011-11-23 09:26 | 只看该作者
始终无法进入串口中断
把串口中断关掉,直接发固定数据到上位机,发现发送的数据跟设置的不一样,连位数都不一样
哪位高手给指点一下啊 急切的等待

使用特权

评论回复
5
dqyubsh| | 2011-11-23 13:18 | 只看该作者
void Serial_SendChar(BYTE source)
{
    SBUF1 = source;
    while(TI1 == 0);
    TI1 = 0;
}

这样发就有问题。改成这样试试:
void Serial_SendChar(BYTE source)
{
    while(TI1 == 0);
    TI1 = 0;
    SBUF1 = source;
}

使用特权

评论回复
6
harvard83|  楼主 | 2011-11-23 16:01 | 只看该作者
5# dqyubsh
嗯,谢谢dqyubsh。
后来发现线接的有问题,改完后可以收发数据了,但是收到的数据不对。
把波特率改成4800就正常收发数据了,可是我的设置应该波特率是19200啊,很奇怪。

使用特权

评论回复
7
harvard83|  楼主 | 2011-11-24 10:35 | 只看该作者
用示波器看过了CLKOUT引脚,发现输出是12MHZ。
我的CPUCS寄存器是设置的CPUCS=0X10,按道理来说输出应该是48MHZ啊。
时钟设置的问题在哪?

使用特权

评论回复
8
dqyubsh| | 2011-11-24 10:48 | 只看该作者
TD_Init()对CPUCS有设置。应该在此处一次改好,不建议在其它位置再次修改,避免引起混乱。

使用特权

评论回复
9
harvard83|  楼主 | 2011-11-24 13:26 | 只看该作者
8# dqyubsh
因为我只用了串口功能,所以没有TD_Init(),只是像普通单片机一样写的程序。
就是时钟设置不对。

使用特权

评论回复
10
harvard83|  楼主 | 2011-11-28 15:12 | 只看该作者
帖子都快沉下去了 问题还悲催的木有解决:(

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

43

主题

201

帖子

1

粉丝