×
嵌入式 > 技术百科 > 详情

PSD32xx单片机在税控器中的应用

发布时间:2023-10-11 发布时间:
|

摘要:μpsd32xx是一款集51内核与psd(可编程系统器件)与一身的soc单片机,具有许多功能部件,性价比高,广泛应用于税控收款机、税控器和微型打印机等税控设备中。文中介绍了μpsd32xx单片机的主要特性和开发环境,给出了应用该芯片实现税控器的软硬件设计方案。

1 引言

税控设备是国家税务部门实现税收管理信息化的必然手段之一,税控器作为税控设备之一,是在计算机等电子设备的配合下实现税控功能的电子装置,它可保证经营数据的正确生成、可靠存储和安全传输,能满足税务机关的管理和数据核查等要求。税控器通常与一台普通收款机(主机)相连,共同完成经营和税控的功能,连接关系见图1。

税控器是集软硬件于一体的嵌入式系统,为了更有效地使用单片机并提高开发的通用性,可采用平台思想和模块化设计,划分层次结构,以尽可能实现硬件的灵活性和软件的可移植性。2 μpsd32xx单片机简介

2.1 主要特性

μpsd32xx系列是st(意法半导体)公司推出的新型单片机,它采用增强型mcs-51内核,是mcu+psd的soc单片机,该器件具有如下特点:

●2片flash存储器,用于存储程序或数据,易于实现在应用编程(iap)功能。

●可选择备电保护的大容量sram。

●2种可编程逻辑电路,分别为地址译码dpld和组合逻辑cpld。

●6组通用i/o提供多达37或46个i/o引脚。●主从方式的i2c。

●低速模式的usb 1.1。

●2路串行通道uart。

●在系统编程的jtag口。 2.2 开发环境

系统软件可在keil公司的keil 51集成开发环境μvision2中进行设计、编译和仿真,并运用st公司的psdsoft express软件进行编程下载和内部配置。该软件可以对μpsd32xx系列单片机的片内flash、sram和pld进行配置,并将编译生成的程序代码文件(.hex)和配置文件融合生成.obj文件下载到单片机中。下载时还需使用flashlink编程电缆连接pc机的标准并口和单片机的jtag口。3 硬件设计方案

3.1 硬件需求

税控器应具备的基本功能如下:具有实时时钟和记录税控数据的大容量存储器;带有符合iso7816标准的ic卡读写器,支持税控卡、用户卡和税务管理卡;可通过usb或串口与主机通讯;具有在掉电后可保存存储器数据和时钟运行的备份电池;允许异常断电而不破坏任何有效数据。

3.2 硬件系统组成

税控器内部的硬件系统结构见图2。

(1) 主控模块mcu

主控模块mcu采用st公司的μpsd3234a单片机,它内部具有256kb的主flash、32kb的次flash和8kb sram,工作电压为5v,选用24mhz晶振。其中sram由片外的备用电池供电,可存放一些长期保存的数据,维持电流仅需1μa。

主控模块通过usb或uart与主机相连,通过i2c与rtc相连,通过i/o与icc及mem相连。

(2) 时钟模块rtc

时钟模块rtc采用st公司的m41t0m6,该芯片具有实时时钟/日历功能,可计时毫秒、秒、分钟、小时、星期、日、月、年、世纪。在系统掉电以后可由片外的备用电池供电,以保持片内时钟的继续运行。采用32.768khz晶振,工作电压5v,工作电流130~200μa,备用电池电压3v,维持电流仅需1ua。i2c的最大传输速率为400khz。

(3)存储器mem

存储器mem采用st公司的2mb串行flash芯片m25p16,共有32个扇区,每个扇区256页,每页256字节,页编程时间为1.4ms。m25p16采用spi总线接口,最大传输速率50mhz,低工作电压3.3v。为了实现5v-3.3v逻辑电平转换,可使用onsemi公司的三路非反相施密特触发器nl37wz17,它兼容5v和3v逻辑电平,输出驱动可达24ma。flash存储器主要用来存储发票数据和税控数据。

(4)ic卡模块icc

ic卡模块icc采用onsemi公司的ncn6004a。ncn6004a具有双路卡接口,符合iso 7816-3和emv标准。工作电压5v,电流150ma,内置dc/dc,能为每个卡提供65ma/5v电源,外部晶振14.28mhz,内置可编程的卡通信总线时钟。

mcu通过i/o线与ncn6004a进行串行通信。为了节省i/o资源,可选择复用连线方式,即两个卡共享一路通道,由选卡信号区分,分别实现税控卡和用户卡的访问功能。

(5)usb接口

mcu内部带有usb通讯控制器,为了滤波和esd保护,接口部分采用onsemi公司的stf202。stf202的工作电压为3.3v,din2脚内部带1.5kω上拉电阻。由于mcu仅支持低速usb设备,所以它的usb_d_必须要连接stf202的din2,通讯速率1.5mb/s。

