一、功能简述
功能:
硬件对接,龙飞一体秤,支持秤一键设置。POS通过动态库读重,厂家提供读重协议,默认读重com3,波特率115200;POS支持驱动打印、端口打印,默认驱动打印;POS支持端口开钱箱,端口LPT1。
秤默认配置:
读重:端口com2、波特率115200、读重频率100ms
打印:端口LPT1
钱箱:端口LPT1
秤读重协议,POS对接通信协议,通过动态库接口获取重量数据并协议解析
一段完整的数据(大于等于 18 字节):
稳定位 | 重量 | 固定为 | 皮重 |
---|---|---|---|
稳定位 | 重量 | 固定为 | 皮重 |
status | net_weight[7] | FixSeparator | tare_weight[7] |
//status 的 bit0(第一位)表示是否稳定,如为 1 则表示稳定 | 净重<=-10.000 时, 小数点后取 3 位, 如 009.998, -010.124 当处于欠载状态时,net_weight中的数据为"┗━┛",返回值为-1 当处于过载状态时,net_weight中的数据为"┏━┓",返回值为-2 | //固定为"P" | "000.010" |
秤配置
打印配置
钱箱配置
应用场景:门店的龙飞C22一体机,查看设备铭牌注明的设备型号(ACS),POS安装后,可下载硬件模板【M_LINLUO_ACS】,同时读重、打印、钱箱会选择到默认配置
适配机型:龙飞C22一体机
二、流程图
三、代码结构
代码文件 | 实现的函数方法 | 方法作用 | |
---|---|---|---|
代码文件 | 实现的函数方法 | 方法作用 | |
weighthelper_longfly_win.h | 龙飞C22 Class |
1 plaintext | 秤动态库初始化 |
WeightInfo readData(); | 读重 | ||
bool setZero(); | 不支持清零,需要通过实体按钮操作 | ||
bool setTare(double tare); | 不支持设置皮重,需要通过实体按钮操作 | ||
bool setYTare(double tare); | 不支持清除皮重,需要通过实体按钮操作 | ||
bool openCashDrawer(); | 开钱箱,支持LPT口、COM口、驱动开钱箱 | ||
bool print(const char* text , double fontSizeMul); | 打印文本 | ||
bool printBmp(const char *file); | 打印图片 | ||
int getPrintType(){return PrintOnDriver;} | 返回打印类型(驱动打印) | ||
static WeightHard getDefaultSetting(); | 返回秤默认配置 |
四、接口
动态库接口 | 作用 |
---|---|
int send_zero(void) | 清零 |
int send_tare(char *buf) | 设置皮重 |
int clear_tare (char *buf) | 清除皮重 |
int read_standard(char *buf) | 读重 |
int OpenCashDrawerEx(void) | 开钱箱 |