查看: 2510|回复: 1

[已解决] DZ系列单片机MSCAN问题!(已解决)

[复制链接]

该用户从未签到

2

主题

3

帖子

0

新手上路

Rank: 1

积分
0
最后登录
1970-1-1
发表于 2014-1-1 16:07:00 | 显示全部楼层 |阅读模式
大家好,2014年第一天,先祝大家新年快乐,新的一年事事顺心。有两个问题请教大家:1)我现在用DZ60,48脚单片机做了个板子,现在CAN通讯部分,MSCAN的初始化位置如果设置成环回自测模式,可以实现数据的收发,但如果设成正常模式,则在等待时钟同步处,停住,不往下运行了。大家看是怎么回事呢?程序代码如下。2)通过CodeWarrier建立一个新的工程,选择DZ60,生成的工程中,包含的头文件等都是64脚这种情况的,如果我用DZ60的32或48脚单片机,头文件需不需要修改,怎样修改,谢谢大家。
MSCAN初始化代码如下:
 if(CANCTL1_CANE == 0)            // 判断CAN模块是否启动,当前未启动系统初始化
    {
        CANCTL1_CANE = 1;            // 系统初始化后CAN模块默认进入初始化状态      
    }
    else
    {
        CANCTL0_SLPRQ = 1;           // CAN模块已经运行  还要确保MSCAN没有等待发送的队列
        while(CANCTL1_SLPAK == 0);   // 将CAN模块置入睡眠模式
        CANCTL0_INITRQ = 1;          // 要求进入初始化状态
        while(0 == CANCTL1_INITAK);  // 这句话保证将CAN模块置入初始化模式
    }        
   
    CANBTR0 = 0b10000001;            //CANBTR0 = 0b1000 0001;          //同步跳转宽度:3Tq时钟周期;预分频器值是2
    CANBTR1 = 0b01001001;            //CANBTR1 = 0b0100 1001;          //时间段1是6个tq时钟周期,时间段2是3个tq时钟周期    
    //每位一个样本  时间段2是5个tq时钟周期      时间段1是10个tq时钟周期     //波特率为250K    
      
    CANIDMR0 = 0xFF;
    CANIDMR1 = 0xFF;
    CANIDMR2 = 0xFF;
    CANIDMR3 = 0xFF;
 
    CANIDAC=0X0F;                //使用了2组32位接受滤波器     
   
    //CANCTL1 = 0b11100000;        //使能MSCAN模块,时钟是总线时钟,环回自测模式
    CANCTL1 = 0b11000000;        //使能MSCAN模块,时钟是总线时钟,正常工作模式 
    //CANCTL1 = 0b10000000;        //使能MSCAN模块,时钟是振荡时钟,正常工作模式 
    
    CANCTL0 = 0x00;              //返回一般模式运行     
   
    while(CANCTL1_INITAK);       // 等待回到一般运行模式                                 
    while(!(CANCTL0_SYNCH));     // 等待总线时钟同步      
   
    CANRIER_RXFIE = 1;           // 开接收中断
我知道答案 目前已有0人回答
回复

使用道具 举报

  • TA的每日心情
    开心
    2018-7-2 06:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2014-1-8 11:46:58 | 显示全部楼层

    回复:DZ系列单片机MSCAN问题!

    飞思卡尔官网有一个MSCAN的例程包[url=https://www.freescale.co
    m/webapp/Download?colCode=MSCAN_S08&appType=license&location=null&fpsp=1&WT_TYPE=Device%20Drivers&WT_VENDOR=FREESCALE&WT_FILE_FORMAT=zip&WT_ASSET=Downloads&sr=54&amparent_nodeId=1182871031541732698923&amparent_pageType=product]MSCAN_S08[/url]你可以参考下。
    点这个网址下载MSCAN_S08例程
    [url=https://www.freescale.co
    m/zh-Hans/webapp/sps/site/prod_summary.jsp?code=S08D&nodeId=01624684491437EDDD&fpsp=1&tab=Design_Tools_Tab]www.freescale.com/zh-Hans/webapp/sps/site/prod_summary.jsp[/url]
     
    48pin的头文件你创建工程时选好就会自动添加进工程下
     
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-18 18:47 , Processed in 0.084596 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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