Browse Source

update

master
zhaohe 2 years ago
parent
commit
b5eed12e1e
  1. 10
      testtools/config.js
  2. 28
      usrc/one_dimensional_code_laser_scanner.cpp
  3. 1
      usrc/one_dimensional_code_laser_scanner.hpp

10
testtools/config.js

@ -12,26 +12,28 @@ const config = {
推杆电机_零点: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10101,"ctrlPointVal":0}}`,
推杆电机_推出位置: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10101,"ctrlPointVal":719133}}`,
推杆电机_扫码完成位置: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10101,"ctrlPointVal":256333}}`,
//
推杆电机_扫码速度: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10122,"ctrlPointVal":100000}}`,
推杆电机_最快速度: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10122,"ctrlPointVal":1000000}}`,
推杆电机_读取当前位置: `{"protocol":"icpsv1","message":{"type":"read","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10113,"ctrlPointVal":0}}`,
推杆电机_清空异常: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10109,"ctrlPointVal":0}}`,
推杆电机_停止: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10108,"ctrlPointVal":0}}`,
//
板夹开始扫码: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":30000,"ctrlPointVal":1}}`,
板夹停止扫码: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":30000,"ctrlPointVal":0}}`,
//
平移电机_正转二十分之一圈: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10002,"ctrlPointVal":2000}}`,
平移电机_反转二十分之一圈: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10002,"ctrlPointVal":-2000}}`,
平移电机_正转一圈: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10002,"ctrlPointVal":200000}}`,
平移电机_反转一圈: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10002,"ctrlPointVal":-200000}}`,
平移电机_归零: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10003,"ctrlPointVal":1000}}`,
平移电机_位置1: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10001,"ctrlPointVal":207531}}`,
平移电机_位置2: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10001,"ctrlPointVal":207531}}`,
平移电机_位置2: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10001,"ctrlPointVal":225531}}`,
平移电机_读取当前位置: `{"protocol":"icpsv1","message":{"type":"read","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10013,"ctrlPointVal":0}}`,
平移电机_清空异常: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10009,"ctrlPointVal":0}}`,
平移电机_停止: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":10008,"ctrlPointVal":0}}`,
开始读卡: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":20000,"ctrlPointVal":1}}`,
连续读卡: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":20000,"ctrlPointVal":2}}`,
停止读卡: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":20000,"ctrlPointVal":0}}`,
开始扫码: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":30000,"ctrlPointVal":1}}`,
停止扫码: `{"protocol":"icpsv1","message":{"type":"write","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":30000,"ctrlPointVal":0}}`,
读取扫码结果: `{"protocol":"icpsv1","message":{"type":"read","targetId":133,"sourceId":1,"seq":0,"ctrlPointAddr":30007,"ctrlPointVal":0}}`,
};

28
usrc/one_dimensional_code_laser_scanner.cpp

@ -15,29 +15,31 @@ bool m_idleLevel = true;
void OneDimensionalCodeLaserScanner::initialize(IflytopCanProtocolStackProcesser* protocolProcesser, int32_t regStartOff, Pin_t triggerPin,
PosReadder_t readder) {
m_protocolProcesser = protocolProcesser;
m_regStartOff = regStartOff;
m_protocolProcesser->activeReg(REG_CODE_SCANER_ACT_CTRL, icps::kw, 0);
m_protocolProcesser->activeReg(REG_CODE_SCANER_ACT_CLEAR_EXCEPTION, icps::kw, 0);
m_protocolProcesser->activeReg(REG_CODE_SCANER_STAT_STATUS, icps::kr, 0);
m_protocolProcesser->activeReg(REG_CODE_SCANER_STAT_EXCEPTION, icps::kr, 0);
m_protocolProcesser->activeReg(REG_CODE_SCANER_CODE, icps::kr, 0);
m_protocolProcesser->activeReg(m_regStartOff + REG_CODE_SCANER_ACT_CTRL, icps::kw, 0);
m_protocolProcesser->activeReg(m_regStartOff + REG_CODE_SCANER_ACT_CLEAR_EXCEPTION, icps::kw, 0);
m_protocolProcesser->activeReg(m_regStartOff + REG_CODE_SCANER_STAT_STATUS, icps::kr, 0);
m_protocolProcesser->activeReg(m_regStartOff + REG_CODE_SCANER_STAT_EXCEPTION, icps::kr, 0);
m_protocolProcesser->activeReg(m_regStartOff + REG_CODE_SCANER_CODE, icps::kr, 0);
m_triggerGpio.initAsInput(triggerPin, ZGPIO::kMode_nopull, ZGPIO::kIRQ_risingAndFallingIrq, false /*mirror*/);
m_triggerGpio.regListener([this](ZGPIO* GPIO_Pin, ZGPIO::IrqTypeEvent_t irqevent) { onGpioIrq(GPIO_Pin, irqevent); });
m_protocolProcesser->registerListener(this);
m_readder = readder;
}
bool OneDimensionalCodeLaserScanner::isThisRegOwnToMe(IflytopCanProtocolStackProcesser* processer, icps::Reg_t* reg) { //
switch (reg->add) {
case REG_CODE_SCANER_ACT_CTRL:
case REG_CODE_SCANER_ACT_CLEAR_EXCEPTION:
return true;
default:
break;
int32_t regoff = reg->add - m_regStartOff;
if (regoff >= 0 && regoff < REG_CODE_SCANER_SIZE) {
return true;
}
return false;
}
icps::error_t OneDimensionalCodeLaserScanner::onHostRegisterWriteEvent(IflytopCanProtocolStackProcesser* processer, IflytopCanProtocolStackWriteEvent* writeEvent) {
switch (writeEvent->reg->add) {
icps::error_t OneDimensionalCodeLaserScanner::onHostRegisterWriteEvent(IflytopCanProtocolStackProcesser* processer,
IflytopCanProtocolStackWriteEvent* writeEvent) {
int32_t regoff = writeEvent->reg->add - m_regStartOff;
switch (regoff) {
case REG_CODE_SCANER_ACT_CTRL:
if (writeEvent->newvalue == 1) {
startScan();

1
usrc/one_dimensional_code_laser_scanner.hpp

@ -28,6 +28,7 @@ class OneDimensionalCodeLaserScanner : public IflytopCanProtocolStackProcesserLi
private:
IflytopCanProtocolStackProcesser* m_protocolProcesser;
int m_regStartOff = 0;
PosReadder_t m_readder;
ZGPIO m_triggerGpio;

Loading…
Cancel
Save