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方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们 ...
随机推荐
- Spring-Security-OAuth2微信网页授权
@Controller public class Controller1 { @Autowired private OAuth2ClientContext context; @Bean @Scope( ...
- C# Autofac 出现 尝试创建“XXController”类型的控制器时出错。请确保控制器具有无参数公共构造函数 错误解决方案
出现以下错误: 总结解决方案: 本项目采用构造函数方法进行依赖注入,由于个人原因在业务层相互注入了接口,导致交叉:报错
- Android 使用WebView浏览有声音或者视频的网页,关闭WebView之后,声音或者视频不停止的解决办法
笔者最近使用Eclipse开发Android移动应用app,其实有一个功能是使用Android系统自带的WebView控件加载Web页面.开发很顺利,浏览也很正常.不过有个比较特殊的一点就是加载的We ...
- Spring的核心机制依赖注入
原文地址:http://developer.51cto.com/art/200610/33311.htm 本文主要讲解依赖注入(设值注入.构造注入),作用是可以使Spring将各层的对象以松耦合的方式 ...
- python调用java API
JPype documentation JPype is an effort to allow python programs full access to java class libraries. ...
- ZipMarket数字内容/素材交易网站源码项目
ZipMarket程序仿自Envato旗下网站,对于想创建数字内容/素材交易平台的站长来说,ZipMarket是一个十分独特和极具创新的解决方案,用户在你的网站注册并购买或出售数字内容/素材作品时,你 ...
- Linux监控实时log
https://jingyan.baidu.com/article/93f9803f5545a3e0e46f5596.html
- ubuntu14.3安装phpmyadmin
一.安装 sudo apt-get install phpmyadmin 二.软连接 cd /var/www/html/ sudo ln -s /usr/share/phpmyadmin phpmya ...
- rxswift-self.usernameTF.rx.text.orEmpty.map
self.usernameTF.rx.text.orEmpty.map 一堆类型转化+数据处理的操作 self.usernameTF.rx:将textfiled用Reactive封装: .text:监 ...
- js post一个对象 在C#中怎么接收? 未解决
这个在C#中怎么接收?