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.

[参考译文] MSP-EXP430F5529LP:使用UART和RFID-Booster套件

Guru**** 2589280 points
Other Parts Discussed in Thread: MSP-EXP430F5529LP, MSP430F5529, TRF7970A, RF430FRL152H, MSP430FR4133, MSP-EXP430FR4133, MSP430G2553

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/654144/msp-exp430f5529lp-using-uart-and-rfid-booster-kit

部件号:MSP-EXP430F5529LP
线程中讨论的其他部件: MSP430F5529TRF7970AMSP430FR4133MSP-EXP430FR4133RF430FRL152HMSP430G2553

大家好!

我正在尝试在Siemens S7控制器的一端和另一端的RFID温度传感器之间建立连接(这是 :RF430FRL152H)

我提出了使用MSP-EXP430F5529LP和RFID-Booster套件的想法。

为此,我需要通过UART将Launchpad (我只需要RX/TX)连接到控制器。

出现了两个问题:

如果没有太多的解决方法,这是否可行? 我是否可以通过连接UART而不是USB来使用现有固件(例如sloc297c)?

另一种可能是使用TRF7970A EVM,它使用UART信号运行,但似乎MSP430F5529的情况并非如此,它会使项目变得更加复杂。

我希望我能清楚地解释我的问题,感谢您提供任何帮助,

