OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3017|回复: 0

精英开发板霍尔元件测速问题

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
11
金钱
11
注册时间
2019-12-30
在线时间
3 小时
发表于 2020-4-23 23:04:02 | 显示全部楼层 |阅读模式
2金钱
目前的情况是,霍尔元件工作正常。可以出现距离值,但是用距离值除以时间算出的速度值错误,甚至一直为0.0,请问这是什么原因?
霍尔元件部分程序如下:
void Hall_Data(void)
{
        static uint32_t time=0;
        int t=0;
        if(HALL_Scan())
        {
                if(id_entity.HALL_Date==0)
                {
                        time=runtime;
                }
                t=runtime-time;
                id_entity.HALL_Date++;
                if(bitledflag==0)
                {
                        bitledflag=1;
                        LCD_Clear(WHITE);
                }
                if((1.2*1000/t)>12)
                {
                        BEEP(1);
                        LED1(1);
                        POINT_COLOR=RED;
                }
                else
                        POINT_COLOR=BLACK;
                memset(LCD_BUF,0,LCD_MAX_LEN);
                sprintf((char*)LCD_BUF,"Distance:%0.1fm",(float)(id_entity.HALL_Date*1.2));
                LCD_ShowString(30,130,200,16,16,LCD_BUF);
                memset(LCD_BUF,0,LCD_MAX_LEN);
                if(t==0)
                        sprintf((char*)LCD_BUF,"speed:%0.1fm/s",0.0);
                else
                        sprintf((char*)LCD_BUF,"speed:%0.1fm/s",(float)(1.2*1000/(float)t));
                LCD_ShowString(30,150,200,16,16,LCD_BUF);
                printf("Hall_Count\t=\t%d\r\n",id_entity.HALL_Date);
        }
}


屏幕截图(17).png
屏幕截图(16).png
屏幕截图(15).png
IMG_20200423_225735.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-26 03:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表