(6) uart接口

uart转换芯片采用intersil公司的hin202,mcu内部具有2路uart,均可选用rs232通讯。hin202的工作电压为5v,具有2路收发驱动。

(7)电源模块pwr

系统的外部供电电源分为两路,一路用ac/dc适配器直接提供+5v;另一路由主机通过usb接口线输入(5v/500ma)。用户可任选一路直接提供给5v器件工作。

为了实现电保护功能,采用onsemi公司的升压芯片ncp1402sn50t1,其最低输入启动电压为0.8v,输出电压5v,输出电流200ma。当系统正常工作时,ncp1402sn50t1可为大电容充电,一旦断电,大电容仍可维持该芯片工作一段时间,此时可完成一些重要的任务,以避免异常断电产生错误。大电容采用了两个串联的3.3f/2.5v卷绕型电容,当充满时可维持供电30秒以上。

5v至3.3v电压转换器采用onsemi公司的ncp500sn33t1,该芯片输出电流为150ma,可为3.3v器件提供工作电压。

备用电池采用的是两节3v/210mah锂电池,供电至少可维持10年以上。

(8)监控模块mon

监控模块采用onsemi公司的max708,max708可实现上电复位和手动复位,还具有电压监控功能,设计时在其pfi端连接适当的分压电阻,这样当主电源掉电时,max708就可产生掉电中断信号,用以完成重要的任务或备份重要的数据。

max708工作电压5v,复位的门限值4.38v,复位时间200ms,低压监控输入门限值1.25v。 (9) 状态指示sic

状态指示采用发光二级管,分别用于指示电源接通、卡插入、jatg程序下载等状态。在mcu的i/o上还可连接出错、运行、自检测等状态指示。

4 实际应用电路

税控器中mcu与其它核心硬件的连接电路图如图3所示。图中给出了时钟、flash存储器和ic卡模块与mcu的连接方式。5 软件设计方案

税控器软件总体上包含两大部分:主机端软件和设备端软件。主机端与设备端之间采用“命令—应答”方式进行数据通讯。由主机端发送命令,设备端应答。

主机端软件可分为四层:应用层、税控函数层、通讯管理层和设备驱动层;设备端软件也可分为四层:主控层、税控函数层、设备管理层、硬件驱动层。以下主要介绍设备端软件架构。

5.1 主控层

主控函数负责系统和设备的初始化、与主机间的通讯监控、协议管理、税控命令包的解释和任务的调度等事务。

5.2 税控函数层

税控函数按照国标对税控器的要求设计,负责机器初始化和注册、分发发票、开发票、退票、废票、上传发票、日交易和卷汇总数据、申报、核查等事务。

5.3 设备管理层

设备管理层是针对复杂设备设计的管理程序,主要包括ic卡管理、存储器管理、usb通讯管理。

ic卡管理程序是按照gb18240.2-2003对税控ic卡的要求设计的操作命令程序,可分为基本命令和扩展命令。基本命令有文件操作、读写记录、产生随机数、内外部认证、取响应、应用锁定等;税控卡专用命令有卡注册、开票,日交易签名等功能;用户卡专用命令有注册签名、分发发票、报税数据汇总等功能。

存储器管理程序用来对flash存储空间进行地址分配管理。该程序按循环记录的方式设计,主要完成发票明细、日交易和卷汇总记录的格式化、读写、查找等事务。同时还负责存储在sram中地址分配表的管理,指针等数据的记录。

usb通讯管理程序是按照低速usb1.1规范以及人机接口设备(hid)类别的要求设计的,用来完成总线枚举和数据通信的事务。该程序主要采用endpoint 0(in/out)控制传输方式,并使用输入输出报表(report)格式来与主机交换数据。

5.4 硬件驱动层

硬件驱动层是使各个硬件设备实现底层操作的驱动程序,包括时钟、ic卡、flash mem、uart和usb等api库函数。其中时钟函数实现设置、读、写时钟和日历等功能。ic卡函数实现ic卡的插卡检测、卡上下电、卡复位和卡命令等功能。flash mem函数实现外部flash存储器的擦除、读、写等功能。uart和usb函数实现设置、接收和发送数据等功能。图36 结束语

文中介绍了税控器的设计原理,本设计方案已通过应用功能调试,能够满足产品的基本需求。需要说明的是,在实际产品中,可考虑采用模块化设计思想,也就是说硬件采用模块+底板架构,主处理及核心硬件都集中于模块上,电源与接插件等放置在底板上;软件底层对上层可封装成api函数的形式。这样便于满足不同层次的需求,细分税控产业的市场,有利于开发商和供应商的定位选择。通过多种开发与合作的途径,来达到降低成本,提高效率和节省时间的目的。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
NTMD6N03R2G的技术参数