21ic问答首页 - 凌鸥071芯片使用SIF外设问题
凌鸥071芯片使用SIF外设问题
本帖最后由 ZDRenlc 于 2025-1-9 10:27 编辑
以下使用的是官网提供的SIF外设示例代码,芯片型号是071。目前可以正确输出波形,但是对于时基的配置存在疑问,查询手册也未解决。
问题1:图中的结构体不是已经配置过时基了嘛,为什么下面又用两个函数又配置了一遍?
①转到定义可以看到SIF_InitStruct.SIF_TOSC = 46;这步操作和SIF_Timebase_set(2);这步操作配置的是同一个寄存器。



②转到定义可以看到SIF_InitStruct.SIF_TSTH1 = 999; SIF_InitStruct.SIF_TDTH1 = 0;这步操作和SIF_TH_set(2,2);这步操作配置的是同一个寄存器。



问题2:程序注释里写的计算时基的方法和手册里写的计算时基的方法不一致,而且即使按照手册里说的公式去计算时基和实际抓出来波形的时间也不一致。那时基具体该怎么计算呢?

赞0
您好,关于您提出的SIF例程和文档的问题:
1)例程中时基寄存器等重复配置问题:这个是程序的冗余,如果程序运行过程中SIF时基不需要改变,只需要按SIF初始化配置结构体即可,不需要再用SIF_Timebase_set()、SIF_TH_set()另外设置时基、同步信号、结束信号;
2)时基计算式子,用户手册弄错了,按程序注释的计算方法是对得上的。时基 = (SIF_TOSC+1)* 333ns,最大 4096 * 333ns = 1364us。示例:配置SIF_TOSC = 10,计算得到时基 =11*333ns = 3.663us,示波器抓波形计算出时基为3.68us。
非常感谢您的指正
评论
2025-01-22
赞0
用这里的描述去计算时基得到的结果也和实际抓出来的对不上呀
评论
2025-01-21
赞0
评论
2025-01-21
赞0
例程是一个配置示例,可以调用下面的函数去更改这个时基,如果不需要更改就在初始化里面配置一次就行
评论
2025-01-21
赞0
评论
2025-01-09
您需要登录后才可以回复 登录 | 注册