1150|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

CPU卡程序终端向ESAM发送数据 [复制链接]

终端向ESAM发送一个字节函数


/**************************************


函数名称:EsamSendChar


函数功能:向Esam发送一个字节


入口参数:cSendChar,要发送的字节


出口参数:无


描述:发送10位,第一位起始位(始终为低),第10位是校验位,


最多发3次,


***************************************/


void EsamSendChar(unsigned char cSendChar)


{


unsigned int iTempTran,iErrCoun;


unsigned int iTemp=cSendChar;


iTemp=iTemp<<1;


iTemp=iTemp&(~BIT0);


CardWorkFlag=~(ICXOR+MXOR)&CardWorkFlag;


PorCheckBit(cSendChar);


if(CardWorkFlag&0x80) iTemp=iTemp|BIT9;


else iTemp=iTemp&(~BIT9);


EsamSDAOutput;


for(iErrCoun=0;iErrCoun<3;iErrCoun++)


{


for(iTempTran=0;iTempTran<10;iTempTran++)


{


if(iTemp&0x01)


{


EsamSDAOutputHigh;


}


else


{


EsamSDAOutputLow;


}


iTemp=iTemp>>0x01;


Delay1ETU();


}


EsamSDAInput;


Delay05XETU();


//发送OK


if(EsamSDAInputCheck)


{


Delay1ETU();


Delay05XETU();


goto EsamSendCharOk;


}


//发送错误


else


{


CardError=ErrorRWBIT|CardError;


Delay1ETU();


EsamSDAOutput;


Delay1ETU();


}


}


EsamSendCharOk:;


}

 
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表