0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PIC16C71单片机投币电路分析

电子工程师 2018-03-17 10:26 次阅读

传统的投币电话,都是以几对红外发射、接收对管作传感器,利用硬币遮光原理粗测币的直径。这种方法精度低,更无法识别相同直径但不同材质的伪币。

新一代投币电话,如英国的蓝宝石系列,能对硬币的材质、厚度、直径作精确的检测,所以精确性与可靠性都大大提高。这类新型投币电话中,需要一种微功耗、宽工作电压范围、能适应电话线路供电的高性能单片机作为智能化检测、控制的核心。美国MICROChip公司PIC16C71单片机能满足这方面要求,且价格低廉。

其核心PIC16C71是一种低成本、高性能,以CMOS工艺制造,带全静态片内RAM、2 KB片内ROM、4路8位片内A/D转换器的高性能单片机。在采用20 MHz时钟时,每个指令周期仅0.2μS。字长14位的精简指令集(RISC)共有35条高效指令,大多为单周期指令,执行比一般单片机快4倍以上。3~6 V的宽工作电压范围以及微功耗设计(3V、32 kHz时,工作电流仅15 μA,休眠维持电流小于lμA),使它特别适合于由电话线路供电的工作环境,不需要另配电源。此外,该机还具有防非法拷贝的程序保密位、防止受干扰后产生程序“脱轨”的“看门狗”(WDT)以及带负载能力很强的I/O接口,能直接驱动20~25 mA的负载,大大简化了系统结构,提高了可靠性。



AT24C01是一种新型、高性能的串行电可擦写只读存储器(E2 PROM),价格低廉。在本系统中,它用于存储投币电话所适用的币种、币值以及对应的材质、厚度、直径3个传感信号参数值,停电后信息能保存100年,擦写次数可达10万次,静态电流30 μA,容量为128字节,工作电压2.6~6 V。由于采用串行工作方式,数据传送只需两根I/O线,这对I/O线资源有限的单片机特别适合;另一个优势是能“在线”修改币种、币值以及3个传感器参数值,以适应不同的地区、国家及不同的钱币。虽然PIC16C71不具备I2C BUS,但和软件很容易模拟I2C BUS的读/写时序,以完成数据的串行传送。

二、电源

本系统的电源部分如图3—5所示。取自电话线上的电源经桥式整流、滤波后,由一个三端稳压器稳压成6.4 V,对5个5#可充电电池(每个1.2 V)进行浮充,并作为系统电源。平常系统由电话线路供电即可正常工作,当执行收币及剔除伪币的动作时,高灵敏电磁铁所需的较大电流(约15 mA)由可充电电池供应。另外该6.4 V电压再经一个精密基准电压源TL431稳压到5.12 V,作为A/D转换的参数电源vREF。PIC16C71的RA口引脚结构方式控制位设定为PCFGl-0,PCFGO -1。



取方式01,此时RAO、RA1、RA2引脚作模拟信号输入,RA3作为基准参数电压VREF的输入引脚。

四、硬币检测

对币厚度与直径的检测,现有的多种传感器都可供选择。主要应考虑以下几点:要体积小,价格低,能进行非接触式检测。我们采用电容与涡流传感器,对于币的合金含量,可通过检测其比重、电阻率、导磁率来间接测量。

以上三个传感器(材质、厚度、直径)来的信号经放大、鉴相、精密检波、滤波、温度补偿等处理后,形成0~5,12 V的直流电压信号,送入PIC16C71单片机的RAO、RA1、RA2三个引脚,以进行快速A/D转换。

当上电复位时,程序从OOOOH地址开始,执行一条跳转指令,转至O010H开始的主程序。先执行初始化,然后由SLEEP指令进入“睡眠”微功耗状态,以减少耗电。当硬币从投币口投入时,由于遮断高灵敏微型红外发射、接收对管之间的光通道,产生一个中断申请脉冲信号。其上升沿触发了单片机的RBO (INT)端,把单片机PIC16C71从“睡眠”中唤醒,进入地址为0004H的中断服务程序入口。再经该处的一条跳转指令,转到检测处理材质、厚度、直径三个传感器信号的程序模块中。材质、厚度、直径三个传感器在硬币滑道上是间隔顺序排列的。为了简化机械结构并提高检测的速度,可采用对滚动的硬币进行动态检测的方法。经实验测定,材质、厚度、直径三个传感器的信号电压,在硬币通过该传感器的滚动过程中与时间的关系都具有如下图所示的曲线形状。



当信号电压上升至某一门限电压Vo时,说明硬币已进入该传感器检测范围。这时把每次采集的数据与前次比较,取其大者按顺序存入片内RAM单元。当检测到信号,电压下降至某一门限电压V2时,说明硬币已滚离该传感器。这时程序转入对下一个传感器信号的检测。当三个传感器信号都检测完毕后,程序关闭A/D,转人数字滤波,以消除干扰毛刺脉冲的影响,得到该传感器信号的最大值Vl。接着进行温度补偿,以Vl值减去该传感器空载值V空,以消除温度影响。三个传感器信号都处理完毕后,程序进入识,别模块,快速扫描存于串行EPROM AT24C01中的各种币参数(包括材质、厚度、直径)。若所测的3个参数与预存的各种币的3个参数不符(超过其上、下限),则认为是伪币,PIC16C71的RB6引脚输出一信号,驱动高灵敏、低功耗快速电磁铁动作,把伪币推出滚道。

识别确认后的硬币,其币种与币值代码经奇偶处理后,由RB1引脚以串行方式传到费率管理上位机(例如80C31等)中,通信约定取异步方式,其数据结构如下图所示。对应每个硬币发一组数据,每组由3个数据字组成,其格式见下表。



