S32K3系列---ADC Mcal配置

前言

        这一章节我们讲解ADC的中断传输,不讲解DMA。关于ADC的原理可自行查阅别的文章,这里博主主要讲解怎么配置,以及跟着一样的配置就能实现基本的ADC转换功能。

        话不多说,直接上干货。如果有讲的不对的地方麻烦指正,谢谢。

ADC

1.AdcConfigSet

        a.AdcHwUnit

        

这里面我创建了2个硬件单元,一个ADC0,一个ADC1;各位根据自己的回路图使用到了哪些就配置哪些。

上面没有写注释的一些内容,都是根据NXP官方demo来的,具体为什么这么选,我暂时也不太了解,初期的话可以直接参照着来。  重要部分我会着重讲解。如果有大佬会的话,也可以给我留言讲解一下,谢谢!

这里ADC的采样时间也是参照官方demo来的,直接照抄就可以。

关于上面通道的选择,着重讲一下。比如我上面的信号VKL30C,在我的回路图上连接到了PTB13

那么我们打开NXP芯片手册里面有个S32K3xxxxxx_IOMUX.xlsx文件,在IO Signal Table一栏搜索PTB13,我们可以发现这个pin支持ADC0/1/2, 在PORT配置那边,我们默认选择其中一个,比如ADC0_S8, 这个S8就是上面Adc Physical Channel Name里面选择S8_ChanNum32的原因

AdcGroupAccessMode:

在single模式下

        AdcGroupConversionMode:

                one-shot:每执行一次软件触发,就进行一次ADC转换,转换成功就会触发中断。

                continuous:只要执行一次软件触发,就会一直进行ADC转换,每次转换完都会触发中断

在streaming模式下:

        只支持:SW触发+continuous 或者 HW+one-short

AdcGroupTriggerSource:为HW的时候,只支持one-shor

软件触发的话,上面的配置基本就结束了

b.AdcHwTrigger

        这个属于硬件触发相关的,但是我没有试过,以后试过完善了再来更新。

    

c.BctuHwUnit

        这个暂时也没有研究,后续用到了再来更新。

2.AdcGeneral

3.AdcInterrupt

以上ADC的配置基本就完成了,下面我们结合代码来讲解

2.CODE使用案例

1.中断回调函数实体化

这里我在回调函数里面新增了一个变量++,用来判断ADC是否转换结束用

2.初始化

     向中断向量表里注册中断

       初始化ADC

        ADC自标定

3.ADC转换

  当ADC自标定正常完成后,进行ADC转换,然后读ADC值

Adc_SetupResultBuffer

        参数一:Group名字生成的宏

        参数二:ADC转换完成的数据保存的buf, 注意buf的大小,12bit的ADC转换,

                        buf要定义为uint16, Group下有多少个ADC channel, buf就要有多少个元素。

比如我Group下有3个channel,我就定义了buf[3]        

Adc_StartGroupConversion:

        参数一:要进行ADC转换的Group

Adc_ReadGroup

        参数一:要读取数据的ADC Group

        参数二:这个要注意,与Adc_SetupResultBuffer()的第二个参数所使用的buf不一样。

        这个函数的功能是将Adc_SetupResultBuffer参数二的值保存到Adc_ReadGroup()的

        第二个参数里面去。

以上就讲解结束了。

  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
S32K3x4EVB-Q257是一款基于ARM Cortex-M内核的汽车电子控制系统的评估板。以下是入门指南: 1. 硬件准备:首先,确保你有一块S32K3x4EVB-Q257评估板、一台电脑和必要的USB连接线。 2. 软件安装:在电脑上安装相关的开发工具和软件。这可能包括S32 Design Studio集成开发环境(IDE)、S32 SDK软件开发套件、S32K Power Software Examples等。 3. 连接电源:将评估板插入电脑上的USB接口,并连接电源线到评估板上。 4. 下载示例代码:在S32 Design Studio中创建一个新项目,并下载示例代码到评估板上。这些示例代码将帮助你了解基本的功能和操作。 5. 硬件连线:根据需要,使用连接线将评估板与其他外部设备(例如传感器、显示屏等)连接起来。评估板上的引脚和接口可以通过手册查阅获得。 6. 运行代码:编译和下载代码到评估板上,并运行它。通过调试器或串口等方式,观察代码的执行情况和输出结果。 7. 进一步学习:通过阅读相关文档、手册和参考资料,了解评估板的更多功能和特性。你可以尝试修改示例代码或编写自己的代码,以实现特定的功能。 注意事项:在使用评估板时,务必遵循相关的安全操作规程,不要超过硬件的额定电压和电流,并保持设备的正确连接和操作。 以上是关于S32K3x4EVB-Q257入门的简要指南。希望这些信息对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

土豆萝卜丝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值