目录

第1章说明    2

第2章音频通讯    3

2.1 下载    3

2.2 上传    8

2.2.1 操作    8

2.2.2 音量    8

2.3 直接将BASIC代码转换为wav文件    9

第3章串行通讯    10

3.1 串行通讯线    10

3.2 下载    10

3.3 上传    13

第1章说明

PC-1500与PC通讯,需要借助软件E500Comm,该软件的下载方法:

访问 http://pan.baidu.com/s/1gd7XDkf

进入 public\Tools\E500Comm

下载最新的压缩包即可,本文是以E500Comm-14.11.23.rar为例进行说明的。

第2章音频通讯

音频通讯即通过模拟的声音信号实现数据传输,其效率较低(传输1K程序,需要大概1分钟)。

音频通讯需要底座(CE-150),以及音频线。音频线一根就行了,不过最好配齐两根。原配的音频线是单声道的,如果找不到也可以使用常见的双声道音频线代替,如下图所示:

图2.1

2.1 下载

下载就是把PC-1500机内(或磁带里的)的BASIC代码录制为PC上的wav文件。

音频线一端插入底座的MIC插孔(这是PC-1500输出音频信号的地方),另一端插入PC的MIC插孔。一定不要插入PC的Line In插孔。Line In和MIC都是PC音频输入的插孔,但它们有很大的区别:Line In直接把音频信号传给声卡,MIC会把音频信号放大后再传给声卡。PC-1500输出的音频信号很弱,使用Line In插孔,PC根本无法辨认。

运行Cool Edit 软件,新建一个波形文件,如下图所示:

采样率建议16000以上。声道固定为"单声道",采样精度固定为"8位"。

图2.2

单击下图的录音按钮,然后在PC-1500上运行CSAVE命令(或)。Cool Edit 将录音。CSAVE命令执行完毕,请单击下图的停止按钮。

图2.3

注意波形的最大值和最小值,两者的差值(即振幅)应尽量的大些。太小则说明采集到的信号太弱了。

图2.4

如果录制波形的振幅过小,就需要调整PC上麦克风的音量和麦克风加强,如下图所示:

图2.5

Cool Edit里单击【文件】【另存为】菜单项,将录好的音频保存到wav文件里,如下图所示:

图2.6

至此,PC-1500机内的代码即被保存到了wav文件里。这个wav文件是需要处理的,原因有两条:

1、录制的wav文件里,波形振幅还是太小,需要将振幅调大。否则PC上播放该wav文件时,PC-1500无法识别;

2、录制的wav文件比较大,可以只提取出必要的数据,减小wav文件的大小。

可使用E500Comm处理wav文件,其操作步骤为:

1、运行E500Comm。选择计算器为"PC-1500",然后单击"确定"按钮;

图2.7

2、程序主界面请单击"1.程序"按钮

图2.8

3、单击【文件】【打开...】菜单项,选择一个wav文件。E500Comm将读取wav文件里的BASIC代码,并显示出来,如下图所示:

图2.9

4、单击上图【文件】【保存】菜单项(或【另存为(WAV)...】菜单项),保存wav文件。

2.2 上传

上传就是把wav文件里的BASIC代码传给PC-1500。

2.2.1 操作

音频线一端插入底座的EAR插孔(这是PC-1500输入音频信号的地方,也就是"耳朵"),另一端插入PC的Line Out插孔。一定不要插入PC的耳机插孔。Line Out和耳机都是PC音频输出的插孔,但它们有很大的区别:Line Out是声卡直接输出的音频信号,耳机则是声卡输出的音频信号经放大后输出的。不使用耳机的原因一是音量太大,二是容易失真。

PC-1500上运行命令CLOAD,PC上播放wav文件。注意:PC上的能突然发声的程序请关闭,如:QQ。否则会打扰PC-1500接听wav文件。

2.2.2 音量

PC-1500接听声音文件,最难控制的就是音量。

如果wav文件是E500Comm保存所得,简单的把音量调整到最大即可(假定播放wav音频的软件是Windows Media Player,且其音量也为最大)。

至于其它途径获得的wav文件,如翻录磁带获得的wav文件,该如何精准的调节音量呢?笔者在这里介绍一个方法——使用 Cool Edit 查看Line Out输出的音频信号。具体做法为:

1、将插入PC-1500底座的EAR孔的音频线插头拔下来,插入PC的Line In插孔。也就是说:Line Out输出的音频信号直接进入Line In插孔;

2、PC上播放wav文件;

3、使用Cool Edit软件录制音频,查看音频波形的振幅。这个振幅最好在170以上。

2.3 直接将BASIC代码转换为wav文件

使用E500Comm,可以将BASIC代码直接转换为wav文件。如下图所示,在文本框内输入、修改BASIC代码,然后单击【文件】【另存为(WAV)...】菜单项即可将BASIC代码保存至wav文件。

图2.10

第3章串行通讯

串行通讯效率较高,但是需要通讯模块(CE-158)。这种通讯模块非常少见,限制了串行通讯的应用。

3.1 串行通讯线

串行通讯线是"9孔转25针"的。您可以找商家定制,连线图如下:

图3.1

如果是自己焊接,可以简化一下连线图:

图3.2

3.2 下载

下载就是把PC-1500机内的BASIC代码通过串行通讯传输给PC。

单击主界面上的"设置"按钮,弹出设置界面

图3.3

计算器当然得选择"PC-1500";

串口号是连接通讯模块的PC串口编号;

波特率越大传输越快,建议选为2400;

勾中"传输完毕后播放声音"则传输完毕后会播放声音。

单击"确定"按钮,进入主界面。如下图所示。

图3.4

单击上图的"4.程序"按钮,将弹出如下界面。按提示进行操作即可。

图3.5

3.3 上传

上传就是把PC上的BASIC代码通过串行通讯传输给PC-1500。

完成图3.3的配置后,单击图3.4的"1.程序"按钮。显示如下界面:

图3.6

首先在文本框内输入BASIC代码,或者单击"打开文件..."从文件里载入BASIC代码。E500Comm目前支持从wav文件、文本文件(ASC)、二进制文件(BIN)里载入BASIC代码。

编辑好待发送的BASIC代码后,单击"提示"按钮,将显示操作提示。如下图所示:

图3.7

按照上图的提示进行操作即可。

需要注意的是"延时设置":PC给PC-1500发送数据时,不能太快。否则PC-1500可能来不及反应,导致串行通讯失败。为此,上图里有"字符延迟"和"行延迟"。字符延迟就是每发送一个字符就等待这么长的时间。行延迟是遇到行结束符时,会额外的多等一会儿。遇到行结束符的等待时间=字符延迟+行延迟×该行字符数。显然,发送二进制数据时只有字符延迟有效,行延迟是用不上的。

还有一个问题需要说明:等待时间只能精确到15ms左右。也就是说设置等待1ms或14ms,实际等待时间可能都是15ms。

PC-1500与PC通讯的更多相关文章

  1. [转]仿91助手的PC与android手机通讯

    仿91助手的PC与android手机通讯 原文 知道91助手和豌豆莢吧? 说到这两个东西,最让人好奇的应该是就是和手机的交互了.我之前有研究过电脑和安卓的交互,基本功能已经走通了,在这里我想分享一下. ...

  2. Mac下找不到gl.pc和glu.pc

    在用pkg-config可以用来自动查找对应库的include和lib文件,方便编译.它主要通过PKG_CONFIG_PATH和/usr/lib/pkgconfig目录下的.pc文件进行自动配置.在c ...

  3. 从MOV PC,PC;(或者ADDPC,PC,#4 )看ARM的三级流水线过程

    3级流水线如上图所示(PC为程序计数器),流水线使用3个阶段,因此指令分3个阶段执行. ⑴ 取指从存储器装载一条指令 ⑵ 译码识别将要被执行的指令 ⑶ 执行处理指令并将结果写会寄存器 以前学过的51单 ...

  4. Linux 内核PC/104 和 PC/104+

    当前在工业世界中, 2 个总线体系是非常时髦的: PC/104 和 PC/104+. 2 个在 PC-类 的 单板计算机中都是标准的. 2 个标准都是印刷电路板的特殊形式, 包括板互连的电子的/机械的 ...

  5. 关于ARM的PC指针(什么时候PC+8,PC+4,PC-4,PC-8)转

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.                                                 ...

  6. 在多台PC上进行ROS通讯-学习笔记

    首先,致谢易科(ExBot)和ROSWiki中文社区. 重要参考文献: Running ROS across multiple machines http://wiki.ros.org/ROS/Tut ...

  7. ARM获得PC指针为何PC=PC+8

    http://blog.csdn.net/sddzycnqjn/article/details/7691534 R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或正在“译码”的指 ...

  8. pc send instructor pc ad

     1. #include <string.h> #include <intrins.h> // 加入此头文件后,可使用_nop_库函数 #define MAIN_Fosc 11 ...

  9. 自制单片机之十七……PC与单片机RS-232串口的通讯和控制

    这次我们来试着一步步的去掌握PC与单片机通过RS-232进行通讯和控制. 先说说我硬件的情况.我用的PC是个二手的IBM240小本本,十寸屏,赛扬400,机子很老了.但也有它的优点:1.串口,并口,P ...

  10. PC高级语言与施耐德、罗克韦尔、台达等PLC的Modbus通讯源代码(ModbusTCP.DLL/ModbusRTU.DLL)

    1.0  通讯组件概述 该类通讯组件适用于基于PC高级语言的工业自动化控制系统,用于PC与可编程控制器(PLC).智能仪表等进行数据通讯.组件采用动态链接库文件(*.DLL)的形式,在PC系统的项目工 ...

随机推荐

  1. java提高篇---HashTable

    在java中与有两个类都提供了一个多种用途的hashTable机制,他们都可以将可以key和value结合起来构成键值对通过put(key,value)方法保存起来,然后通过get(key)方法获取相 ...

  2. 2016年10月29日 星期六 --出埃及记 Exodus 19:14

    2016年10月29日 星期六 --出埃及记 Exodus 19:14 After Moses had gone down the mountain to the people, he consecr ...

  3. js动画 无缝轮播 进度条 文字页面展示 div弹窗遮罩效果

    1.无缝轮播 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.a ...

  4. reactnativemodal

    'use strict'; var React = require('react-native'); var Modal = require('react-native-modal'); var { ...

  5. IOS Bug分析

    异常代码是SIGABRT.通常,  SIGABRT 异常是由于某个对象接收到未实现的消息引起的. 或者,用简单的话说,在某个对象上调用了不存在的方法. iOS应用崩溃日志分析 分析iOS Crash文 ...

  6. 【leetcode❤python】232. Implement Queue using Stacks

    #-*- coding: UTF-8 -*-#双栈法class Queue(object):    def __init__(self):        """      ...

  7. 【leetcode❤python】226. Invert Binary Tree

    #-*- coding: UTF-8 -*- # Definition for a binary tree node.# class TreeNode(object):#     def __init ...

  8. <转>如何改变讨好型人格 | 你根本不需要讨好任何人

    在我过去二十多年的生命里一直是一个“讨好者”. 我总是活在别人对我的期待中,我总是不停的追逐着别人对我的认可,我总是像个卑微的奴才一样去满足别人的需求. 但就和大多数的“讨好者”一样,我们越是寻求别人 ...

  9. FreeSWITCH第三方库(其他)的简单介绍(三)

    FreeSWITCH使用了大量的第三方库,本文档主要介绍关联相关库的信息: 音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html 视频相关 ...

  10. How to crack interviews ...

    Code practice: Leetcode: www.leetcode.com HackerRank: www.hackerrank.com Topcoder: https://www.topco ...