首页 > 其他分享 >外部触发ADC配置

外部触发ADC配置

时间:2023-05-31 14:25:22浏览次数:32  
标签:TimeBaseInitStructure 触发 TIM3 外部 TRGO TIM ADC

ADC通道的转换可以由外部事件触发,设置了 ADC_CTLR2 寄存器的 EXTTRIG 或 JEXTTRIG位,则可分别通过外部事件触发规则组或注入组通道的转换。注 : 当外部触发信号被选为ADC规则或注入转换时,只有它的上升沿可以启动转换。

/*ADC初始化部分代码*/

ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T3_TRGO;//定时器3的TRGO事件

ADC_ExternalTrigConvCmd(ADC1, ENABLE);//开启外部事件触发ADC启动

/*定时器部分代码*/

void TIM3_TRGO(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure={0};
RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM3, ENABLE );

TIM_TimeBaseInitStructure.TIM_Period = 10-1;
TIM_TimeBaseInitStructure.TIM_Prescaler = 96-1;     //10us触发一次
TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseInit( TIM3, &TIM_TimeBaseInitStructure);

TIM_SelectOutputTrigger(TIM3, TIM_TRGOSource_Update); //选择TRGO作为触发源为定时器更新时间

TIM_ARRPreloadConfig( TIM3, ENABLE );
TIM_Cmd(TIM3, ENABLE);
}

 

int main(void)
{

ADC_Function_Init();

ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_71Cycles5 );//84/12=7us<10us(定时器触发转换时间),

 TIM3_TRGO();
while(1)
{

}

 

标签:TimeBaseInitStructure,触发,TIM3,外部,TRGO,TIM,ADC
From: https://www.cnblogs.com/wchmcu/p/17445959.html

相关文章

  • 三方仓库如何实现Zadig流水线自动触发
    !!大家好,我是乔克,一个爱折腾的运维工程,一个睡觉都被自己丑醒的云原生爱好者。作者:乔克公众号:运维开发故事博客:www.jokerbai.com最近因为公司的产研调整,决定将代码仓库从本地的Gitlab迁移到云效的Codeup,不是Gitlab不够好,而是Codeup在度量、安全等方面比原生的Gitlab要好,再......
  • jquery自动触发事件
    <!DOCTYPEhtml><htmllang="en"> <head> <metacharset="UTF-8"> <title>Title</title> <scriptsrc="js/jquery-3.5.1.min.js"></script> <script>$(function......
  • Android平台如何实现外部RTSP|RTMP流注入轻量级RTSP服务模块(内网RTSP网关)
     技术背景今天分享的是外部RTSP或RTMP流,拉取后注入到本地轻量级RTSP服务模块,供内网小并发场景下使用,这里我们叫做内网RTSP网关模块。内网RTSP网关模块,系内置轻量级RTSP服务模块扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务模块工作,多个内网客户端直接访问内网轻量级RTSP......
  • Android平台GB28181设备接入模块如何对接NV21、YV12、RGB、YUV等外部数据
    技术背景我们在对接Android平台GB28181设备接入模块的开发者时,遇到这样的场景,除了Android设备(如执法记录仪、智能安全帽等)自带的camera或camera2前后摄像头数据外,还有些场景是需要外部编码前或编码后数据,比如对接OTG类似的外置数据源,如NV12、NV21、YV12、RGB或YUV等格式,这里做个简......
  • 数据库 视图、触发器、存储过程
    数据库视图、触发器、存储过程一直以来总是CRUD,只会操作数据库表了,其他的视图、触发器、存储过程忘完了,但因为生产事故被迫研究了一下,简单回顾一下概念吧。视图在看系统的权限管理部分时,发现它是从视图中查询数据的,通过将多个权限表的数据关联为视图,大大减少了查询时的SQL......
  • RHEL7-NAT模式连接外部网络
     通过VMware成功安装RHEL7服务器后,除了使用Bridge桥接模式连接外部网络外,还可以使用NAT模式连接外部网络前提:建议关闭防火墙及selinux。具体做法参考:https://blog.51cto.com/ztj1216/63445921.配置虚拟机RHEL7NAT模式连接外部网络1.1.设置虚拟机网络为NAT方式1.2. 查看Windows端......
  • 【.NetCore】结合MasaDcc实现动态配置小程序消息模板并进行推送消息
    仅适用于更换小程序模板(属于换汤不换药)。可实现多环境对应不同的小程序模板一.配置文件格式"MiniProgramConfig":{"Token":"r8Z6weJVCb0","EncodingAESKey":"MhemkNp9DZXqe24A","AppId":"wxff9df85f87","App......
  • spring boot项目访问外部http请求的解决方案
    在Spring-Boot项目开发中,存在着本模块的代码需要访问外面模块接口,或外部url链接的需求。针对这一需求以前的做法就是访问外部请求都要经过httpClient需要专门写一个方法,来发送http请求,这个就不说了,网上一搜全都是现成的方法。springboot实现外部http请求是通过FeignClient来请求......
  • 【踩坑记录】autojs使用while(1)导致broadcast无法正常执行
    autojs中的死循环操作最好使用setInterval而不是,while(1)。 while(1)会导致其他语句无法执行,这里面包括了信号相关的,比如今天踩得坑: 用events.broadcast.emit发出信号后,相应的on语句无法正常执行,后来才发现原来是为了一个用while(1)来执行死循环导致整个线程全部死在了这里,......
  • layui渲染checkbox触发方法
    html:<span><inputtype="checkbox"id="checkAllBz"name="checkAllBz"value=""checkedlay-filter="filterName"lay-skin="primary">全选</span>js:layui.use(......