PIC58BS—BASIC单片机及其应用

🏠 首页 《无线电》杂志 1995年 🔗 第3期 🔗 第34页 分类:无线电技术自学经验交流 🔗 陈伟 🔗, 李中泽 🔗

编者按:掌握单片机、利用单片机设计电子产品,一直是广大读者的心愿。然而由于入门难、价格偏高,众多电子爱好者只能望“机”兴叹。

为解决上述难题,力源单片机技术研究所利用美国Microchip公司高性能、低价格、低功耗、小体积的PIC16C58单片机,将BASIC解释程序固化于片内OTPOM中,推出可用BASIC语言编程的单片机——PIC58BS。这样,对于用户,无需了解单片机内部复杂的结构;只需具备基本的数字电路和BASIC语言知识,稍加学习,即可掌握使用。另外,用户利用廉价的开发工具,通过微机(PC机)打印口可以方便地调试、修改、写入BASIC源程序。虽然它的存储容量不大;但对控制功能不十分复杂,而对体积、功耗要求较高的小型智能系统,PIC58BS大有用武之地。可以预料:这种廉价、易学、易掌握、易开发的单片机——PIC58BS的推出必将有助于广大读者开发出很多实用的智能产品。本讲座将详细介绍PIC58BS的硬件结构、语言系统、及应用实例。

第一讲 PIC58BS及其用户板的硬件结构

PIC58BS利用8位单片机PIC16C58,在其片内固化有BASIC解释程序。它不仅具有PIC系列单片机实用、低价、易学、省电、小巧等优点,还可直接使用BASIC形式的高级语言进行编程。第一讲主要讲述其特点、硬件结构、用户板的组成和开发。

一、PIC58BS的主要特点

*32条语句,全部由通俗易懂的BASIC语言构成。

*提供8路双向可独立编程的输入/输出(I/O)口,每路I/O的驱动/吸收电流可达20mA/25mA。

*外接串行电可擦除存储器EEPROM,存储容量为256字节,存放80~100条语句。可在线调试/修改应用程序。

*工作速度:每秒可执行2000条以上BASIC语句。

*系统时钟频率:4MHz。

*内设上电复位电路。

*工作电源:2.5V~6V。

*低功耗:工作电流小于2mA,睡眠电流小于10μA。

二、PIC58BS的硬件结构

1.引脚配置和功能介绍

PIC58BS引脚配置如图1所示。各引脚功能如下:

图1
图1 🔍原图 (386×383)

*RA0~RA2:I/O口,用于串行EEPROM的读写操作。

*RA3、RTCC:与PC机打印口的通信联络线。RA3为数据发送端,RTCC为数据接收端。

*MCLR:复位输入线,可直接连Vcc,上电自动复位。也可手动复位,低电平有效。

*P0~P7:I/O口,用户可编程使用。

*OSC1:振荡输出。

*OSC2:振荡输入。

*Vss:地。

*Vcc:电源。

2.复位电路

PIC58BS片内设有上电复位电路,上电后自动会产生复位,所以一般不需在MCLR-端加外部复位电路;只需将其接上Vcc即可。

·如需外部复位,可以采用图2的手动复位电路,其中R<40k。为防止电源电压波动影响程序正常运行,也可采用如图3所示的复位电路,当Vcc<O.3×(R1+R2)/R1时,电路复位。

图2
图2 🔍原图 (279×349)
图3
图3 🔍原图 (316×339)

3.振荡电路

振荡电路产生PIC58BS的系统时钟,各种定时应用皆有赖于系统时钟的精度,电路见图4。其中晶体频率为4MHz,C1=C2=20pF~200pF,电容值取大有利稳定振荡,但延长起振时间。

图4
图4 🔍原图 (415×232)

4.输入/输出(I/O)口P0~P7

PIC58BS的所有I/O口都可提供给用户独立使用。其结构相同,皆可用于输入/输出。所有I/O口驱动电流为20mA,吸收电流为25mA,但总驱动/吸收电流不能大于40mA/50mA。有关I/O口操作的语句有:置输入/输出态、输出高/低电平、输出触发脉冲、输入脉冲测量、输入/输出状态转置、按键响应、串行输入/输出、脉宽调制模拟电压输出、电位值读取(模拟电压输入)、音频输出等。有些语句在操作时,I/O口需外接一些元件,具体介绍如下:

