十五,计步器

十五,计步器

计步器是获得3轴加速度传感

器的数据进行判断,然后在液晶上自增累计。我们之前配置的QMA7985读id号和液晶显示驱动安排到一个工程里稍微修改一些就行。

一;显示的字库需要重新制作,先制作字库,因为是数字,我们只需要制作0,1,2,3,4,5,6,7,8,9这10个字符就行。

然后把字模赋值出来命名为数组,保存在xdata区。


二;显示函数


三;主函数显示

例:X位置0,Y位置0,显示0

但是实际使用中需要加上一个判断用来排列数字,有时候会是2位数,也许会是3位数,不同的位数要把数字显示在屏幕中间的起始位置是不同的。


四;QMA7983自带计步器算法,不需要对3个方向的加速度值进行计算,直接发送命令获得步数就行。

走路的时候x,y,z的波形如上图,根据这些阈值计算,计算个屁,内置算法了,直接读。

内置算法初始化后,每走一步会有一个中断输出。


五;单片机捕获中断,每走一步QMA7981输出一个低中断,单片机这边要捕获这个中断,单片机这边接P1.1,那么把P1.1配置为ccp0.

产生了中断,表示QMA7983产生了有效的步数,我们要读取这个步数就行,注意这个步数值是一个24位数据且存放在3个8位寄存器里面,我们读出这3个寄存器,第一个移16位,第二个移8位,第3个不移位,这样再加起来保存到一个24位的变量里就是读出的步2数。


六,显示和步数都配置好了,我们在主函数里面配置。

当捕获到ccp0中断的时候,就表示计算出了有效步数,然后把这个数据读取出来,显示。


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前言2 令狐采学 一、 总体设计3 二、 硬件设计5 AT89C51单片机及其引脚说明:5 显示原理7 技术参数8 电参数表8 时序特性表9 模块引脚功能表9 三、 软件设计10 四、 调试说明11 五、 使用说明13 结论13 参考文献13 附录14 、系统电路图14 、程序清单15 前言 单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹 的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程 的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录 像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单 片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因 此,单片机的学习、开发与应用在生活中至关重要。 随着电子信息产业的不断发展,信号频率的测量在科技研究和实际应用中的作用日益 重要。传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行 缓慢,而且测量频率的范围比较小。考虑到上述问题,本论文设计一个基于单片机技术 的数字频率计。首先,我们把待测信号经过放大整形;然后把信号送入单片机的定时计 数器里进行计数,获得频率值;最后把测得的频率数值送入显示电路里进行显示。本文 从频率计的原理出发,介绍了基于单片机的数字频率计的设计方案,选择了实现系统得 各种电路元器件,并对硬件电路进行了仿真。 总体设计 用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方 波、三角波的频率进行自动的测量。 所谓"频率",就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T 内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路 的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。时间基准信号发生器 提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等 于1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通 过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器 计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。 本系统采用测量频率法,可将频率脉冲直接连接到AT89C51的T0端,将T/C1用做定时 器。T/C0用做计数器。在T/C1定时的时间里,对频率脉冲进行计数。在1S定时内所计脉 冲数即是该脉冲的频率。见图1: 图1测量时序图 由于T0并不与T1同步,并且有可能造成脉冲丢失,所以对计数器T0做一定的延时,以 矫正误差。具体延时时间根据具体实验确定。 根据频率的定义,频率是单位时间内信号波的个数,因此采用上述各种方案都能实现 频率的测量。但是本论文设计的是一个用单片机做为电路控制系统的数字式频率计,采 用脉冲定时测频法,则在低频率的测量时误差会大一些。采用脉冲周期测频法则测高频 率时精度无法保证;采用脉冲数倍频测频法和脉冲数分频测频法则精度有所提高,但控 制电路较复杂;采用脉冲平均周期测频法则很难兼顾低频信号的测量;而采用多周期同 步测频法,闸门时间与被测信号同步,消除了对被测信号计数产生的±1误差,测量精度 大大提高,且测量精度与待测信号的频率无关,达到了在整个测量频段等精度测量。本 次设计由于个人水平有限,因此,本次设计根据需要,采用脉冲定时测频法。 基本设计原理是首先把待测信号通过放大整形,变成一个脉冲信号,然后通过控制电 路控制计数器计数,最后送到译码显示电路里进行显示,其基本构成框图如图2所示。 图2 由上图可以看出,待测信号经过放大整形电路后得到一个待测信号的脉冲信号,然后 通过计数器计数,可得到需要的频率值,最后送入译码显示电路中显示出来。但是控制 部分才是最重要的,它在整个系统的运行中起至关重要的作用。 为了得到一个高性能的数字频率计,本次设计采用单片机来做为数字频率计的核心控 制电路,辅之于少数的外部控制电路。因此本此设计的系统包括信号放大整形电路、分 频电路、单片机AT89C51和显示电路等。本系统让被测信号经过放大整形后,进入单片机 开始计数,利用单片机内部定时计数器定时,在把所记得的数经过相关处理后送到显示电 路中显示。其系统原理框图将在下面介绍。 根据上述的基于单片机的数字频率计的设计原理,我们可设计一个由放大整形电路、分 频电路、多路数据选择器、AT89C51以及显示电路来构成的数字式频率计,其系统框图如 图3所示。 图3 硬件设计 AT89C51单片机及其引脚说明: 89C51是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征 :4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值