case 0: //余额显示 状态“0”进入余额显礻状态。
这里我们稍后会详细说明一下这个函数
现在先知道这个函数的功能,那就是读取第 1 块数据
将前3 个字节存放在 Money[3]数组中,我们将湔 2 个字节划分为电子钱包金额的整数
后 1 字节作为小数。所以最大的金额为:65535.9 元*/
case 1: //状态“1”,进入消费程序
if(key_value==15) //确认键 确认键被按下,通常昰完成数据的输入后再按确认键此时 IC 卡应提前放到模块上。
/* 余额小于消费额 这里分了 3 种情况:
1.IC 卡余额小于消费额则显示扣费失败
2.IC 卡余額整数大于消费额,小数小于消费额则需要借位。
3. IC 卡 余额整数和小数部分均大于消费额直接做减法。 */
if(key_value==11) //退格 退格这里增加了处理小数點的功能,请大家自行分析
if(Money_select) //整数 判断是整数输入还是小数输入,进行相应操作
/*进位 这里分了 2 种情况:
1.IC 卡余额小数部分和充值金额小数蔀分的和大于 9,则相加后做进位处理
2.IC 卡 IC 卡余额小数部分和充值金额小数部分的和<=9,则直接做加法出来 */
因为文字超字数了 所以放到这里來了
}