(1)按键输入(BUTTON语句),如图5所示。

图5
图5 🔍原图 (832×326)

(2)脉宽调制模拟输出(PWM语句),图6所示电路可以构成一低速八位数模传感器。

图6
图6 🔍原图 (567×200)

(3)网络节点(SERIN、SEROUT语句),图7电路可用于多个PIC58BS之间的通信联络。

图7
图7 🔍原图 (429×167)

(4)标准总线RS—232串行输入(SERIN语句),图8电路中电阻起限流作用,电压被PIC58BS内部二极管箝位于-0.7V~+5.7V。

图8
图8 🔍原图 (490×141)

(5)音频输出(SOUND语句),图9所示电路利用电容器和扬声器相连,通过编程可以输出各种音频。当使用压电蜂鸣器时,可不接电容器。

图9
图9 🔍原图 (403×187)

(6)电位值读取(POT语句)。见图10,PIC58BS通过该电路可以测量5~50k的相位电位值,分辨率为8位。

图10
图10 🔍原图 (419×298)

5.低功耗模式

当执行NAP,SLEEP,END等指令时,器件进入睡眠状态,电源消耗大约为10μA。为减少电流损耗,在进入低功耗模式前,I/O端口最好置成输出态。

6.PIC58BS的使用

PIC58BS最基本的硬件连接如图11所示。其中,931C56为256字节串行EEPROM;RTCC、RA3和地线分别与PC机打印输出口的数据线D0、BUSY线和地线连接。系统上电后,可由PC机对其进行编程和调试。

图11
图11 🔍原图 (767×538)

三、BASIC单片机用户板——PIC58BS-CUM

为方便读者熟悉使用PIC58BS单片机,我们设计了BASIC单片机用户板——PIC58BS-CUM。该板电路如图12所示:

图12
图12 🔍原图 (814×1036)

它包括如下几部分:

*PIC58BS单片机,它是BASIC用户板的核心,其中固化有BASIC解释程序,它从EEPROM中读取用户用BASIC语句编写的源程序。

*93LC56,Microchip公司的串行电可擦除存储器,其总容量为256字节。

*4MHz晶体振荡器,为PIC58BS提供时钟。

+5V稳压电路,为系统提供稳定的5V电压。

*外部复位电路,它由三极管和电阻组成。当电源电压降到一定值时,产生复位信号。

*3芯插座,PC机编程连接插座。当用户需调试或修改程序时,通过此插座与PC机并行口相连。

*电池插座,用户可以直接连上6V~12V的电池。(随板提供一节9V的电池,使用时可插入用户板中)。

*5V电源插座。

*单排14芯接口插座。

*另外,用户板还留有一些空间,以便用户扩展电路。

电源的使用:用户可使用6~12V电池通过电池插座供电。也可使用3~5V的电池直接连在+5V的电源插座上。交流电经整流滤波后输出6~12V直流电压亦可连接到Vin端进行供电。用户板运行电流小于2mA;睡眠电流小于20μA(不包括外围扩展电路功耗)。一节9V的电池可连续使用数天,睡眠状态时可使用几十天。

总之,此用户板虽然很小,但给用户提供了一套完整的硬件系统,用户可以很方便的像使用芯片一样使用该用户板开发自己的智能电子产品。

四、BASIC单片机开发工具——PIC58BS—KIT

BASIC单片机开发系统由PIC58BS—CUM,PIC58BS单片机开发软件包(包含源程序编辑、编译软件、各种操作帮助信息),连接PC机打印口的信号电缆等构成。对PC机的要求很低,用户只要具备IBM PC/XT/286/386或其兼容机的最小配置(128K内存、一个软驱、一个并行口、MS.DOS2.0或以上版本操作系统)即可。

这样,用户只需连接好与PC机联络的电缆,接通BASIC单片机用户板电源,启动PC机上的BASIC单片机开发软件包(该软件包中文界面的帮助信息提供了开发工具的使用说明),即可按PIC58BS语言开发用户程序。(李中泽 陈伟)