查看: 2476|回复: 1

[S12] MC9s12xdg128有关sci做LIN通讯问题

[复制链接]

该用户从未签到

1

主题

8

帖子

0

新手上路

Rank: 1

积分
14
最后登录
1970-1-1
发表于 2013-5-16 14:26:11 | 显示全部楼层 |阅读模式
请问各位大侠,xs128与xdg128有很大区别吗?我最近在做LIN通讯,通过配置SCI模块来实现,编写的程序在xs128的片子上能顺利发送帧请求,不会产生错误,可是在xdg128的片子上后,LIN通讯会产生很多的错误"incorrect sync break length",说是同步间隔场长度不对,下面附上主要代码,我初步分析在发送同步间隔场时(SCI0CR2_SBK=1;
SCI0CR2_SBK=0;) 用xs128片子时 用示波器测得为13bit显性电平,
而在xdg128片子上运行时只有12bit的显性电平,LIN通讯协议上指明必须至少为13bit显性电平,不知问题是否在此?如何解决,请各位大侠指教。
#include       /* common defines and macros */
#include  
                        
void main(void)
{
    DisableInterrupts;
    MCUInit();
    SCIInit(); 
    EnableInterrupts;
    for(;;)
    {     
      SendLinHeader(&LinFrame34);
        Delay_ms(50); 
   }
}
  /*初始化SCI*/
void SCIInit(void)
{
    uint8_t t;
    //定义波特率Bt=9600,SCIBD=fBUS/(16*Bt)
   
    //fBUS=32MHz   Bt=9600
    SCI0BDL = 0xD0;    //须先给低8位赋值
    SCI0BDH = 0x00;    //再给高8位赋值
    SCI0SR2 =  0x04;   //中断位13-14bit
    SCI0CR1 = 0x00;    //设置允许SCI,正常码输出,8位数据,无校验
    t = SCI0DRL;      
    t = SCI0SR1;      
   SCI0CR2 = 0x0c;    //允许SCI接收和发送  
}
 void SendLinHeader(LinFrame *linframe)//发送LIN请求
{
    SCI0CR2_RE = 0;//disable recevier
    //产生同步间隔场//
    SCI0CR2_SBK=1;
    SCI0CR2_SBK=0;
//用示波器测得为12bit
    while(!SCI0SR1_TDRE);
    //发送同步场//     
    SCI0DRL = 0x55;
    while(!SCI0SR1_TDRE);
     //发送ID//
    SCI0DRL = linframe->ID;
    while(!SCI0SR1_TDRE);
    SCI0CR2_RE = 1;    //recevier enable   
}

/*设置时钟 OSCCLK:16M,PLL:64M,busclock :32M*/
void MCUInit(void)

    CLKSEL &= 0x7f;
    PLLCTL &= 0xbf;//先关闭PLL
    SYNR = 0x01;         //对PLLCLK增频的因子
    REFDV = 0x00;        //对PLLCLK分频的因子                   
    PLLCTL |= (1
我知道答案 目前已有0人回答
回复

使用道具 举报

该用户从未签到

1

主题

8

帖子

0

新手上路

Rank: 1

积分
14
最后登录
1970-1-1
 楼主| 发表于 2013-5-17 09:44:26 | 显示全部楼层

RE:MC9s12xdg128有关sci做LIN通讯问题

难道就没人用过xdg128吗?
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-23 10:59 , Processed in 0.085321 second(s), 23 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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