智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 10717|回复: 19
打印 上一主题 下一主题

XS128串口通信

  [复制链接]

15

主题

97

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5388

论坛元老奖章优秀会员奖章活跃会员奖章

QQ
威望
653
贡献
4517
兑换币
14
注册时间
2010-8-23
在线时间
109 小时
跳转到指定楼层
1#
发表于 2011-2-22 17:53:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是本人的程序,但调试不能通过,请诸位指教一下。
程序功能:由串口向单片机发送一个数据,单片机接收到数据后再先串口返回原数,但一直接受不到数据,请问是哪里的问题,谢谢了。
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

  void PLL_Init(void)   
{                                   //     锁相环时钟设置 总线频率为24MHz                 
    REFDV=1;                        //     寄存器设置                                    
    SYNR=3;                         //     锁相环时钟 =2*16*(3+1)/(1+1)=64MHz            
    while(!(CRGFLG&0x08));          //     等待锁相环稳定                                 
    CLKSEL=0x80;      
   }                  
void SciInit(void)
{
    SCI0BD=208;            //波特率的设置
    SCI0CR1=0;             //正常8位,无校验
    SCI0CR2=0x2c;          //中断打开  发送允许
}
unsigned char SciRead()
{
    if(SCI0SR1_RDRF==1)   //表明数据传输到SCI寄存器
    {
       SCI0SR1_RDRF=1;    //重新至为
       return SCI0DRL;    //返回数据寄存器的数据
    }
}
void SciWrite(unsigned char sendchar)
{
    while(!(SCI0SR1&0x80));
        SCI0DRH=0;
        SCI0DRL=sendchar;
}
void main(void)
{
    SciInit();
   EnableInterrupts;

  for(;;)
  {
   
  }
  /* please make sure that you never leave main */
}
#pragma CODE_SEG NON_BANKED
void interrupt 20 SCIO_re ()
{
    unsigned char ch;
    ch=SciRead();
    SciWrite(ch);
}

1

主题

19

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
280
威望
231
贡献
43
兑换币
14
注册时间
2010-10-30
在线时间
3 小时
2#
发表于 2011-3-11 22:14:43 | 只看该作者
你现在知道问题所在没有啊???告诉我啊,我也没调出来
回复 支持 反对

使用道具 举报

1

主题

5

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
295
QQ
威望
234
贡献
33
兑换币
0
注册时间
2011-1-14
在线时间
14 小时
3#
发表于 2011-3-12 11:58:39 | 只看该作者
我觉得应该在进入中断的时候,应该先关掉接收中断,在写入后再开接收中断等待下次数据的发送,你试试看可以不!
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
240
威望
181
贡献
21
兑换币
0
注册时间
2010-9-20
在线时间
19 小时
4#
发表于 2011-3-17 17:31:02 | 只看该作者
应该是SCI0SR1_RDRF=0;    //重新至为0
回复 支持 反对

使用道具 举报

1

主题

38

帖子

0

精华

高级会员

Rank: 4

积分
585
威望
359
贡献
84
兑换币
0
注册时间
2010-10-10
在线时间
71 小时
5#
发表于 2011-4-29 13:07:57 | 只看该作者
呵呵
回复 支持 反对

使用道具 举报

1

主题

38

帖子

0

精华

高级会员

Rank: 4

积分
585
威望
359
贡献
84
兑换币
0
注册时间
2010-10-10
在线时间
71 小时
6#
发表于 2011-4-29 21:38:32 | 只看该作者
时钟都没初始化
回复 支持 反对

使用道具 举报

15

主题

97

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5388

论坛元老奖章优秀会员奖章活跃会员奖章

QQ
威望
653
贡献
4517
兑换币
14
注册时间
2010-8-23
在线时间
109 小时
7#
 楼主| 发表于 2011-4-30 19:41:07 | 只看该作者
现在串口通了,但无线模块不会啊!
谁教教我啊
回复 支持 反对

使用道具 举报

26

主题

441

帖子

0

精华

知名人物

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
41695
QQ
威望
3920
贡献
37275
兑换币
290
注册时间
2011-3-16
在线时间
250 小时
8#
发表于 2011-5-1 00:08:09 | 只看该作者
时钟初始化后再加一个延时,不行的话就改几种波特率试一试
回复 支持 反对

使用道具 举报

8

主题

40

帖子

0

精华

高级会员

Rank: 4

积分
574
威望
340
贡献
74
兑换币
16
注册时间
2010-1-15
在线时间
80 小时
9#
发表于 2011-5-31 11:43:16 | 只看该作者
回复 7# 天涯客


    你们现在无线会弄了吗,我们调不好
回复 支持 反对

使用道具 举报

2

主题

18

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
333
威望
266
贡献
57
兑换币
4
注册时间
2011-7-28
在线时间
5 小时
10#
发表于 2011-7-28 21:56:53 | 只看该作者
遇到了同样的问题
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 09:28 , Processed in 0.060274 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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