币种币值代码表



每组数据发送完毕后,程序把RB1由输出方式转成输入方式,查询等待费率管理上位机的应答信号。上位机在接收到一组数据,经奇偶校验无误后,将在1ms之内把数据线拉低作应答信号。PIC16C71在收到应答信号后,即进入SLEEP“睡眠”状态,等待下次投币唤醒。如在1ms内没收到上位机应答信号,则PIC16C71将再重复送一组数据。如连续3次发送后均收不到应答信号,则程序转入故障报警。

当投入硬币达到规定值后,费率管理上位机经RB2发出一个信号,唤醒PIC16C71执行收币动作,然后PIC16C71又进入“睡眠”状态。

按照上述原理。下图给出主程序框图及动态检测程序框图。限于篇幅,程序清单略去。

本系统由于充分利用了高性能的PIC16C71单片机所提供的高速指令、快速AlD转换、微低功耗、宽工作电压、强带负载能力、抗干扰看门狗等性能与资源,使系统结构十分简洁,可靠性强,成本低,在实际应用中获得较满意的效果。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    5998

    文章

    43948

    浏览量

    620562
  • PIC16C71
    +关注

    关注

    0

    文章

    3

    浏览量

    7833
收藏 人收藏

    评论

    相关推荐

    PIC单片机C语言编程

    PIC单片机C语言编程用C 语言来开发单片机系统软件最大的好处是编写代码效率高、软件调试直观、维护升级方便、代码的重复利用率高、便于跨平台
    发表于 09-09 14:13

    PIC单片机C语言编程

    ,因此C语言编程在单片机系统设计中已得到越来越广泛的运用。针对PIC单片机的软件开发,同样可以用C语言实现。但在
    发表于 03-03 10:55

    PIC系列单片机应用设计与实例

    PIC16C71控制的不间断电源 6、用PIC单片机产生均匀分布的随机数 7、用PIC17C42实现4阶IIR数字滤波器 8、用PIC17C
    发表于 11-16 11:59

    单片机解密破解先进投币式自动洗衣机密码

    投币洗衣通常由洗衣投币系统两大部分组成,投币系统包含投币箱、
    发表于 09-10 15:42

    [16单片机C语言编程:基于PIC24].Programming.16-Bit.PIC.Microcontrollers.in.C

    [16单片机C语言编程:基于PIC24].Programming.16-Bit.PIC.Microcontrollers.in.C是英文版
    发表于 10-26 16:34

    PIC系列单片机应用设计与实例

    4.1 交流数字电压表4.2 电力周波表4.3 闪光报警器4.4 带有世界时时钟的宾馆移动式客房控制器4.5 用PIC16C71控制的不间断电源4.6 用PIC单片机产生均匀分布的随机数4.7 用
    发表于 01-15 12:52

    请教PIC16C71-04/P程序烧录出现的问题

    本人初接触PIC单片机,有一问题请教师傅。有一片PIC16C71-04/P(暂且定义为A芯片)里有程序,能正常读取,现把读出的数据烧录到另一片PIC16C71-04/P(定义为B),烧
    发表于 04-21 22:16

    PIC16f877单片机资料

    pic单片机的基本资料(引脚信息,内部电路pic单片机的使用教程,包含基础篇与提高篇pic
    发表于 10-14 08:49

    pic16c711中文资料 (带模数转换器的八位微控制器)

    这篇应用笔记供对模拟系统设计熟悉程度不尽相同的PIC16C71用户使用。因为PIC16C711是PIC16C71的增强芯片,所以这篇应用笔记也可作为使用PIC16C71的A/D部分的参
    发表于 09-26 18:12 649次下载

    PIC 8位单片机16C6×系列简介

    PIC 8位单片机16C6×系列简介    由于PIC系列单片机是靠发展多个系列产品型号来满足不同层次用户的需
    发表于 08-14 22:27 1294次阅读
    <b class='flag-5'>PIC</b> 8位<b class='flag-5'>单片机</b><b class='flag-5'>16</b>C6×系列简介

    PIC16C71组成的充电器电路

    PIC16C71组成的充电器电路PIC16C71组成的智能充电器如图所示,该电器采
    发表于 10-09 10:48 807次阅读
    用<b class='flag-5'>PIC16C71</b>组成的充电器<b class='flag-5'>电路</b>

    基于PIC16C71的数字水温配制阀的设计

    设计了一种基于PIC16C71单片机的数字水温配制阀。该配制阀采用NTC热敏电阻作温度传感器,与固定电阻组成简单分压电路作为水温测量电路,利用PIC
    发表于 03-21 10:42 54次下载

    基于PIC16C71单片机的数字水温配制阀设计

    上的模拟电压转换为数字量,PIC16C71单片机控制直流电机驱动混水阀调节冷热水的混合比例实现水温调节。给出了控制电路图,对水温测量电路的参数选择和测温精度作了详细讨论。实验和
    发表于 01-18 07:23 1215次阅读
    基于<b class='flag-5'>PIC16C71</b><b class='flag-5'>单片机</b>的数字水温配制阀设计

    PIC单片机编程器2,PIC programmer

    PIC单片机编程器2,PIC programmer 关键字:PIC单片机编程器,编程器
    的头像 发表于 09-20 18:44 1090次阅读

    PIC单片机PIC16F15323)的环境搭建

    PIC单片机PIC16F15323)的环境搭建
    发表于 11-16 12:51 12次下载
    <b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>(<b class='flag-5'>PIC16</b>F15323)的环境搭建