您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

用PIC单片机实现的IC卡读写器

时间:2007-1-20栏目:电子通信论文

  
  tedCircuitCard)的简称,有些国家和地址称其为智能卡(SmartCard)、芯片卡(ChipCard)。国际标准化组织(ISO)在ISO7816标准中规定,IC卡是指在由聚氯乙烯(PVC)或聚氯乙烯酸脂(PVCA)材料制成的塑料卡内嵌入式处理器和存储器等IC芯片的数据卡。近年来,由于导半体技术的进步,集成化程度和存储器容量有了很大提高,并使CPU和存储器集成在一个芯片上,从而提高了数据的安全性。
  
  在本设计中,IC卡采用的是AT45DB041B-SC芯片,该芯片的特点如一下:
  
  *单一的2.7V~3.6V电源;
  
  *串行接口结构;
  
  *页面编程操作,单一的循环重复编程(擦除和编程,2048页(每页264字节)主存;
  
  *两个264字节的SRAM数据缓存,允许在重编程非易失性存储器时接收数据;
  
  *内置的编程和控制定时器;
  
  *低功耗,4mA有源读取电流,2μACMOS备用电流;
  
  *15MHz的最大时钟频率;
  
  *串行外围接口方式(SPI)——模式0和3;
  
  *CMOS的TTL兼容的输入和输出;
  
  *5.0V可承受的输入,SI、SCK、CS(低电平有效)、RESET(低电平有效)。
  
  在本设计的调试过程中,曾测试过IC卡的输入输出电平,结果证明这种IC卡的输入电平与TTL兼容,而输出电平与TTL不兼容。
  
  4IC卡的电源提供电路
  
  在本设计中,由于IC卡的电源电压范围为+2.7~+3.6V,而PIC单片机需要的电源为+5V,而且稳压源提供的电压也是+5V,因此,要设计一个稳压模块,给IC卡提供+3V左右的电压。设计电路如图3所示。
  
  该电路的主要元件为LM317芯片,它是三端可调集成稳压器,输出电压为1.25~37V范围内可调。当其Vin端的输入电压在2~40V范围内变化时,电路均能正常工作,输出端Vout和调整端ADJ间的电压等于基准电压1.25V。该芯片内的基电路的工作电流IREF很小,约为50μA,由一个恒流性很好的恒流源提供,所以它的大小不受供电电压的影响,非常稳定。在图3中,B点为电压输出端,为IC卡提供电压。A点为控制端,与单片机的一个端口引脚相连,当该引脚为低电平时,三极管Q1不工作,B点输出电压约为3.15V;当该引脚为高电平时,三极管Q1工作,B点输出电压约为1.25V。在程序中查询IC卡插座中是否有IC卡,当有IC卡时,将A点所连的单片机引脚设置为低电平,从而为IC卡提供电源;当没有IC卡或对IC卡的操作结束时,将A点连的单片机引脚设置为高电平,从而不给IC卡提供电源。
  
  IC卡的上电和下电程序如下。
  
  IC卡上电子程序IC卡下电子程序
  
  POWERONPOWEROOF
  
  BSFSTATUS,RP0BSFSTATUS,RP0
  
  BCFTRISE,0BCFTRISE,0
  
  BCFRTISE,1BCFTRISE,1
  
  BCFSTATUS,RP0BCFSTATUS,RP0
  
  BCFPORTE,0BSFPORTE,0
  
  BCFPORTE,1BSFPORTE,1
  
  CALLDLYTIMCALLDLYTIM
  
  RETURNRETURN
  
  在本设计中,单片机与IC卡通信的主程序流程图如图4所示。
  
  5与PC机的通信
  
  在本设计中,有PIC单片机与PC机串行通信的功能。由于本设计所用的单片机PIC16F877有USART方式,该方式可将C口的RC5和RC7设置成异步串行通信模式,因而在本设计中,与PC机的通信模块电路就比较简单。将单片机C口的RC6和RC7设置为异步串行通信模式,经过MAX232A芯片进行电平转换后,将TTL电平转换为RS232电平,再与DB9接口相连,即可实现通信。在PC机端,可以用VC等编程工具根据通信协议编写软件来控制对IC卡的读写操作。
  
  

上一页  [1] [2] [3] [4] 下一页

下页更精彩:1 2 3 4 下一页

★相关文章: