下一篇 上一篇 目录

19. 闪存升级

许多调制解调器可以通过使用从互联网获取的升级程序重新编程其闪存来进行升级。通过从 PC 经由串行端口向调制解调器发送此“程序”,调制解调器会将此程序存储在其非易失性存储器中(即使电源关闭,它仍然存在)。关于如何安装它的说明通常是在 Windows 下如何操作,因此您需要弄清楚如何在 Linux 下进行等效操作(除非您想在 Windows 下安装升级)。将程序发送到调制解调器通常称为下载。

如果本 HOWTO 的最新版本仍然包含此请求(请参阅 本 HOWTO 的新版本),请将您安装此类升级的经验发送给我,这将对其他人有所帮助。

以下是进行升级的一般思路。首先,可能需要向您的调制解调器发送一个命令,告诉它接下来的是闪存 ROM 升级。在一种情况下,这是 AT**。您可以通过启动通信程序(例如 minicom)并键入来执行此操作。首先键入 AT <enter> 以查看您的调制解调器是否在那里并回答“OK”。

接下来,您需要将一个文件(有时是两个文件)直接发送到调制解调器。通信程序(例如 minicom)通常使用 zmodem 或 kermit 将文件发送到调制解调器(及更远的地方),但这些程序将文件放入数据包中,这些数据包附加了标头,而您需要将完全相同的文件发送到调制解调器,而不是修改后的文件。但是 kermit 通信程序有一个“transmit”命令,可以直接发送文件(不使用 kermit 数据包),因此这是一种直接发送文件的方法。Minicom 在 1998 年没有此功能。

发送文件(或多个文件)的另一种方法是从通信程序转义到 shell(在 minicom 中是 ^AJ),然后:cat upgrade_file_name > /dev/ttyS4 (如果您的串行端口是 ttyS4)。然后返回到通信程序(在 minicom 中的命令行提示符下键入 fg)以查看发生了什么。

以下是某个 Rockwell 调制解调器的示例会话(C-a 是 ^A)

- Run minicom
- Type AT** : see "Download initiated ..."
- C-a J
- cat FLASH.S37 > /dev/modem
- fg : see "Download flash code ..."
- C-a J
- cat 283P1722.S37 > /dev/modem
- fg : see "Device successfully programmed"


下一篇 上一篇 目录