智能车制作

标题: SCI串口问题,请求帮忙!万分感谢 [打印本页]

作者: liangliheng    时间: 2011-4-23 12:57
标题: SCI串口问题,请求帮忙!万分感谢
我的全部程序是这样
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
#include <MC9S12XS128.h>     /* derivative information */      
#pragma  LINK_INFO DERIVE"MC9S12XS128.h"
void SetBusCLK_64M(void)
{                                                      
    CLKSEL=0X00;   
    PLLCTL_PLLON=1;    //turn on PLL
    SYNR =0xc0 | 0x07;                          
    REFDV=0xc0 | 0x01;
    POSTDIV=0x00;      //pllclock=2*osc*(1+SYNR)/(1+REFDV)=128MHz;   
    _asm(nop);         //BUS CLOCK=64M
    _asm(nop);
    _asm(nop);
    _asm(nop);
    while(!(CRGFLG_LOCK==1));   //锁相环输出稳定
    CLKSEL_PLLSEL =1;            //engage PLL to system;
}

void SciInit(void)
{
   SCI0BDH=0x01;
         SCI0BDL=0xa0;        //9600bps
         SCI0CR1=0;            //正常8位模式,无奇偶校验
         SCI0CR2=0x0c;         //允许发送
}

void SciWrite(char x)
{
   while(!(SCI0SR1&0x80));
   SCI0DRH=0;   
   SCI0DRL=x;
}

void main(void) {
  /* put your own code here */
  SetBusCLK_64M();
  SciInit();
  
        EnableInterrupts;


  for(;;) {
   
    _FEED_COP(); /* feeds the dog */
    SciWrite(0x25);
  } /* loop forever */
  /* please make sure that you never leave main */
}
返回到上位机的图像是这样,
为什么我在SCI0DRL输入0x25,而上位机显示的是6D呢?我用的是单片机P3输出口接到max232的输入,求解答




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