This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
大家好。
我使用 MSP430FR6047设计了新的 PCB、用于水流测量。 我没有 MSP430FR6047 EXP 板。
我在项目中使用 USSLIB 02_20_00_18。 代码源自 USSSWLib_TEMPLATE_example 和 UltrasonicWaterFR604x_02_20_00_08 CCS 示例。
我的管道为131毫米(传感器-传感器距离),因此,我预计 ToFups 和 ToFdns 是相同的(因为测试是在静止水中进行的),并且接近89usec (131毫米/1480米秒= 89 μ s)。
我测量了显示 PICS 的 CH0和 CH1信号。 我认为传输和接收信号很好。
但是;
在 USS_runAlgorithms 之后、消息代码为122 (USS_MESSAGE_CODE_VALLED_Results)、而不是 USS_MESSAGE_CODE_NO_ERROR。 这是正常的吗? 我认为这个结果不是正常的、因为在这个结果之后、我测试了 deltaToF、totalTOF_UPS、totalTOF_DNS 值、其中包含 alResult 变量。 所有这些都是零。 只有 volumeFlowRate 具有不同的零形式、但具有非常湍流的值。
在附加组件中、我修改了 USS_userConfig.h 中的以下条件;
#define USS_HSPLL_FREQ_IN_MHz 80 //(也在72中进行了测试)
#define USS_HSPLL_INPUT_CLK_TYPE USS_HSPLL_INPUT_CLOCK_TYPE_CRYSTAL
#define USS_ALG_DTOF_COMPUTATION_MODE USS_ALG_DTOF_COMPUTATION_OPTION _Estimate
#define USS_ALG_VOLUME_RATE _计算_模式 USS_ALG_VOLUME_RATE _计算_选项_水//(也在通用模式下进行了测试)
#define USS_HSPLL_USSXTAL_Setting_USEC 10000
#define USS_GAIN_RANGE USS_Capture_GAIN_Range_8_7
#define USS_START_CAPTURE_SEC 1.0E-5F //500000e-9f (在模板中)
#define USS_ADC_SAMP_COUNT_SEC 6.99995E-5F //532000e-9f (在模板中)
您好!
我的团队成员将检查您的问题并在稍后回复。
Mesut、您好!
您能否检查平台上的 ADC 捕获以确保捕获良好的信号? 您可以查看 GUI 项目中的代码以了解这是如何完成的。 (捕获结果存储为16位整数值的数组。)
void CommandHandler_transmits(Packet_t *txPacket)
{
//计算需要发送的数据包数
//每个 ADC 捕获数据包最多可以容纳27个捕获
uint16_t updnsCaptureSize = gUssSWConfig.captureConfig->sampleSize;
uint8_t numOfPcks =(uint8_t)(uint8_t)(updnsCaptureSize/ COMMAND_ERR_UPS_DNS_CAP_MAX_CAP_SIZE);
int8_t finalPckLength =(uint8_t)(updnsCaptureSize % COMMAND_ERR_UPS_CAP_MAX_CAP_SIZE);
//计算每次捕捉中的字节数
uint8_t* pUPSCap =(uint8_t*)(USS_getUPSPtr (&gUssSWConfig));
uint8_t* pDNSCap =(uint8_t*)(USS_getDNSPtr (&gUssSWConfig));
BR、
Leo