智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2496|回复: 4
打印 上一主题 下一主题

[编程类] 讨论XS串口问题

[复制链接]

8

主题

70

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1733
威望
304
贡献
1391
兑换币
4
注册时间
2009-3-29
在线时间
19 小时
跳转到指定楼层
1#
发表于 2009-9-27 16:47:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
这个程序为什么不能正确收发数据啊?请大家帮我看看

#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"
#include "main_asm.h" /* interface to the assembly module */

#define uchar unsigned char
#define uint unsigned int

uchar R_date,R_flag;
uchar T_date,T_flag;
uint numeric;
void PLL(void);
void SCI_INIT(void);
void NORMAL_IO_INIT(void);
uchar SCI_R(void);
void delay(uint z);
void SCI_T(uchar T_date);

void SCI_INIT(void)
{
SCI0BD=312.5;
SCI0CR1=0X00;
SCI0CR2=0B00001100;
SCI0CR2_RIE = 1;
SCI0CR2_TIE = 1;
}
void PLL(void)//48MHz
{     
  CLKSEL=0X00;
  PLLCTL_PLLON =1;
  SYNR = 0xC0|0X05;
  REFDV= 0xC0|0x01;  // PLLCLK =2*OSCCLK*(SYNR + 1)/(REFDV + 1)
  POSTDIV=0X00;
  _asm(nop);
  _asm(nop);
  while(CRGFLG_LOCK == 0);
  CLKSEL_PLLSEL = 1;         
}
void NORMAL_IO_INIT()
{
DDRB=0XFF;
PORTB=0Xf0;
}

void delay(uint z)
{
uint i,j;
for(i=0;i<z;i++);
for(j=0;j<2770;j++);
}

uchar SCI_R(void)
{
  while(SCI0SR1_RDRF)
{
  SCI0SR1_RDRF=1;
  return SCI0DRL;
}
}

void SCI_T(uchar T_date)
{
  SCI0SR1_TC=1;
  SCI0DRL=T_date;
  delay(10);
}
void main(void)
{
  PLL();
  NORMAL_IO_INIT();
  SCI_INIT();
  
  EnableInterrupts;
  asm_main(); /* call the assembly function */
  delay(20);
for(;;)
{
  if(SCI0SR1_RDRF==1)
  {
   SCI0SR1_RDRF=0;
   numeric=SCI0DRL;
   PORTB=numeric;
   SCI0DRL=numeric;
  }
}
}

14

主题

929

帖子

1

精华

功勋会员

WJ

Rank: 10Rank: 10Rank: 10

积分
6304

特殊贡献奖章

威望
1456
贡献
4674
兑换币
17
注册时间
2008-4-6
在线时间
87 小时
2#
发表于 2009-9-29 21:29:45 | 只看该作者
轮询,监控一下程序的执行情况。
和中断读结果差不多,具体代码我不记得了,楼主可以查一下代码。
论坛里很多。
回复

使用道具 举报

8

主题

70

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1733
威望
304
贡献
1391
兑换币
4
注册时间
2009-3-29
在线时间
19 小时
3#
 楼主| 发表于 2009-10-1 12:30:29 | 只看该作者
谢谢前辈whut_wj
回复

使用道具 举报

22

主题

242

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2785

优秀会员奖章

威望
534
贡献
1925
兑换币
20
注册时间
2009-10-12
在线时间
163 小时
4#
发表于 2010-2-5 12:45:15 | 只看该作者
SCI0BD=312.5;   还能有小数???什么意思啊??
回复

使用道具 举报

1

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
QQ
威望
212
贡献
67
兑换币
0
注册时间
2011-11-7
在线时间
17 小时
5#
发表于 2011-12-8 11:27:49 | 只看该作者
SCI0BD写的不对吧 应该分开写
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-23 15:32 , Processed in 0.386254 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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