首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于ARM平台的MEMS输入设备的固件设计
来源:本站整理  作者:佚名  2009-09-22 13:15:04



  2.远端子系统设计

  远端子系统的主要任务是加速度计信号的采集,信号的放大、滤波等的处理,控制器 对射频无线发送的软件控制。主要的实现过程为:使用GPIO 口,并按照一定的采样频率将 加速度信号送入微控制器LPC2214,在LPC2214 内部进行信号放大和A/D 转换;并且按照 无线传输模块定义的格式将数据进行编码,再通过GPIO 口传送给无线射频模块。 主程序主要实现各个器件的初始化和任务的调用。

  int main(void)

  {

  TargetInit();

  Init_RF();

  Init_ADC();

  Init_Transmitter();

  TaskMouse();

  return 0;

  }

  在完成各个模块的初始化之后,执行Taskmouse 函数。Taskmouse 函数是主执行函数, 包含了GetMousePos()、ModeSelect()、Get_ADCValue_X()和Get_ADCValue_Y()等子函数。 调用该函数就可以执行加速度计信号采集、鼠标位置确定、系统工作模式选择等程序行。 获取鼠标位置信息的示意程序如下所示:

  void GetMousePos(uint8 *buf, uint8 shift)

  {

  uint8 i;

  uint8 sampf = 50;

  uint32 dpi = 100;

  uint32 sum_x, sum_y;

  sum_x = sum_y = 0;

  for (i = 0; i < sampf; ++i) {

  sum_x += Get_ADCValue_X(dpi);

  sum_y += Get_ADCValue_Y(dpi); }

  buf[0] = (sum_x / sampf) >> shift;

  buf[1] = (sum_y / sampf) >> shift;

  }

  3.主机端子系统设计

  在主机端子系统中,NRF2401 接受远端子系统的数据并从I/O 口进入LPC2214,数据通 过协议等处理为鼠标格式,最后通过USB 接口发送给主机。在该模块中,我们采用了操作 系统来实现多任务处理。

上一页  [1] [2] [3] [4] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:138,363.30000 毫秒