历史上的今天
返回首页

历史上的今天

今天是:2025年01月29日(星期三)

2019年01月29日 | STM32编码器开发设置笔记

2019-01-29 来源:eefocus

在这里使用TIM3的通道1和通道2做为A B项的电平捕捉。


由于STM32自带硬件编码器接口,因此只要设置好就可使用,非常强大,下面程序测试通过。



void TIM3_Mode_Config(void)

{

//u16 CCR1_Val = 2500;

//u16 CCR2_Val = 1000;

GPIO_InitTypeDef GPIO_InitStructure;

  TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;

TIM_ICInitTypeDef TIM_ICInitStructure;

//TIM_OCInitTypeDef  TIM_OCInitStructure;

/*----------------------------------------------------------------*/

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

  

  GPIO_StructInit(&GPIO_InitStructure);

  /* Configure PA.06,07 as encoder input */

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

  GPIO_Init(GPIOA, &GPIO_InitStructure);

/*----------------------------------------------------------------*/

 

  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); //使能TIM3

TIM_DeInit(TIM3);

TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);

  TIM_TimeBaseStructure.TIM_Period =0xffff;       //

  TIM_TimeBaseStructure.TIM_Prescaler =0;     //设置预分频:

  TIM_TimeBaseStructure.TIM_ClockDivision =TIM_CKD_DIV1 ; //设置时钟分频系数:不分频

  TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  //向上计数模式

  //TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_CenterAligned1; 

/*初始化TIM2定时器 */

  TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);

/*-----------------------------------------------------------------*/

//编码配置                        编码模式

TIM_EncoderInterfaceConfig(TIM3, TIM_EncoderMode_TI12, 

                             TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);  //TIM_ICPolarity_Rising上升沿捕获

  TIM_ICStructInit(&TIM_ICInitStructure);

  TIM_ICInitStructure.TIM_ICFilter = 6;         //比较滤波器

  TIM_ICInit(TIM3, &TIM_ICInitStructure);

  

//TIM_ARRPreloadConfig(TIM3, ENABLE);

 // Clear all pending interrupts

  TIM_ClearFlag(TIM3, TIM_FLAG_Update);

  TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);   //使能中断

  //Reset counter

  TIM3->CNT =0;

TIM_Cmd(TIM3, ENABLE);   //使能定时器3

}

void TIM_Init(void)

{

  TIM3_Mode_Config();

}



在主程序中通过串口定时发送。

int main(void)

{

  SystemInit();// 72m时钟

  SysTick_Init();

TIM_Init();

NVIC_Config();

GPIO_74HC595_Config();

  while (1)

  {

encoder_num=TIM_GetCounter(TIM3);

  

// dis_595(encoder_num,encoder_num);

  }

}


推荐阅读

史海拾趣

Elektron公司的发展小趣事

随着环保意识的不断提高和可持续发展理念的普及,Elektron公司开始注重环保和可持续发展方面的工作。公司积极采用环保材料和节能技术,降低产品制造过程中的能耗和排放。同时,Elektron还加强了对废弃物的处理和回收工作,努力实现资源的循环利用和环境的可持续发展。这些措施不仅有助于公司降低成本和提高效率,也符合社会和消费者对环保和可持续发展的期望和要求。

以上五个故事分别从不同角度概述了Elektron公司的发展过程,包括创立与初期发展、技术创新与产品多样化、全球扩张与市场领导地位、技术突破与行业引领以及环保理念与可持续发展等方面。这些故事共同构成了Elektron公司丰富多彩的发展历程和辉煌成就。

EMC Technology RF Labs公司的发展小趣事

EMC Technology RF Labs成立于XXXX年,作为EMC Technology公司的一个专门研究射频(RF)技术的实验室。创立之初,RF Labs的目标是为电子通信行业提供高质量的射频元件和解决方案。公司聚集了一批在射频技术领域具有丰富经验和专业知识的工程师,开始了对射频技术的深入研究和探索。

CP Technology Inc公司的发展小趣事

随着公司规模的不断扩大,CP Technology Inc开始实施全球化战略。公司在海外设立了研发中心和销售网络,以更好地服务全球客户。同时,公司还积极参与国际电子行业的交流与合作,不断提升自身的技术水平和市场竞争力。

