用MC68HC05PD6设计低成本寻呼机

用mc68hc05pd6设计低成本寻呼机 low cost pager's solution with mc68hc05pd6
摘要:motorola公司在单片机mc68hc05pd6内部集成了pocsag协议寻呼解码器和144段lcd驱动器,特别适合于设计数字寻呼机。由于该芯片内集成了非常丰富的资源,因此,如果用来设计中文寻呼信息机,也能获得很高的性能价格比。针对该芯片的基本特性,本文介绍了用mc68hc05pd6设计寻呼机的电路构成和一些实际经验。
关键词:无线寻呼; motorla单片机; pocsag编码; mc68hc05 pd6
随着公众寻呼网的飞速发展,寻呼接收机的设计制造技术日臻完善,特别是集成电路技术的进步,使寻呼机不断朝着多功能、高性能和低成本等方向发展。以基带信号处理的控制部分为例,过去,寻呼机最少需要1片基带信号解码器、1片mcu(micro-controller unit,单片机)和1片lcd(liquid crystal display,液晶显示器)驱动芯片,即“3片机”方案;现在许多mcu能够把lcd驱动器集成进去。如mc68hc05l16、ks88c2148等可构成“2片机”方案。而motorola公司在mc68hc05pd6(以下简称pd6)内部集成了pocsag协议寻呼解码器(p-decoder)和144段lcd驱动器,即把三者都集成在一片芯片中,从而提供了数字显示型寻呼接收机的一种最简单的解决方案。
1. 基本特点
pd6内含工业标准m68hc05的8位cpu内核,是hcmos单片机mc68hc05家族成员之一。其指令系统与m68hc05兼容。
pd6采取多种手段以降低芯片功耗,它可在低至3v电压下工作,具有运行、等待、休眠等3种工作模式。双振荡器支持4mhz/76.8khz频率。程序运行时可选择4mhz振荡源以获得1mhz高速内部操作时钟,而在休眠状态时,关闭4mhz振荡器,停止mcu内部进程(包括定时器)以降低电耗。76.8khz振荡器永不停止,它给解码器提供工作时钟,使解码器在mcu休眠时仍能工作。pd6运行时供电电流为2.5ma,休眠时仅250μa。
片内带有可供使用的16kbyte用户rom,这使得设计的寻呼机功能更多,也不用担心程序空间不够,即使存储多首音乐数据也不会捉襟见肘。可提供otp(one-time programmable,可一次编程)、eprom、掩膜等多种rom的版本。便于开发和批量生产。
片内有512byte可用ram(其中64byte用于堆栈),在满足用户程序运行之余,还有足够的空间存储寻呼消息,可以存储20条数字寻呼消息而不用外扩ram。
该芯片内有8个8位i/o口pa~ph,包括48根双向i/o线,16根单向输出线。所有i/o的访问均采用片内ram映射方式(映射到片内64byte ram),i/o功能可灵活设置。芯片的引脚可作为内部特定资源的i/o,也可当作通用i/o线使用。例如:pd~ph等5个8位i/o口既可设置成lcd驱动器输出以满足数字显示型寻呼机的需要;也能设置成24根双向i/o线加上16根单向输出线使用,以便于设计汉字显示型寻呼机。所有i/o线的最大高电平输出能力均为0.4ma,pa~pc最大低电平输出能力为0.8ma,pd~ph为5.0ma。
pd6内部有1个14位加法计数/分频器、1个具有输入捕捉和输出比较功能的16位定时器、1个8位外部事件计数/定时器,以及用“看门狗”定时器和14位加法计数/分频器构成时基电路,它们由振荡源128分频后驱动,可提供lcd时钟、上电复位时钟和“看门狗”时钟。“看门狗”定时器用于监视cpu运行是否正常,程序跑飞或锁死时能自动复位mcu。外,mcu在reset引脚输入低电平时,在初始化上电、发生非法地址访问等情况下也能可靠复位。
具有独立的24小时制实时时钟,由76.8khz振荡器分频后计数。休眠状态实时时钟不停止,因而能方便地实现24/12小时制时间显示。
芯片具有独立的144段lcd驱动器,支持(3或4线背板电极)×(1~36线前板电极)。除了能满足12个8段数字显示外,剩余48段还可驱动多个小数字或形象化操作图标,美化显示界面。各lcd段映射在内部ram区内,具有自动扫描输出,无需复杂时序操作。lcd时钟由时基电路产生,如果时基电路的时钟来自76.8khz低频振荡器,在休眠状态也能正常显示。复位时lcd驱动器各引脚输出高电平,令lcd无显示,避免开机时屏幕杂乱无章。
内含独立的寻呼解码器。完全兼容ccir第1号寻呼协议(pocsag协议)。该解码器与cpu接口通过功能寄存器实现,从而使数据传送更快捷。解码器可接收只鸣型、数字型、字符型等格式消息数据。支持512bps、1200bps、2400bps等速率;可用软件控制适配基带信号极性并可提供多达6个用户地址;有自动节电控制和运行功能,支持宽带锁相环控制;能纠正地址码字或消息码字的2位错误。
中断源包括不可屏蔽软件中断、解码器中断、外部中断、按键唤醒中断、定时器中断、串行通信口中断和实时时钟中断等。复位、解码器中断、外部中断、按键唤醒中断和实时时钟中断都能轻松唤醒休眠模式。
采用80引脚四方形扁平(qfp)封装,其引脚距离为0.65mm或0.50mm 2种规格,体积小巧。
2. 寻呼接收机的电路构成
2.1 数字显示型寻呼机
图1是典型的数字显示型寻呼接收机的电路构成图。
图中pd6与宽带处理电路的接口线包括din、bs1~bs3等4根。它们连通着u2内部解码器,控制时序由解码器自动产生,不需程序操作。din是前级基带信号输出,bs1~bs3分别对应射频电路开关、射频电路电容放电、锁相环电路开关等控制。设计扫频式寻呼接收机时,宽带电路应有锁相控制。也就是说mcu应有与宽带电路的锁相接口,图1电路中pa口的pa4~pa7是空闲的,可以连至射频电路充当此任。
寻呼机在电池电压不足或电池临时取出时应具有检测与显示功能。图1中bl是宽带处理电路输出的电池电压不足信号,当电池电压不足时,bl输出一低电平,使得连接于u2的45脚irq2产生外部中断,及时通知mcu。若前端输出的bl信号为高电平有效时(譬如ta31142宽带接收器等),则应将该信号反相。在用户更换寻呼机电池时,mcu应关闭寻呼机所有功能模块以减小电耗,从而使c3中储存的电能可保持ram中的寻呼信息在更换电池期间丢失。图中d2、c5、r4等元件起检测是否有电池的作用。u1及其外围元件构成dc-dc变换电路,将1.5v电池电压变换至3.0v以供给寻呼机主电源。若寻呼用户取出电池时,c1中储能很快消耗掉,使得d2的阳极电压为零,这样,u2的46脚被r4拉至低电平,令irq1引脚产生mcu外部中断而达到通知mcu的目的。当电池装上时,u1正常工作,并在2脚产生约3.5v脉冲电压,d2为一肖特基二极管,它的工作原理和d1一样,任务是将此高电压脉冲调整到3v,经c5平滑后将u2的45脚升至高电平,使irq1无效。电池取出期间,irq1引脚总是低电平,因此irq1产生中断后,程序应关闭这一中断源,以免它重新唤醒mcu的休眠。
evo是pd6的8位定时/计数器(定时器2)的输出端,它将系统时钟分频后在44脚输出,改变定时器2的分频系数,能使其输出频率适配蜂鸣器b1的谐振频率。当然也可以将此引脚当作普通i/o线使用,程序控制输出高、低电平。在t1截止瞬间,b1中电流不能突变,它将在t1集电极产生一很高的负电压尖峰,图中并联在b1两端的二极管d3是一肖特基二极管,起阻尼作用,能将这一负电压尖峰箝位在0.3~0.5v左右。但d3的接入将使b1通电时间延长,若要使b1得到对称波形的电流,t1基极的脉冲占空比最好降至30%。
pd6的输出低电平电流最大为0.8ma(输出0.4v时测量),要使它驱动三极管t1~t3工作于开关状态,那么,t1~t3的β值、集电极最大容许电流icm均应足够大,并且饱和压降较低。一般地,它们的β值应达到200~500,集电极最大容许电流icm应在300ma左右。图1中电路只能保证电池电压为1.2v时t1~t3可靠驱动80ma负载,若某些负载元件(譬如b1)的瞬态电流超过这一数值,建议再加一级电流放大。图2给出改进后的蜂鸣器驱动电路。
d1、d2和d3均建议使用肖特基二极管,因为这种类型的二极管的导通压降较低,如果用in4148之类的pn结开关二极管虽能正常工作,但会带来更大的损耗,特别是d1。
u3用来记录寻呼机用户的标识码(包括6个地址)。除了图中93lc46外,还可以选择诸如24lc01等通用的eeprom。它们的连线及程序根据具体情况来考虑。其它的文献介绍得较多,这里不再赘述。
pd6的lcd驱动器输出的背极与前极之间交变电压峰峰值为2vdd,在3v电压供电时,能产生6v的交变输出,应据此来选择合适的lcd。第10脚外接一个约100kω的电阻到地可以调整lcd的对比度。具体参数应通过实验来确定。
2.2 中文信息寻呼机
中文机需要内置一寻址空间达256kbyte的16×16点阵国标汉字显示字库(存储在rom中)。为保存更多的信息,通常还需扩充容量为8k~32kbyte的ram。通常8位mcu的寻址空间最多能达到64kbyte,pd6也不例外。所以,对字库的点阵数据的读取要通过i/o线完成寻址操作。另外,汉字是以图形方式显示的,以显示2行共14个汉字为例,需要驱动14×16×16=3584点象素,除专用于lcd驱动的mcu外,大多数mcu都具备这样的驱动能力。因此,目前生产的中文机无一例外地采用专门的图形lcd模块。
pd6虽是针对数字寻呼机而设计的,然而用来设计中文寻呼机也能获得良好的性能价格比。用于中文机时,pd6内部lcd驱动器发挥不了作用。这样pd6的pd~ph等5个8位i/o口共40根i/o线可全部空出来作为普通i/o使用。把lcd显示模块、字库rom、扩充ram等的地址线和数据线分别连在一起,通过片选信号选择不同的数据传送对象,这样可以大大减少i/o操作线的数目。这些操作最多只需20~24根i/o线,pd6的资源完全能满足要求,并能空出最少20根线。另外,pd6内部集成了解码器,价格与其它的不含该单元的mcu差不多,故而性能价格比很高。另外,pd~ph口驱动能力为5.0ma,比其它的i/o口(0.8ma)大得多,t1~t3改用这些i/o线驱动时,驱动能力更强。这样就用不着类似图2中的电流放大电路了。
中文机往往需要更多的操作按键,图1中用了3个键,kwi口还有5根输入线空闲,能轻松扩充多个按键输入。
解码器可支持6个用户地址,每个地址信息有2位功能位区别。当解码器接收到寻呼消息后,能给出所对应地址的功能位。于是,可以利用这些功能位提供多达4×6=24个消息箱。并且最少可提供20个公用消息信箱,大大增强了寻呼机的信息功能。解码器与cpu接口非常简单,这是一个得天独厚的条件,可以利用这些功能位扩充用户地址,使pocsag协议寻呼系统的用户地址数达到800万,便于构成全国网。
3. 程序设计注意事项
由于pd6内部i/o映射ram为双映射方式,加上mcu内部功能较多,而且控制寄存器相互之间存在关联,因此,这些映射ram的访问比较繁琐,故要谨慎细致。
3.1 时基电路的时钟源
时基电路的输出提供给lcd和“看门狗”等电路使用,它的时钟源可选取高频时钟,也可选取低频时钟。但应注意,高频振荡器在mcu休眠状态时被关闭,选择这一时钟源将使lcd在休眠期间无显示,这不符合数字寻呼机的习惯。如选择低频时钟源,“看门狗”定时器在休眠期间仍然在计数,从而频繁产生系统中断复位mcu,这又是我们所不希望的。故而,要使用“看门狗”功能,则应在进入休眠之前用程序控制关闭“看门狗”定时器。
3.2 解码器响应
解码器接收到信息后,只有5位地址寄存器和20位消息寄存器作缓冲。换句话说,它只能保存一个码字的信息。如果接收到解码器的中断信号不作及时响应的话,很容易丢失消息。特别是当mcu在休眠状态时,高频时钟振荡源已关闭,系统时钟只能用19.2khz的低频时钟,解码器中断唤醒休眠后,应首先取空接收信息寄存器rair、rmirx的内容,再启动高频振荡器。由于高频振荡器有一个起振和稳定的过程,通常这一时间约在数毫秒至数十毫秒之间。在它稳定之前,切不可将主时钟切换到这一时钟源上,否则可能失步而丢掉寻呼信息。
3.3 群呼消息的静音
通常每个寻呼接收只有1个私人消息地址,解码器的其它地址常作群呼公众信息地址。如果接收群呼消息(如天气预报)时,寻呼机频繁告警常令用户头痛,中文机尤其如此。因此,设计可以考虑提供用户操作接口,设置是否需要群呼消息告警。解码器能返回所接收消息的匹配地址和消息内容,设计消息存储数据结构时应注意到这一点。
4. 结束语
pocsag协议码字采用bch编码,这种编码除能纠正2位随机错外,还能纠正4位突发错。但是,motorola发布的pd6手册中还没有提及解码器对突发错的纠正能力,也没有提及倍频采样、数字滤波的措施。幸好我国pocsag寻呼网大多数使用150mhz频段,对突发错不太敏感。我们当然不能要求pd6的解码器的性能超过昂贵的专用寻呼解码器。如果宽带电路的灵敏度提高2~3db,再配合pd6作基带处理,性能会更好些。
motorola公司作为当今世界上最大的单片机制造商和寻呼系统制造商之一,在这两方面都有先进的技术。因而pd6与其它公司同期推出的类似芯片相比,具有灵敏度高、耗电省、性能稳定、编程简单等诸多优点,无论用于构成数字显示型还是中文显示型pocsag寻呼机均能获得良好的性能价格比,其应用前景非常广阔。件和升压电感l1、pfc功率开关q1、升压二极管d1等组成平均电流型连续传导模式(ccm)pfc预变换器。r1为电流检测电阻,ucc38500的18脚用于检测ac输入电流,在19脚通过iac流入外部的单极点滤波器产生一个ac输入电压前馈信号vff。有源pfc升压变换器dc输出电压(385v)被u1的3脚检测,通过调节12脚(gt1)输出驱动pwm占空比,可保证pfc变换器dc输出电压的恒定。u1脚4通过检测pfc变换器dc输出电压和第二级输出驱动器电压来实现过电压保护功能。u1脚14为pfc峰值电流输入,用来完成pfc峰值电流的限制功能。
r3与c10为u1的vcc启动元件。只要pfc变换器开始工作,由l1的副绕组、d6与d7、c12与c20及r10等组成的泵电源即可为vcc脚提供工作电压和电流。
u1的脚10(gt2)输出的占空比被限制在50%以下,该脚输出pwm脉冲通过变压器t2耦合后用来驱动q3、q4开关。pfc变换器跟随的第二极dc-dc正向变换器通过t1进行隔离。次边dc输出电压经r28、r29和r30分压采样后输入到u2的脚7。经过u2内部的误差放大器后由脚3输出驱动信号,再经u3隔离放大,馈送到u1的脚7。通过调节u1输出的pwm占空比,可使smps的dc输出电压保持稳定。
q4源极串联电阻r25为电流检测元件,u1在接收到r25上的检测信号后,可实现第二级dc-dc变换器的峰值电流控制功能。

MAXREFDES74的双极性解决方法
5G通信基站防雷接地综合解决方案
扬尘在线监控系统助力大气污染把控
魅蓝5s引领千元快充 用户口碑爆棚
光耦固态继电器在军工行业的全面应用分析
用MC68HC05PD6设计低成本寻呼机
一文读懂TensorFlow(工作原理以及如何使用)
硒鼓的选择
LM4766+NE5532装2X40W功放,lm4766 power amplifier
不可克隆的 PUF 功能可以提高 MCU 的安全性
英飞凌推出适用于新一代安全IC的90纳米SOLID FLAS
RSAC2023解读第6期 | 安全运营的困境和破局之道
最新数据:1月国内手机出货量同比下降38.9%
常用电容器
PCB设计和搞硬件的不得不说的故事
VR领域的成功不是那么容易的,这几点或许很有用
爱立信6G技术专家于全球6G发展大会发表主题演讲
新唐科技N538T340主板介绍
特斯拉还能够准确预测前车追尾事故提前发警报
亚洲将成为世界上最大的工业机器人市场