社区
单片机/工控
帖子详情
S32K144 ADC多通道采集
强壮的书生
2018-08-28 04:00:00
在写S32 ADC底层发现所有的chn的转换结果都是集中在RO这个寄存器,有没有demo是可以实现多通道采集的
...全文
1580
6
打赏
收藏
S32K144 ADC多通道采集
在写S32 ADC底层发现所有的chn的转换结果都是集中在RO这个寄存器,有没有demo是可以实现多通道采集的
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq_27830307
2019-05-14
打赏
举报
回复
void ADC_Init_(void) { PCC->PCCn[PCC_ADC0_INDEX] &=~ PCC_PCCn_CGC_MASK; /* Disable clock to change PCS */ PCC->PCCn[PCC_ADC0_INDEX] |= PCC_PCCn_PCS(3); /* PCS=1: Select SOSCDIV2 */ PCC->PCCn[PCC_ADC0_INDEX] |= PCC_PCCn_CGC_MASK; /* Enable bus clock in ADC */ ADC0->CFG1 |= ADC_CFG1_ADICLK(0) /* Only ALTCLK1 is available */ |ADC_CFG1_ADIV(8) /* the clock rate is (input clock)/4 */ |ADC_CFG1_MODE(2);/* ADICLK=0: Input clk=ALTCLK1=SOSCDIV2 */ /* ADIV=0: Prescaler=1 */ /* MODE=2: 10-bit conversion */ ADC0->CFG2 = ADC_CFG2_SMPLTS(12); /* SMPLTS=12(default): sample time is 13 ADC clks */ ADC0->SC2 = ADC_SC2_ADTRG_MASK /* ADTRG=1: HW trigger */ |ADC_SC2_REFSEL(1); /* ACFE,ACFGT,ACREN=0: Compare func disabled */ /* DMAEN=0: DMA disabled */ /* REFSEL=1: Voltage reference pins= VREFH, VREEFL */ ADC0->SC1[0] = ADC_SC1_ADCH(9) ; /* Select AD9 (ADC0_SE9) @PTC1 */ ADC0->SC1[1] = ADC_SC1_ADCH(10); /* Select AD10 (ADC0_SE10) @PTC2 */ ADC0->SC1[2] = ADC_SC1_ADCH(11) ; /* Select AD11 (ADC0_SE11) @PTC3 */ ADC0->SC1[3] = ADC_SC1_ADCH(12) ; /* Select AD12 (ADC0_SE12) @PTC14 */ ADC0->SC1[4] = ADC_SC1_ADCH(13) ; /* Select AD13 (ADC0_SE11) @PTC15 */ ADC0->SC1[5] = ADC_SC1_ADCH(14) ; /* Select AD14 (ADC0_SE12) @PTC16 */ ADC0->SC3 = 0x00001000; /* CAL=0: Do not start calibration sequence */ /* ADCO=0: One conversion performed */ /* AVGE,AVGS=0: HW average function disabled */ } void PDB0_Init(void) { PCC->PCCn[PCC_PDB0_INDEX] |= PCC_PCCn_CGC_MASK; /* Enable bus clock in PDB0 */ PDB0->SC |= PDB_SC_TRGSEL(0xF) | /* b1111: Software trigger is selected */ PDB_SC_PRESCALER(8) | /* Prescaler: 010 = per.clck/(4*MULT) = 80 / (4*1) = 20MHz */ PDB_SC_PDBIE(1) | /* PDB interrupt enabled */ PDB_SC_MULT(2) | /* 00: Multiplication factor is 1. */ PDB_SC_CONT(1) | /* Continuous mode of operation */ PDB_SC_PDBEN_MASK| /* 1: PDB enabled */ PDB_SC_LDOK_MASK; PDB0->IDLY = 10000; PDB0->MOD = PDB_MOD_MOD(14400); PDB0->CH[0].C1 |= PDB_C1_BB(0xFE) // For Continuos Pre-Trigger Mode |PDB_C1_TOS(0x0) // Pretrigger Output Select: 0=bypassed , 1=enabled | PDB_C1_EN(0x3F); // PDB channel's pre-trigger enabled //Enable_Interrupt(PDB0_IRQn); INT_SYS_InstallHandler( PDB0_IRQn, &PDB0_Handler , (isr_t*) 0); INT_SYS_EnableIRQ( PDB0_IRQn); PDB0->SC |= PDB_SC_SWTRIG_MASK; /* restart PDB counter */ } 这个是在PDB中断读取ADC值
justmsn
2018-10-22
打赏
举报
回复
LZ可否分享一下多通道的例程?最近被s32k搞得...
强壮的书生
2018-08-31
打赏
举报
回复
额,搞出来了,需要用到S32K144内部的PDB来做预触发处理的。
worldy
2018-08-30
打赏
举报
回复
那么多个感觉好像没有什么用
强壮的书生
2018-08-29
打赏
举报
回复
因为S32K144 AD转换结果寄存器Rn是有32个,跟外部chn是对应的上,我想应该是利用起来的
worldy
2018-08-28
打赏
举报
回复
多通道采集一般都是一套ADC+寄存器Radc
每次转结束、中断、中断程序读取Radc,转换到下一个通道、启动新一个转换。。。。。。。。。。
NXP KE15利用DMA触发
多通道
ADC
转换
NXP KE15 KE14 KE16
ADC
和DMA使用定时器定时触发
多通道
ADC
。 本身MCU的
ADC
不具有
多通道
连续转换这个功能,利用DMA不仅可以 1.软件触发
多通道
ADC
转换 2.定时器触发
多通道
ADC
转换 3.定时器连续触发
ADC
转换
S32K144
之
ADC
S32K144
之
ADC
S32K144
有两个12位
ADC
模块,分别是
ADC
0和
ADC
1。不同封装的
ADC
模块具有不同的通道数,下面通过表格列出: 1、
ADC
硬件触发源 PDB触发:默认设置PDB触发模式,两个PDB 为 两个
ADC
产生触发和预触发(
ADC
和 PDB 成对工作,如 PDB0触发
ADC
0和 PDB1触发
ADC
1)。 TRGMUX触发:支持许多触发器源。参考手册中以LPIT为例子...
智能汽车课程专题:第1季-1.智能汽车时代开启了
智能网联汽车未来十年最值得期待的风口。综合叠加了电动汽车替代传统燃油汽车、自动驾驶辅助甚至替代人工驾驶、传统汽车座舱升级智能座舱、整车和零部件乃至产业链的国产自主可控化等发展趋势。AI、IoT、云计算、大数据、芯片和半导体、操作系统、5G等国家重点发展的“硬科技”,都和智能网联汽车有很紧密的关系。所以除了传统车企外,涌现了“蔚小理”这样的造车新势力,引入了Tesla这样的鲶鱼,又吸引了华为、百度、大疆、小米这样的中国高科技以及互联网巨头。智能网联汽车相较于传统汽车来说,最大的变化是:整车的核心技术和竞争点从机械技术转向了计算机技术。所以从车企到tire1等汽车产业链上下游,都将注意力转向了“车载计算机及其相关技术”的研究和实践。域控制器、hypervisor、车载以太网、SOME/IP、DoIP、SOA、AGL和QNX、OTA、C-V2X、AutoSAR CP和AP、ROS、SLAM、激光雷达、超声波雷达、毫米波雷达、深度相机、传感器前融合后融合、ADAS、AR-HUD、智能驾驶算法、算力平台、英伟达Xavier和Orin、高通骁龙8155和Ride、华为MDC、地平线征程3和征程5、MobileEye EyeQ5、TI TDA4、 NXP S32G等等,以上列出了一些关心汽车行业的人经常会看到听到的“关键词”。这些都是实现智能网联汽车所需要的关键技术,也是汽车行业工作者形成行业竞争力,试图去理解和分析行业发展趋势的关键技术底蕴。但是客观上智能网联汽车涉及到的技术杂、学科多、内容深,而且本身这些技术都在快速发展演变,这就造成了学习困难、不成体系。这对于传统汽车行业的“老人”,以及有兴趣进入智能汽车行业的“新人”来说,都是很大的障碍和挑战,急需解决方案。本训练营及课程体系就是为解决这个问题。我们将通过系统化的课程,全面覆盖智能网联汽车的“车端”新技术(就是前段中列出的那些关键词),控制深度深入浅出的讲解相关原理和概念、分析相关技术发展趋势。最终目标是希望大家有一定深度的理解智能网联汽车的原理和相关技术,能从整体上认知智能网联汽车这个产品,具备行业趋势的分析研判能力,具备行业上下游之间或者模块与模块之间的沟通能力,帮助大家在智能网联汽车获取核心竞争力,助力个人发展。
S32K系列
S32K144
学习笔记——
ADC
S32K系列
S32K144
学习笔记——
ADC
本例程基以下如图所示接口操作,MCU为
S32K144
,开发平台S32DSworkspace 功能描述:读取端口电压 如有错误,麻烦帮忙指出,谢谢! #include "
S32K144
.h" /* include peripheral declarations
S32K144
*/ #include "s32_core_cm4.h" #define ...
S32K--多路
ADC
采集
(SDK3.0)
使用NXP S32K148EVB的官方开发板,UART1引脚RX-PTC6 TX-PTC7。 PE配置: 多路
采集
需要使用
adc
_pal 本文配置了两路AD
采集
作为实例(PC28/PB0),配置如下: 配置结束,更新代码。 status =
ADC
_Init(&
adc
_pal1_instance, &
adc
_pal1_InitConfig0);//初始化...
单片机/工控
27,377
社区成员
28,769
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章