非常感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    对于此应用,最好从 具有MSP430Tm微控制器 应用说明的RF430FRL152H NFC传感器标签应用示例开始。 它使用MSP430FR4133作为主机MCU (MSP-EXP430FR4133),TRF7970A NFC收发器(DLP‑7970ABP)和RF430FRL152H传感器补丁(RF430-TMPSNS EVM)。 首先,我从应用手册中链接的示例代码开始,让MCU > TRF > RF430FRL功能正常工作。 然后,我修改了代码以支持与Siemens S7控制器的UART通信以及所需的任何功能(例如,用于各种命令的通信状态机等)。 如果需要使用MSP430F5529,则始终可以将示例代码从FR4133移植到F5529。

    具有MSP430Tm微控制器的RF430FRL152H NFC传感器标签应用示例

    SLOA233 (示例代码)

    无电池NFC/ RFID温度感应补丁

    DLP-7970ABP硬件更新概述

    此致,

    詹姆斯

    MSP客户应用程序

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,

    为了补充James所说的绝对是最佳前进道路的内容,他引用的MSP430FR4133+TRF7970A示7970示例中包含一些基本的UART代码,用于将温度数据发送到PC上的UART终端, 因此,一旦您获得基本演示,然后将其绑定到Siemens S7控制器,您就应该能够利用它。 仍有工作要做,但您不必从头开始。

    此外,不建议将TRF7970AEVM用于此类应用,因此请使用James引用的硬件和附属材料。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    非常感谢!

    我现在可以读取温度数据,并通过UART发送内容到我的PC (使用"RealTerm"作为我的UART终端)。

    但是,有些事情似乎没有了,我现在无法解决这个问题。 在开始尝试分析温度数据之前,我甚至无法获得您在UART部分中编码的"简介消息"以正确的方式显示在我的PC上。 我尝试用我能想到的任何方式转换十六进制数字,但它只是在终端上不显示任何可读的消息。

    以下是在不更改任何内容的情况下,Intro消息在ASCII中的外观。

    该代码显示为这应该已经可以正常工作,而不会更改固件中的任何内容。

    这是否与MSP430G2553的UART功能有关,因此必须为FR4133更改?

    提前感谢您,我有点不确定是否应该为此开始新的讨论。

    此致,

    Rune

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Rune:

    COM端口的UART设置是什么? 波特率,奇偶校验等
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    波特率:11.52万
    数据位:8.
    奇偶校验:偶数(也尝试无)
    停止位:1.
    流控制:无

    编辑:

    我使用的是Profilc 2303 USB-RS232适配器。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Rune:

    设置应为11.52万,8N1,无流量控制。 因此,将奇偶校验更改为None (无)。

    您是否在CCS项目中启用了UART通信? 默认情况下,由于LCD接口的原因,它被禁用。 您必须在uart.h文件中取消对enable_host的定义的注释。

    不确定适配器可能会对事情产生何种影响,但在MSP-EXP430FR4133 LaunchPad上,它工作正常。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很抱歉我的回复太晚了,
    我在CCS项目中启用了UART通信。 我确实通过UART (如上面的POST所示)获取了一些内容,但它不能以任何方式读取。

    我认为从十六进制转换后,INTRO消息应该立即可以在ASCII中读取是正确的吗?

    每次  MSP-EXP430FR4133 LaunchPad开机时都会发送此消息? (如主页中所写)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,rmehwald,

    它应该立即可读,是的。 我不知道你所说的'从十六进制转换后在ASCII中'是什么意思。 UART将所有值作为需要打印的ASCII字符的十六进制值发送。 只要您的意思是终端将根据收到的十六进制值自动显示ASCII字符,那么我们就在同一页上。

    是每次打开主板电源时都会发送该消息,包括按下"重置"按钮时。

    您是否尝试过任何其他终端软件? 我个人最喜欢Termite和DockLight。 我还没有尝试过您使用过的。 我这样说是因为如果一条消息显示在垃圾中,这要么是UART设置不匹配,要么可能是终端的问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的,现在我尝试了术语,但显示消息仍然是垃圾。
    下一步我可能会尝试另一个USB-RS232适配器。

    要确认我没有做完全错误的事情,请执行以下操作:
    我将WFP 1.0 连接到PC的RX (这就是我在终端上看到的内容),并将RS232的信号接地连接到MSP-EXP430FR4133 LaunchPad的GND。
    这是正确的,足够了,不是吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好rmehwald,

    我不确定,我从未使用过RS232适配器。 设置是通过LaunchPad的USB连接将UART数据发送到PC。 我会将此问题反馈给MSP430人员,因为您所做的工作超出了我在NFC示例中的专业知识范围。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    如果您发送十六进制值而不是ASCII值,它们将在控制台中以不同方式显示。 我建议使用ASCII表根据显示的内容和发送的内容来确认这一点。 如果将变量声明为"char",则十六进制值的ASCII值应发送到终端并正确显示。

    我建议您在线和在我们的论坛中进行搜索,因为我确信其他用户以前也曾遇到过这种情况。

    此致,

    詹姆斯

    MSP客户应用程序

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常感谢你们两位!
    Jacobi先生代码中的介绍性消息被声明为字符串。
    但是:
    我不得不承认,我没有尝试使用USB进行UART通信,而是立即尝试将串行USB适配器连接到WFP 1.0。现在不能使用,因为我缺少跳线。 希望我明天可以尝试一下。

    此致,
    Rune
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    编辑:我忘记了您正在使用 MSP-EXP430FR4133 LaunchPad (抱歉,查看了主题标题)。 您可以  在MSP430FR4133 LaunchPadTm开发套件(MSP‑EXP430FR4133)用户指南中搜索“Backchannel”(两个LaunchPad的操作非常相似)。

    您可以使用LaunchPad上的反向信道UART。 有关 详细信息,请在MSP430F5529 LaunchPad开发套件(MSP-EXP430F5529LP)用户指南中搜索“Backchannel”。

    此致,

    詹姆斯

    MSP客户应用程序

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    但最后我只能使用电路板的RXD (WFP 1.1),TXD (WFP 1.0)和GND? 它们是否与跳线在反向通道UART上连接的针脚相同?

    因为我不能在S7端使用USB。

    或者MSP430FR4133 Launchpad是否可以用作USB主机以便使用USB-RS232转换器? 显然,如果两者都可行,第一种选择是可取的。

    非常感谢,

    Rune

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    雅各布先生的问题:

    至少通过USB,我现在可以读取终端中传感器的块9:

    Block 09数据:[B626DC21E41FFFFFF]

    这应该包含温度数据,但我必须如何转换? 我看到你们在使用IQmath库,但如果没有它应该是可能的。

    编辑:

    我使用了示例代码中提供的转换规则。 但是,我的解决方案有点不好。

    如何转换:

    Conversion系数= 10万.96185</xmt-block>9.6185万 ;

    b_value = 4330.0 ;

    K0_Temp = 273.15 ;

    Calibration_Const = 0.4.9293万 ;

    tempConv =(Conversion_Factor/RefResValue)*ThermValue;

    温度=(B_Value /(log (tempconv / Calibration_Constt)/ log (2.718)))- K0_Temp;

    但对于液晶屏上的27.5°C,使用 此公式时,我得到26.3728°C。

    我使用FF FF FF FF FF FF作为RefResValue

    以及EF 27 8A 22 AS ThermValue

    Block9用于此示例:[EF 27 8A 22 FF FF FF FF]

    编辑2:

    好的,似乎我做错了事。 温度越高,计算的值就越低。

    块9是否已经是温度数据?

    我发现我的ThermValue和RefResValue一开始就完全错了。 我不知道为什么我用4个字节来表示应该是uint16的值。

    我现在得到的最接近的是27.97°C, 其中'22 8A'为ThermValue,'27 EF'为RefResValue

    现在使用这种模式,我得到的更高的温度实际上被显示为更高,但它们仍然有点偏离,或者FR4133上的数学运算是否有点不准确?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Rune:

    器件常见问题的4.1 部分提供了有关如何根据原始ADC结果计算温度的详细信息和参考: http://www.ti.com/lit/pdf/sloa247