stm32的iap升级一定要用ymodem协议吗
因为STM32的ISP协议不支持Ymodem协议,它只支持它自已的ISP通信协议,该协议在坛子上有,你可以找到,如果你要实现使用Ymodem协议来下载程序这个功能,可以自行写个支持Ymodem协议的IAP应用即可。
modem的工作原理
modem(调制解调器)由发送、接收、控制、接口、操纵面板及电源等部分组成。数据终端设备以二进制串行信号形式提供发送的数据,经接口转换为内部逻辑电平送入发送部分,经调制电路调制成线路要求的信号向线路发送。接收部分接收来自线路的信号,经滤波、反调制、电平转换后还原成数字信号送入数字终端设备。
HEX文件用Ymodem协议发送到STM32的Flash中怎么不能运行
因为STM32的ISP协议不支持Ymodem协议,它只支持它自已的ISP通信协议,该协议在坛子上有,你可以找到,如果你要实现使用Ymodem协议来下载程序这个功能,可以自行写个支持Ymodem协议的IAP应用即可。
调制解调器的工作原理
MODEM综述
我们常说的Modem,其实是Modulator(调制器)与Demodulator(解调器)的简称,中文称为调制解调器。也有人跟据Modem的谐音,亲昵地称之为“猫”。我们知道,计算机内的信息是由“0”和“1”组成数字信号,而在电话线上传递的却只能是模拟电信号。于是,当两台计算机要通过电话线进行数据传输时,就需要一个设备负责数模的转换。这个数模转换器就是我们这里要讨论的Modem。计算机在发送数据时,先由Modem把数字信号转换为相应的模拟信号,这个过程称为“调制”。经过调制的信号通过电话载波传送到另一台计算机之前,也要经由接收方的Modem负责把模拟信号还原为计算机能识别的数字信号,这个过程我们称“解调”。正是通过这样一个“调制”与“解调”的数模转换过程,从而实现了两台计算机之间的远程通讯。
一. Modem的类别
一般来说,根据Modem的形态和安装方式,可以大致可以分为以下四类:
1、外置式Modem
外置式Modem放置于机箱外,通过串行通讯口与主机连接。这种Modem方便灵巧、易于安装,闪烁的指示灯便于监视Modem的工作状况。但外置式Modem需要使用额外的电源与电缆。
2、内置式Modem
内置式Modem在安装时需要拆开机箱,并且要对中断和COM口进行设置,安装较为繁琐。这种Modem要占用主板上的扩展槽,但无需额外的电源与电缆,且价格比外置式Modem要便宜一些。
3、PCMCIA插卡式Modem
插卡式Modem主要用于笔记本电脑,体积纤巧。配合移动电话,可方便地实现移动办公。
4、机架式Modem
机架式Modem相当于把一组Modem集中于一个箱体或外壳里,并由统一的电源进行供电。机架式Modem主要用于Internet/Intranet、电信局、校园网、金融机构等网络的中心机房。
除以上四种常见的Modem外,现在还有ISDN调制解调器和一种称为Cable Modem的调制解调器,另外还有一种ADSL调制解调器。Cable Modem利用有线电视的电缆进行信号传送,不但具有调制解调功能,还集路由器、集线器、桥接器于一身,理论传输速度更可达10Mbps以上。通过Cable Modem上网,每个用户都有独立的IP地址,相当于拥有了一条个人专线。目前,深圳有线电视台天威网络公司已推出这种基于有线电视网的Internet接入服务,接入速率为2Mbps-10Mbps!
二. Modem的传输模式
Modem最初只是用于数据传输。然而,随着用户需求的不断增长以及厂商之间的激烈竞争,目前市场上越来越多的出现了一些“二合一”、“三合一”的Modem。这些Modem除了可以进行数据传输以外,还具有传真和语音传输功能。
1、传真模式(Fax Modem)
通过Modem进行传真,除省下一台专用传真的费用外,好处还有很多:可以直接把计算机内的文件传真到对方的计算机或传真机,而无需先把文件打印出来;可以对接收到的传真方便地进行保存或编辑;可以克服普通传真机由于使用热敏纸而造成字迹逐渐消退的问题;由于Modem使用了纠错的技术,传真质量比普通传真机要好,尤其是对于图形的传真更是如此。目前的Fax Modem大多遵循V.29和V.17传真协议。其中V.29支持9600bps传真速率,而V.17则可支持14400bps的传真速率。
2、语音模式(Voice Modem)
语音模式主要提供了电话录音留言和全双工免提通话功能,真正使电话与电脑融为一体。这里,我们主要讨论的是一种新的语音传输模式—DSVD(Digital Simultaneous Voice and Data)。DSVD是由Hayes、Rockwell、U.s.Robotics、Intel等公司在1995年提出的一项语音传输标准,是现有的V.42纠错协议的扩充。DSVD通过采用Digi Talk的数字式语音与数据同传技术,使Modem可以在普通电话线上一边进行数据传输一边进行通话。
DSVD Modem保留了8K的带宽(也有的Modem保留8.5K的带宽)用于语音传送,其余的带宽则用于数据传输。语音在传输前会先进行压缩,然后与需要传送的数据综合在一起,通过电话载波传送到对方用户。在接收端,Modem先把语音与数据分离开来,再把语音信号进行解压和数/模转换,从而实现的数据/语音的同传。DSVD Modem在远程教学、协同工作、网络游戏等方面有着广泛的应用前景。但在目前,由于DSVD Modem的价格比普通的Voice Modem要贵,而且要实现数据/语音同传功能时,需要对方也使用DSVD Modem,从而在一定程度上阻碍了DSVD Modem的普及。
三. Modem的传输数率
Modem的传输速率,指的是Modem每秒钟传送的数据量大小。我们平常说的14.4K、28.8K、33.6K、56K等,指的就是Modem的传输速率。传输速率以bps(比特/秒)为单位。因此,一台33.6K的Modem每秒钟可以传输33600bit的数据。由于目前的Modem在传输时都对数据进行了压缩,因此33.6K的Modem的数据吞吐量理论上可以达到115200bps,甚至230400bps。
Modem的传输速率,实际上是由Modem所支持的调制协议所决定的。我们平时在Modem的包装盒或说明书上看到的V.32、V.32bis、V.34、V.34 、V.fc等等,指的就是Modem的所采用的调制协议。其中V.32是非同步/同步4800/9600bps全双工标准协议;V.32bis是V.32的增强版,支持14400bps的传输速率;V.34是同步28800bps全双工标准协议;而V.34 则为同步全双工33600bps标准协议。以上标准都是由ITU(国际通讯联盟)所制定,而V.fc则是由Rockwell提出的28800bps调制协议,但并未得到广泛支持。
提到Modem的传输速率,就不能不提时下被炒得为热的56K Modem。其实,56K的标准已提出多年,但由于长期以来一直存在以Rockwell为首的K56flex和以U.S.Robotics为首X2的两种互不兼容的标准,使得56K Modem迟迟得不到普及。值得庆幸的是,今年2月,在国际电信联盟的努力下,56K的标准终于统一为ITU V9.0,众多的Modem生产厂商亦已纷纷出台了升级措施,而真正支持V9.0的Modem亦已经遍地开花。56K有望在一到两年内成为市场的主流。在这里要顺便说一下的是,由于目前国内许多ISP并未提供56K的接入服务,因此在购买56K Modem前,最好先向你的服务商打听清楚,以免造成浪费。
以上我们所讲的传输速率,均是在理想状况的得出的。而在实际使用过程中,Modem的速率往往不能达到标称值。实际的传输速率主要取决于以下几个因素:
1、电话线路的质量
因为调制后的信号是经由电话线进行传送,如果电话线路质量不佳,Modem将会降低速率以保证准确率。为此,我们在连接Modem时,要尽量减少连线长度,多余的连线要剪去,切勿绕成一圈堆放。另外,最好不要使用分机,连线也应避免在电视机等干扰源上经过。
2、是否有足够的带宽
如果在同一时间上网的人数很多,就会造成线路的拥挤和阻塞,Modem的传输速率自然也会随之下降。因此,ISP是否能供足够的带宽非常关键。另外,避免在繁忙时段上网也是一个解决方法。尤其是在下载文件时,在繁忙时段与非繁忙时段下载所费的时间会相差几倍之多。
3、对方的Modem速率
Modem所支持的调制协议是向下兼容的,实际的连接速率取决于速率较低的一方。因此,如果对方的Modem是14.4K的,即使你用的是56K的Modem,也只能以14400bps的速率进行连接。
四. Modem的传输协议
Modem的传输协议包括调制协议(Modulation Protocols)、差错控制协议(Error Control Protocols)、数据压缩协议(Data Compression Protocols)和文件传输协议。调制协议我们在前面已经讨论过,现在着重谈一下其余的三种传输协议。
1、 差错控制协议
随着Modem的传输速率不断提高,电话线路上的噪声、电流的异常突变等,都会造成数据传输的出错。差错控制协议要解决的就是如何在高速传输中保证数据的准确率。目前的差错控制协议存在着两个工业标准:MNP4和V4.2。其中MNP(Microcom Network Protocols)是Microcom公司制定的传输协议,包括了MNP1—MNP10。由于商业原因,Microcom目前只公布了MNP1—MNP5,其中MNP4是目前被广泛使用的差错控制协议之一。而V4.2则是国际电信联盟制定的MNP4改良版,它包含了MNP4和LAP-M两种控制算法。因此,一个使用V4.2协议的Modem可以和一个只支持MNP4协议的Modem建立无差错控制连接,而反之则不能。所以我们在购买Modem时,最好选择支持V4.2协议的Modem。
另外,市面上某些廉价Modem卡为降低成本,并不具备硬纠错功能,而是使用使用了软件纠错方式。大家在购买时要注意分清,不要为包装盒上的“带纠错功能”等字眼所迷惑。
2、数据压缩协议。
为了提高数据的传输量,缩短传输时间,现时大多数Modem在传输时都会先对数据进行压缩。与差错控制协议相似,数据压缩协议也存在两个工业标准:MNP5和V4.2bis。MNP5采用了Rnu-Length编码和Huffman编码两种压缩算法,最大压缩比为2:1。而V4.2bis采用了Lempel-Ziv压缩技术,最大压缩比可达4:1。这就是为什么说V4.2bis比MNP5要快的原因。要注意的是,数据压缩协议是建立在差错控制协议的基础上,MNP5需要MNP4的支持,V4.2bis也需要V4.2的支持。并且,虽然V4.2包含了MNP4,但V4.2bis却不包含MNP5。
3、文件传输协议
文件传输是数据交换的主要形式。在进行文件传输时,为使文件能被正确识别和传送,我们需要在两台计算机之间建立统一的传输协议。这个协议包括了文件的识别、传送的起止时间、错误的判断与纠正等内容。常见的传输协议有以下几种:
ASCII:这是最快的传输协议,但只能传送文本文件。
Xmodem:这种古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。
Ymodem:这是Xmodem的改良版,使用了1024位区段传送,速度比Xmodem要快。
Zmodem:Zmodem采用了串流式(streaming)传输方式,传输速度较快,而且还具有自动改变区段大小和断点续传、快速错误侦测等功能。这是目前最流行的文件传输协议。
除以上几种外,还有Imodem、Jmodem、Bimodem、Kermit、Lynx等协议,由于没有多数厂商支持,这里就略去不讲。