楼主: 小刀十六式

[求助] 使用KDS的PE配置CAN报文时如何关闭发送中断?

[复制链接]

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24866
最后登录
2025-7-18
发表于 2017-4-19 15:20:04 | 显示全部楼层
小刀十六式 发表于 2017-4-19 15:15
我用的就是40M的时钟,1ms输出没有问题。换成1us输出就是不准!

你怎么测试觉得的不准呢?
如果40M,那么1us的载入值应该输入39。
还有,你40Mhz的时钟源是外部晶振吗?还是内部IRC时钟?
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2020-8-14 22:47
  • 签到天数: 608 天

    连续签到: 1 天

    [LV.9]以坛为家II

    26

    主题

    1169

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3009
    最后登录
    2020-9-13
     楼主| 发表于 2017-4-19 15:47:30 | 显示全部楼层
    小恩GG 发表于 2017-4-19 15:20
    你怎么测试觉得的不准呢?
    如果40M,那么1us的载入值应该输入39。
    还有,你40Mhz的时钟源是外部晶振吗? ...

    工程如下:

    10ms是SysTick_RVR=50000
    按理说应该是40000的吧。

    选择的外部时钟!External clock

    KEA128_DemoV1.0.rar

    1.19 MB, 下载次数: 5, 下载积分: 威望 1

    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24866
    最后登录
    2025-7-18
    发表于 2017-4-19 17:05:39 | 显示全部楼层
    小刀十六式 发表于 2017-4-19 15:47
    工程如下:

    10ms是SysTick_RVR=50000

    你模块配置有问题,我打开你的工程,
    reload value都是0,还选择外部时钟。
    你修改下,选择core时钟,值为39.
    64.jpg
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-8-14 22:47
  • 签到天数: 608 天

    连续签到: 1 天

    [LV.9]以坛为家II

    26

    主题

    1169

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3009
    最后登录
    2020-9-13
     楼主| 发表于 2017-4-20 08:38:41 | 显示全部楼层
    小恩GG 发表于 2017-4-19 17:05
    你模块配置有问题,我打开你的工程,
    reload value都是0,还选择外部时钟。
    你修改下,选择core时钟,值 ...

    不对,输出的波形一直是低电平
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24866
    最后登录
    2025-7-18
    发表于 2017-4-20 09:25:27 | 显示全部楼层
    小刀十六式 发表于 2017-4-20 08:38
    不对,输出的波形一直是低电平

    你如果1us都用来翻转IO的话,肯定会有误差。
    原因如下:
    延时里面的初始化代码,关闭寄存器代码等都有执行时间,而且GPIO的输出也是有延时的。
    所以这个不是定时器不准的问题,而是测试的问题。
    你可以用systick做一个ms级或者s级的测试。
    如果要引脚翻转达到准确的输出,建议你直接使用FTM输出PWM波形。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-8-14 22:47
  • 签到天数: 608 天

    连续签到: 1 天

    [LV.9]以坛为家II

    26

    主题

    1169

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3009
    最后登录
    2020-9-13
     楼主| 发表于 2017-4-20 09:44:51 | 显示全部楼层
    小恩GG 发表于 2017-4-20 09:25
    你如果1us都用来翻转IO的话,肯定会有误差。
    原因如下:
    延时里面的初始化代码,关闭寄存器代码等都有执 ...

    我想用于内部延时,是否跟GPIO口的输出速率有关?是否达到10M???'

    如果用于定时1us,我用FTM试试! 在测试ms延时的时候没有问题的

    在问个问题!外部中断KBI0二十几个口我全打开,在执行中断函数的时候,是否可以判断是哪个GPIO的输入呢?从而KBI0就有二十多了响应子模块了?这个方法可行吗?
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-8-14 22:47
  • 签到天数: 608 天

    连续签到: 1 天

    [LV.9]以坛为家II

    26

    主题

    1169

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3009
    最后登录
    2020-9-13
     楼主| 发表于 2017-4-20 11:59:55 | 显示全部楼层
    小恩GG 发表于 2017-4-20 09:25
    你如果1us都用来翻转IO的话,肯定会有误差。
    原因如下:
    延时里面的初始化代码,关闭寄存器代码等都有执 ...

    再问个问题。如何进行STOP或者wait模式我用InitSBC设置了STOP模式没有效果!

    KEA128_DemoV1.0.rar

    1.56 MB, 下载次数: 2, 下载积分: 威望 1

    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24866
    最后登录
    2025-7-18
    发表于 2017-4-20 13:21:23 | 显示全部楼层
    小刀十六式 发表于 2017-4-20 09:44
    我想用于内部延时,是否跟GPIO口的输出速率有关?是否达到10M???'

    如果用于定时1us,我用FTM试试! 在测 ...

    其实你想,1us,也就是40个cycle,但是你里面代码还占了好多个cycle,主频也就40MHZ。
    所以你这么测试是不准确的,你可以用中断方式,连续自动进入中断,然后直接翻转IO,可能还要准点。
    我这里指的是测试看的结果,实际上硬件的systick 1us肯定是准的,只不过是测试的问题导致你看着不准。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24866
    最后登录
    2025-7-18
    发表于 2017-4-20 13:22:02 | 显示全部楼层
    小刀十六式 发表于 2017-4-20 11:59
    再问个问题。如何进行STOP或者wait模式我用InitSBC设置了STOP模式没有效果!

    楼主你好!
    你不能建一个问题,把所有问题都跟在后面问。
    新的问题,请你新建问题贴出来,我会在你的新问题中回答你。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-8-14 22:47
  • 签到天数: 608 天

    连续签到: 1 天

    [LV.9]以坛为家II

    26

    主题

    1169

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3009
    最后登录
    2020-9-13
     楼主| 发表于 2017-4-20 13:41:14 | 显示全部楼层
    小恩GG 发表于 2017-4-20 13:21
    其实你想,1us,也就是40个cycle,但是你里面代码还占了好多个cycle,主频也就40MHZ。
    所以你这么测试是 ...

    就是内部SysTick已经是计时了1us.只是输出的过程中出现了一些影响?
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-19 09:01 , Processed in 0.107117 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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