当前位置:首页 > 汽车

【出口参数】CPU卡程序设计实例(七)数据发送及校验

1、终端向ESAM发送字节函数。

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

函数名称:EsamSendChar

函数功能:向Esam发送单字节

门户参数:cSendChar,要发送的字节

出口参数:无

说明:10位传输,第一个开始位(总是很低),第十个位是检查位。

最多三次,

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

void esamsendchar(unsigned char csendchar)

{

Unsigned int iTempTran、iErrCoun

Unsigned int iTemp=cSendChar

ITemp=iTemp1

ITemp=ITemp(~ bit 0);

cardworkflag=~(IC xor mxor)cardworkflag;

PORCHECKBIT(CSENDCHAR);

if(cardworkflag 0 x 80)itemp=itemp |位9;

else iTemp=iTemp(~ bit 9);

EsamSDAOutput

for(ierr coun=0;IErrCoun3IErrCoun)

{

for(iTempTran=0;ITempTran10ITempTran)

{

If(iTemp0x01)

{

EsamSDAOutputHigh

}

Else

{

EsamSDAOutputLow

}

ITemp=iTemp0x01

delay 1 etu();

}

EsamSDAInput

delay 05 xe tu();

//OK发送

If(EsamSDAInputCheck)

{

delay 1 etu();

delay 05 xe tu();

Goto EsamSendCharOk

}

//传输错误

Else

{

CardError=ErrorRWBIT | CardError

delay 1 etu();

EsamSDAOutput

delay 1 etu();

}

}

EsamSendCharOk:

}

2、终端向CPU卡发送字节函数。

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

函数名称:CardSendChar

函数功能:向CPU卡发送1字节

门户参数:cSendChar,要发送的字节

出口参数:无

说明:10位传输,第一个开始位(总是很低),第十个位是检查位。

最多三次,

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

void cardsendchar(unsigned char csendchar)

{

Unsigned int iTempTran、iErrCoun

Unsigned int iTemp=cSendChar

ITemp=iTemp1

ITemp=ITemp(~ bit 0);

//清除检查位并计算检查位

cardworkflag=~(IC xor mxor)cardworkflag;

PORCHECKBIT(CSENDCHAR);

if(cardworkflag 0 x 80)itemp=itemp |位9;

else iTemp=iTemp(~ bit 9);

//开始数据传输

CardSDAOutput

for(ierr coun=0;IErrCoun3IErrCoun)

{

//1字节传输,8位

for(iTempTran=0;ITempTran10ITempTran)

{

If(iTemp0x01)

{

CardSDAOutputHigh

}

Else

{

CardSDAOutputLow

}

ITemp=iTemp0x01

delay 1 etu();

}

CardSDAInput

delay 05 xe tu();

//OK发送

If(CardSDAInputCheck)

{

delay 1 etu();

delay 05 xe tu();

Goto SendCharOk

}

//传输错误

Else

{

CardError=ErrorRWBIT | CardError

delay 1 etu();

CardSDAOutput

delay 1 etu();

}

}

SendCharOk:

}

3、要发送的字节奇偶生成函数

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

函数名称:PorCheckBit

函数功能:计算要发送的字符的偶数确认

输入参数:cSendChar,要传输的文字

输出参数:无

说明:创建奇偶位

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

VOID PORCHECKBIT(UNSIGNED CHAR CSENDCHAR)

{

unsigned char sendcommandbufbit=csendchar;

Int itemp

for(itemp=0;Itemp8Itemp)

{

If(SendCommandBufBit0x01)

{

CardWorkFlag=CardWorkFlag0x80

}

sendcommandbufbit=sendcommandbufbit 0 x 01;

}

}

1.《【出口参数】CPU卡程序设计实例(七)数据发送及校验》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【出口参数】CPU卡程序设计实例(七)数据发送及校验》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/auto/2611909.html

上一篇

雅马哈ys150参数看这里!雅马哈2款新车发布!雅马哈中国新官上任,未来新车令人遐想

【出口参数】重磅!中国禁止出口技术最新目录来了,权威专家解读

【出口参数】重磅!中国禁止出口技术最新目录来了,权威专家解读

出口参数相关介绍,8月28日,商务部在科技部调整的同时公布了《中国禁止出口限制出口技术目录》。 此次调整有何意义?带来哪些管理新规?对科创企业影响几何?记者就此采访了长期跟踪研究技术贸易法规的中国对外经济贸易大学教授崔...

【出口参数】权威专家解读《中国禁止出口限制出口技术目录》的调整发布

【出口参数】权威专家解读《中国禁止出口限制出口技术目录》的调整发布

出口参数相关介绍,在维护国家安全的同时扩大对外技术交流。 ——权威专家解释《中国禁止出口限制出口技术目录》调整公布 8月28日,商务部在科技部调整的同时公布了《中国禁止出口限制出口技术目录》。 此次调整有何意义?带来哪...