MSP430WARE++的使用2:RSP1 driver的调用方法
1、硬件原理图
/V111a7Bl0251Ar/6vSwNpYebSLQCWP2ZArCb9KMjyqTzeM4N6yT9t7Fxmk!/o/dA4AAAAAAAAA&ek=1&kp=1&pt=0&bo=swBJALMASQADACU!&su=196951169&sce=0-12-12&rf=2-9" style="margin:0px; padding:0px; border-width:0px; border-style:none; vertical-align:top; width:179px; height:73px">
选中RSP1目录。右键点击“Exclude from Build”就可以。
b、使能外设
EXTERNAL_MODULE_RSP1_MODE 1
c、驱动程序的配置。
依据上述相应关系更改RSP1_config.hpp配置文件,其更改后的源程序例如以下:
#define RSP1_UART 0x01
#define
RSP1_BUSY_PORT PORT6
#define RSP1_BUSY_PIN PIN5
d、类的派生
class CRadar:public CRSP1
并在HAL_include.hpp文件里加入例如以下包括语句:
#include "./Radar/Radar.hpp"
e、对象的声明
class CHAL
f、其他操作
INTERNAL_PERIPHERAL_UART1_MODE 10
异步串行口启动后。在main.cpp的异步串行口中断函数中增加显示语句就可以,源程序例如以下:
vector=USART1RX_VECTOR
g、调用方法
程序启动后。在进入主循环之前,应进行例如以下程序操作:
if (Target.HAL.Radar.Reset() == False)//对RSP1进行复位操作,复位不成功。则闪灯提示
(Target.HAL.Radar.b_UartFinish == False)
上述程序调用完成后。便可进入主循环,运行希望的操作。
3、CRSP1类成员变量和成员函数的说明
成员变量
uint8 u8_Direction[2]; 传感器的辨别方向
“00” 靠近时响应
“01” 远离时响应
“02” 靠近远离均响应
uint8 u8_HoldTime[2]; 保持时间
“00” 0.2秒
“01” 0.5秒
“02” 1秒
“03” 2秒
“04” 5秒
“05” 10秒
“06” 20秒
“07” 40秒
“08” 80秒
“09” 160秒
uint8 u8_Sensitivity[2]; 灵敏度,此数值指当前数值与阀值之间的距离,能够想象数值越大,表示与阀值之间的距离越长,灵敏度越差。
所以“09”具有最高的灵敏度。
“00” 240
“01” 200
“02” 160
“03” 140
“04” 120
“05” 100
“06” 60
“07” 40
“08” 20
“09” 0
uint8 u8_Immunity[2]; 抗干扰性
“00”:1次均值
“01”:2次均值
“02”:3次均值
“03”:4次均值
“04”:5次均值
“05”:6次均值
“06”:7次均值
“07”:8次均值
“08”:9次均值
“09”:10次均值
uint8 u8_SensorType[2]; 传感器类型
“00”:双通道传感器
“01”:单通道传感器
uint8 u8_SamplingRate[2]; 採样率,採样率与检測速度相应表见注3
“01”:1280Hz
“02”:2560Hz
“03”:3840Hz
“04”:5120Hz
“05”:6400Hz
“06”:7680Hz
“07”:8960Hz
“08”:10240Hz
“09”:11246Hz
uint8 u8_StartUpLearn[2]; 启动噪声平均时间,“01”-“40”:数值越高启动时间越长
uint8 u8_SensitivityPotentiometer[2]; 电位设置灵敏度
“00”:不使用电位器设置灵敏度
“01”:使用电位器设置灵敏度
uint8 u8_ADCgain[2];
ADC增益
“00”:1倍增益
“01”:2倍增益
“03”:8倍增益
Bool ReadDirection(void); 读取感应方向。数据存于u8_Direction成员变量中。
Bool WriteDirection(void); 写入感应方向,数据存于u8_Direction成员变量中。
Bool ReadHoldTime(void); 读取保持时间。数据存于u8_HoldTime成员变量中。
Bool WriteHoldTime(void); 写入保持时间。数据存于u8_HoldTime成员变量中。
读取灵敏度,数据存于u8_Sensitivity成员变量中。
Bool WriteSensitivity(void); 读取灵敏度。数据存于u8_Sensitivity成员变量中。
Bool ReadImmunity(void); 读取抗干扰性,数据存于u8_Immunity成员变量中。
Bool WriteImmunity(void); 写入抗干扰性,数据存于u8_Immunity成员变量中。
Bool ReadSensorType(void); 读取传感器类型,数据存于u8_SensorType成员变量中。
Bool ReadSamplingRate(void); 读取採样率,数据存于u8_SamplingRate成员变量中。
Bool WriteSamplingRate(void);写入採样率。数据存于u8_SamplingRate成员变量中。
Bool ReadStartUpLearn(void); 读取启动噪声平均时间,数据存于u8_StartUpLearn成员变量中。
Bool WriteStartUpLearn(void);写入启动噪声平均时间,数据存于u8_StartUpLearn成员变量中。
Bool ReadSensitivityPotentiometer(void);读取电位设置灵敏度,数据存于u8_SensitivityPotentiometer成员变量中。
Bool WriteSensitivityPotentiometer(void);写入电位设置灵敏度。数据存于u8_SensitivityPotentiometer成员变量中。
Bool ReadADCgain(void); 读取ADC增益。数据存于u8_ADCgain成员变量中。
Bool WriteADCgain(void);
写入ADC增益,数据存于u8_ADCgain成员变量中。
注1:本文中演示样例代码用绿色标注。
注2:本文中与使用密切相关的成员变量与成员函数用红色标注
注3: 採样率与检測速度相应表
MSP430WARE++的使用2:RSP1 driver的调用方法的更多相关文章
- MSP430WARE++的使用3:modbus模块的调用方法
MSP430WARE++的使用3:modbus模块的调用方法 MSP430WARE是一套基于C++语言的开源的MSP430层次化软件架构,支持多种外设. 本文将介绍modbus模块驱动程序的调 ...
- [No000085]C#反射Demo,通过类名(String)创建类实例,通过方法名(String)调用方法
using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using Sy ...
- ThinkPHP跨控制器调用方法
跨控制器调用方法 1. 先造对象,再调用里面的方法 $sc=new \Home\Controller\IndexController(); 用绝对路径找echo $sc->ShuChu(); ...
- C# 反射之调用方法谈
反射的定义 反射提供了描述程序集.模块和类型的对象(Type 类型). 可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性. 如果代码中使用了特性 ...
- 利用反射调用方法时,处理ref,out参数需要注意的问题(转)
转自:http://www.68idc.cn/help/buildlang/ask/20150318283817.html 项目中如下的泛型方法,因为要在运行时,动态指定类型参数,所以要利用反射来实现 ...
- Struts2 Action下面的Method调用方法
1. 在struts.xml中加入<constant name="struts.enable.DynamicMethodInvocation" value="tru ...
- 完整的分页存储过程以及c#调用方法
高效分页存储过程 USE [db] GO /****** 对象: StoredProcedure [dbo].[p_Page2005] 脚本日期: // :: ******/ SET ANSI_NUL ...
- MySql 存储过程及调用方法
存储过程实例: DELIMITER $$drop procedure if exists ff $$CREATE /*[DEFINER = { user | CURRENT_USER }]*/ PRO ...
- jquery ajax success 函数 异步调用方法中不能给全局变量赋值的原因及解决办法
jquery ajax success 函数 异步调用方法中不能给全局变量赋值的原因及解决办法 在调用一个jquery的ajax方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们 ...
随机推荐
- PHP电影小爬虫(2)
学习了别人的爬虫后自己改的一个,算是又回顾了一下php的使用 我们来利用simple_html_dom的采集数据实例,这是一个PHP的库,上手很容易.simple_html_dom 可以很好的帮助我们 ...
- 332 Reconstruct Itinerary 重建行程单
Given a list of airline tickets represented by pairs of departure and arrival airports [from, to], r ...
- [转]linux之diff 命令
转自:http://www.cnblogs.com/peida/archive/2012/12/12/2814048.html diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是 ...
- fastjson读取json配置文件
fastjson读取json配置文件: ClassLoader loader=FileUtil.class.getClassLoader(); InputStream stream=loader.ge ...
- 商业计算中Java高精度计算BigDecimal类
<Effective Java> 第48条:如果需要精确的答案,请避免使用float和double. 如果我们编译运行下面这个程序会看到什么?public class Test{ p ...
- JS——tab函数封装
1.为li标签添加index属性,这个属性正好就是span标签数组的index值 2.函数封装适合页面有多个tab切换,需要注意的在获取的li标签和span标签对象时,必须将对应div对象作为参数传入 ...
- python 求一个文件中每个字符出现的次数
import pprint import collections filename = input('Input filename') with open(filename) as info: cou ...
- C#使用Win32函数的一些类型转换
C#在访问Win 32 Api时需要处理C 结构与C#结构的映射,这在MSDN以及许多Blog上都可以找到参考的资料.Win 32 中有一些定义复杂的Struct,这些结构体拥有长度固定的数组或者一些 ...
- graphite 绘图工具
graphite 绘图工具
- python os os.path模块学习笔记
#!/usr/bin/env python #coding=utf-8 import os #创建目录 os.mkdir(r'C:\Users\Silence\Desktop\python') #删除 ...