智能车制作

标题: sci问题~~~~~~~~~~~在线等 [打印本页]

作者: vallis    时间: 2009-4-10 19:16
标题: sci问题~~~~~~~~~~~在线等
我的板子是mc9s12xs128,清华的,刚拿回来的,试了一下龙丘的pwm实例程序:http://blog.21ic.com/user1/3833/archives/2009/55974.html超级终端能收到数据并能正确的显示;但是发送数据时,单片机收到,中断也进入不了,串口调试助手也一样。一样的程序,我们实验室另外一组的就行,不知道为什么?????????????还有论坛上的帖子我都看过了,该改的方法我也试过了,但是还是不行。求救啊~~~~~~~~~
作者: vallis    时间: 2009-4-10 19:16
自己先顶~~~~~~~~~~~~
作者: vallis    时间: 2009-4-10 19:18
是单片机收不到哈,写错了
作者: vallis    时间: 2009-4-10 20:16
撑起了~~~不能死了
作者: rocky    时间: 2009-4-10 20:20

作者: 50833713    时间: 2009-4-10 20:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: vallis    时间: 2009-4-10 21:48
单步调试~~~~一直输入
作者: vallis    时间: 2009-4-10 22:27
不要死了啊~~~呼叫版主~~~~~~~呼叫~~~~版主~~~~
作者: gangwa1987    时间: 2009-4-11 12:52
死了~~~~
作者: zf12862177    时间: 2009-4-12 08:03
那还不简单。。。。不是如果sci的代码一样。那就是你的这段程序,没有在开始开中断,没有开全局中断,或者sci接受终端
作者: suqingxiao    时间: 2009-6-11 09:37
10# zf12862177 我现在也在为这个问题烦啊,有没有人调出来了????
作者: suqingxiao    时间: 2009-6-11 09:45
哪个解决了说一下啊,呵呵,烦啊!!
作者: adsl58247688    时间: 2011-3-24 21:12
应该是代码问题吧,还有你看下程序下载进去没。。。。。。。。。。。。
给你个代码试试,我测试通过的!!!

//------------------------------------------------------------------------------------------------------------------//
//功能说明:MC9S12XS128--SCI例程
//使用说明:实现PC→MCU→PC通信,用户可以根据需要修改程序,实现PC→MCU或者MCU→PC通信
//程序设计:电子设计吧【www.dzsj8.com
//设计时间:2010.01.21
//----------------------------------------------------------------------------------------------------------------//

#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

//unsigned char txt[]={"Hello World!"} ;
void delay(unsigned int time)
{
unsigned int i,j,k;
for(i=0;i<125;i++)
  for(j=0;j<125;j++)
     for(k=time;k>0;k--);
}

//-----------------------初始化SCI0----------------------------//
void SciInit()
{
    SCI0BD=52;         //9600bps  Baud Rate=BusClock/(16*SCIBD)
    SCI0CR1=0;         //正常8位模式,无奇偶校验
    SCI0CR2=0X2C;      //发送允许   接受中断允许  
}

//----------------------读SCI数据-----------------------------//
unsigned char SciRead()
{
    if(SCI0SR1_RDRF==1)     //表明数据从位移寄存器传输到SCI数据寄存器
      {
      SCI0SR1_RDRF=1;     //读取数据寄存器会将RDRF清除  重新置位
      return SCI0DRL;        //返回数据寄存器的数据
      }
}

//-----------------写SCI数据---------------------------------//
void SciWrite(unsigned char sendchar)
{
    while (!(SCI0SR1&0x80));
    SCI0DRH=0;
    SCI0DRL=sendchar;
}

//------------------------main----------------------------------//

void main(void)
{
unsigned char ch;
SciInit();
EnableInterrupts;
DDRB=0X55;
while(1){




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2