Dowosemi公司的发展小趣事

在电子保护器件领域,Dowosemi公司以其创新的TVS二极管技术崭露头角。该公司研发团队经过数年的努力,成功开发出具有PS级响应速度、大瞬态功率和低漏电流的TVS二极管。这一技术突破大大提高了产品的性能,满足了市场对高效能过电压保护元件的需求。Dowosemi公司凭借这一优势,迅速在市场上确立了领先地位。

C.K TOOLS公司的发展小趣事

随着全球电子产业的蓬勃发展,C.K TOOLS开始将目光投向国际市场。他们通过加强在英国、爱尔兰、法国和德国等欧洲国家的销售团队建设,以及扩大在全球其他国家的分销商网络,将产品推向了世界各地。在国际市场上,C.K TOOLS凭借其高品质的产品和专业的服务,赢得了众多电子制造企业的信赖和好评。

CyOptics Inc公司的发展小趣事

除了数据通讯和电信市场外,CyOptics的光学产品还逐渐拓展至其他领域。例如,公司的光学组件已集成至光学收发器、转发器及线卡等设备中,为数据中心、高性能计算和企业存储网络等应用提供了强有力的支持。此外,CyOptics还积极开拓新兴市场,如数据库、地铁及长途干线市场等,为客户提供定制化的光学解决方案。

问答坊 | AI 解惑

[求助] LM386 Pspice model

[请问哪位大侠知道去哪可以下到LM386 Pspice model,不胜感谢!…

查看全部问答>

2010年新兴视频监控技术指南(序列二)

IP摄像机(标清)潜在优势     使用IP摄像机最突出的优势在于它可以直接把摄像机连接到IP网络或计算机网络上,而在模拟摄像机系统中则需要另外再增加一个计算机(通常是编码器或者DVR),因此,在某些情况下,使用IP网络能很大程度上减 ...…

查看全部问答>

VC中的三种CString转数值的方法在eVC中全部失效

void CStyCString2ValueDlg::OnButton1() {         char *s=\"123\", *stops;         int i;         //这三种方法无论在VC还是eVC均正常         i=strtol( ...…

查看全部问答>

AXD调试器的教程

有谁用ADS1.2的吗?谁有AXD的教程,推荐下,谢谢…

查看全部问答>

最近很郁闷……

我是一个比较最求效率的人,最近帮一个朋友做了一个高速放大电路,让我很郁闷!板子弄好了,但是测试时却出现了非常诡异的事情,由于缺乏测试工具(示波器)使得我的工作停滞了很多天,再加上朋友的催,让我很不安心!考试快来了,时间不多了,但是 ...…

查看全部问答>

享受32位的乐趣---EJ-STM32体验板,请各路大侠拍砖!

人人都能有机会享受32位的乐趣了!   重庆优易特电子公司最新推出的EJ-STM32,是一款基于意法半导体(ST)STM32系列高性能32位处理器(Cortex-M3内核)的DEMO板。该板采用底板与核心板组合的工作方式,只需通过换插不同的CPU核心 ...…

查看全部问答>

24系列的DSP指令中,RPT指令的问题.

RPT # N指令可以使其后面的指令执行很多次,但那些指令可以和RPT指令配合产生N次有效的操作呢?…

查看全部问答>

用锂电池,430的vcc脚还需要接电容来滤波吗?

看到很多原理图上,430单片机电源脚接104电容来滤波。但是,如果采用3.6伏锂电电池供电,那么电源引脚还用得着接电容来滤波吗?…

查看全部问答>

用于 LED 照明应用的恒流非隔离式电源

$(\'swf_K8k\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'400\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', encodeURI(\'http://player.youku.com/player.php/sid/XMjcyNjgxNDUy/v.sw ...…

查看全部问答>

外型更加犀利 ABT发布了奥迪Q3改装套件

日前,德国改装公司Abt Sportsline发布了奥迪Q3改装套件。 外观套件包括前格栅,前扰流板,车门饰条,集成了排气系统的后保险杠和尾翼。 动力方面,Abt将提供汽油发动机不同程度的升级,针对2.0 TSI发动机,经过提升后从原来的21 ...…

查看全部问答>