【技术实现步骤摘要】
一种基于linux平台的连续周期数据采样方法及系统
本专利技术涉及数据采样
,特别涉及一种基于linux平台的连续周期数据采样方法及系统。
技术介绍
linux是非实时操作系统,虽然支持RT调度策略,但是并非是硬实时系统,linux平台下进行数据采样,在连续采样要求比较高的应用场景下,一旦linux多任务会造成系统负载增大或阻塞,固定周期数据采样就难以保证。
技术实现思路
本专利技术的目的在于克服上述
技术介绍
中的不足,实现linux系统的连续周期数据采样。为实现以上目的,本专利技术采用了一种基于linux平台的连续周期数据采样方法,包括:利用CPU中设置的第一PRU模块和第二PRU模块实现ADC模块的连续采样,包括:第二PRU模块获取来自linux层的采样周期值并将采样周期值转发至第一PRU模块;第一PRU模块将采样周期值转换成指令消耗参数,按照指令消耗参数控制ADC模块连续采样数据,并将采样数据转发至第二PRU模块;第二PRU模块将采样数据转发至linux层 ...
【技术保护点】
1.一种基于linux平台的连续周期数据采样方法,其特征在于,利用CPU中设置的第一PRU模块和第二PRU模块实现ADC模块的连续采样,包括:/n第二PRU模块获取来自linux层的采样周期值并将采样周期值转发至第一PRU模块;/n第一PRU模块将采样周期值转换成指令消耗参数,按照指令消耗参数控制ADC模块连续采样数据,并将采样数据转发至第二PRU模块;/n第二PRU模块将采样数据转发至linux层供用户读取。/n
【技术特征摘要】
1.一种基于linux平台的连续周期数据采样方法,其特征在于,利用CPU中设置的第一PRU模块和第二PRU模块实现ADC模块的连续采样,包括:
第二PRU模块获取来自linux层的采样周期值并将采样周期值转发至第一PRU模块;
第一PRU模块将采样周期值转换成指令消耗参数,按照指令消耗参数控制ADC模块连续采样数据,并将采样数据转发至第二PRU模块;
第二PRU模块将采样数据转发至linux层供用户读取。
2.如权利要求1所述的基于linux平台的连续周期数据采样方法,其特征在于,所述第二PRU模块具体用于:
a1)初始化所述CPU与所述linux层之间的rpmsg通道;
a2)使能与rpmsg通道和第一PRU模块的相关中断;
a3)等待来自所述linux层发送的采样周期值,并将采样周期值转发至第一PRU模块;
a4)判断是否产生来自第一PRU模块的中断,若是执行步骤a5),若否执行步骤a6);
a5)读取第一PRU模块转发的采样数据并记录单帧传送的采样个数,编号此帧数据,发送至所述linux层;
a6)判断是否产生所述linux层发送的rpmsg通道中断,若是执行步骤a3),若否执行步骤a4)。
3.如权利要求1所述的基于linux平台的连续周期数据采样方法,其特征在于,所述第一PRU模块具体用于:
b1)上电启动后,第一PRU模块通过内部总线对所述ADC模块进行初始化;
b2)初始化完成后,使能指令计数器;
b3)读取指令计数器值;
b4)读取所述第二PRU模块发送的采样周期值,并计算总消耗指令数;
b5)ADC模块进行数据采样;
b6)产生中断信号通知所述第二PRU模块获取采样数据;
b7)再次读取指令计数器,计算执行的单次采样及发送消耗指令数;
b8)将总共消耗指令数与单次采样及发送消耗指令数比较,将剩余指令数消耗掉,并执行步骤b3)。
4.如权利要求1所述的基于linux平台的连续周期数据采样方法,其特征在于,所述linux层获取所述第二PRU模块发送的采样数据后,包括:
读取上一帧时间戳,加...
【专利技术属性】
技术研发人员:丁玲,钱许胜,姚济壮,秦明辉,
申请(专利权)人:科大智能电气技术有限公司,科大智能科技股份有限公司,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。