谁有正交编码器的的例程,单独捕获A信号,和B信号,在网上找了好久都是断断续续的,看不懂

2019-07-20 03:11发布


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
123将321
1楼-- · 2019-07-20 19:43
逸雨 发表于 2019-1-10 19:26
while(1)
        {
                num=circle_count*20+TIM_GetCounter(TIM2);

我设置了定时器一个周期计数20,circle_count是溢出中断次数(包含方向,你看下中断函数就知道方向了),溢出一次就计数20了,所以circle_count*20是计算circle_count次中断读到编码数
123将321
2楼-- · 2019-07-20 21:01
逸雨 发表于 2019-1-10 18:54
///**************************************************************************
//函数功能:单位时 ...

应该还要设置定时器引脚设置吧 TIM_ICInit()
你可以配置两个IO,跟编码器引脚短接,IO口模拟编码器脉冲,验证可不可行
另外你那个贴出来的程序,采集到的编码脉冲最大频率应该是1.2k
逸雨
3楼-- · 2019-07-21 02:27
 精彩回答 2  元偷偷看……
123将321
4楼-- · 2019-07-21 06:43
逸雨 发表于 2019-1-11 11:03
delay_init(168);//延时初始化
       
        uart_init(115200);//串口初始化波特率为115200       

没有关联的    编码器初始化就这个函数Encoder_Init();       
你看下我发的那个网址,看我写的配置编码器的思路
逸雨
5楼-- · 2019-07-21 07:56
 精彩回答 2  元偷偷看……
逸雨
6楼-- · 2019-07-21 11:13
 精彩回答 2  元偷偷看……

一周热门 更多>