FaPiaoUtils.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. package com.example;
  2. import android.os.Looper;
  3. import android.util.Log;
  4. import com.hboxs.base_library.constant.Name;
  5. import com.orhanobut.hawk.Hawk;
  6. import top.keepempty.sph.library.SerialPortConfig;
  7. import top.keepempty.sph.library.SerialPortHelper;
  8. /**
  9. * 发票工具类
  10. */
  11. public class FaPiaoUtils {
  12. private static final String TAG = "FaPiaoUtils";
  13. /**
  14. * 静态内部类控制单例
  15. */
  16. private static class FaPiaoHolder {
  17. final static FaPiaoUtils instance = new FaPiaoUtils();
  18. }
  19. /**
  20. * 获取单例
  21. *
  22. * @return
  23. */
  24. public static FaPiaoUtils getInstance() {
  25. return FaPiaoHolder.instance;
  26. }
  27. private SerialPortHelper serialPortHelper;
  28. public SerialPortHelper getSerialPortHelper() {
  29. return serialPortHelper;
  30. }
  31. public void initFaPiao() {
  32. if (Hawk.get(Name.RAYMEN_POS_PAY, false)) {
  33. /**
  34. * 串口参数
  35. */
  36. SerialPortConfig serialPortConfig = new SerialPortConfig();
  37. serialPortConfig.mode = 0;
  38. serialPortConfig.path = "/dev/" + Hawk.get(Name.OXSERIALPORT, "ttyS1"); //串口地址: /dev/ttyS1
  39. serialPortConfig.baudRate = 9600; //波特率: 9600
  40. serialPortConfig.dataBits = 7; //数据位: 7
  41. serialPortConfig.parity = 'E'; //校验位: even
  42. serialPortConfig.stopBits = 1; //停止位: 1
  43. if (Looper.myLooper() == null) {
  44. Looper.prepare();
  45. }
  46. // 初始化串口
  47. serialPortHelper = new SerialPortHelper(16);
  48. // 设置串口参数
  49. serialPortHelper.setConfigInfo(serialPortConfig);
  50. // 开启串口
  51. serialPortHelper.openDevice();
  52. Looper.loop();
  53. }
  54. if (Hawk.get("MDB_COIN", false)) {
  55. /**
  56. * 串口参数
  57. */
  58. boolean a=false;
  59. SerialPortConfig serialPortConfig = new SerialPortConfig();
  60. serialPortConfig.mode = 0;
  61. serialPortConfig.path = "/dev/" +"ttyS2";//串口地址:(品澳ttyS3com2冰淇淋ttyS2com2)
  62. serialPortConfig.baudRate = 9600; //波特率: 9600
  63. serialPortConfig.dataBits = 8; //数据位: 8
  64. serialPortConfig.parity = 'N'; //校验位: none
  65. serialPortConfig.stopBits = 1; //停止位: 1
  66. Log.d(TAG, "投币测试: 0");
  67. if (Looper.myLooper()==null){
  68. Log.d(TAG, "投币测试: 1");
  69. Looper.prepare();
  70. a=true;
  71. Log.d(TAG, "投币测试: 2");
  72. }
  73. // 初始化串口
  74. serialPortHelper = new SerialPortHelper(16);
  75. // 设置串口参数
  76. serialPortHelper.setConfigInfo(serialPortConfig);
  77. // 开启串口
  78. serialPortHelper.openDevice();
  79. if (a){
  80. Log.d(TAG, "投币测试: 3");
  81. Looper.loop();
  82. Log.d(TAG, "投币测试: 4");
  83. }
  84. Log.d(TAG, "投币测试: 5");
  85. }
  86. }
  87. }