1

我目前正在开发一个在 MBED 环境中使用 Freescale FRDM-KL25Z 的项目。根据他们的指示,我首先使用 Tera Term 通过 USB 上的虚拟串行端口与 Freedom 板进行通信。使用 Tera Term,当我第一次连接到 Freedom 板时,我必须按下板上的 RESET 按钮或在 Tera Term 中选择 Control->Send Break 来启动通信。

现在我想使用 Visual Studio 和 C# 创建一个更好的 PC 用户界面。但是,我不知道该怎么做的一件事是从 C# 重置 Freedom 板。我的工作是假设 SerialPort 类是我需要与 Freedom 板进行通信并且似乎工作正常。而且我还假设设置 BreakState 和重置 BreakState 将执行与 Tera Term 函数相同的功能,但每当我尝试执行

comPort.BreakState = true;

我收到一条 IOException 消息(使用异常的 try-catch 提取)“连接到系统的设备无法运行”。这对我并没有真正的帮助,因为我不知道出了什么问题。如果我从 Freedom 板的按钮重置,则 SerialPort 使用 C# 可以正常工作(BreakState 除外)。

所以我的问题:

  1. BreakState 是我想要重置 Freedom 板的东西吗?我假设 BreakState 会生成一个 Break 信号,这就是 Tera Term 所做的。
  2. 如果是,如何使用它而不会出现异常?
  3. 如果不是,那么您如何执行该功能?

我很茫然,因为我用谷歌搜索了我能想到的所有东西,但在解决这个问题上没有取得任何进展。我正在向我的设备添加一个重置按钮,但我仍然想要一个软件解决方案,因为我相信它可以做到,因为 Tera Term 做到了。

4

0 回答 0