15 changed files with 108 additions and 340 deletions
-
27usrc/public_service/ext_board_impl.cpp
-
41usrc/public_service/ext_board_impl.hpp
-
3usrc/public_service/public_service.hpp
-
29usrc/subboards/subboard20_plate_clamp_case/subboard20_plate_clamp_case.cpp
-
32usrc/subboards/subboard20_plate_clamp_case/subboard20_plate_clamp_case.hpp
-
29usrc/subboards/subboard30_shake_module/subboard30_shake_module.cpp
-
30usrc/subboards/subboard30_shake_module/subboard30_shake_module.hpp
-
33usrc/subboards/subboard60_inlet_and_outlet_module/subboard60_inlet_and_outlet_module.cpp
-
32usrc/subboards/subboard60_inlet_and_outlet_module/subboard60_inlet_and_outlet_module.hpp
-
34usrc/subboards/subboard70_incubation_turntable/subboard70_incubation_turntable.cpp
-
34usrc/subboards/subboard70_incubation_turntable/subboard70_incubation_turntable.hpp
-
29usrc/subboards/subboard80_cliptip/subboard80_cliptip.cpp
-
33usrc/subboards/subboard80_cliptip/subboard80_cliptip.hpp
-
29usrc/subboards/subboard90_optical_module/subboard90_optical_module.cpp
-
33usrc/subboards/subboard90_optical_module/subboard90_optical_module.hpp
@ -0,0 +1,27 @@ |
|||
#include "ext_board_impl.hpp"
|
|||
using namespace iflytop; |
|||
|
|||
ExtBoardImpl::ExtBoardImpl(/* args */) {} |
|||
ExtBoardImpl::~ExtBoardImpl() {} |
|||
|
|||
int32_t ExtBoardImpl::getmoduleId(int off) { return zdevice_id_mgr_get_device_id() + off; } |
|||
/***********************************************************************************************************************
|
|||
* PRI * |
|||
***********************************************************************************************************************/ |
|||
int32_t ExtBoardImpl::getid(int32_t *id) { |
|||
*id = getmoduleId(0); |
|||
return 0; |
|||
} |
|||
int32_t ExtBoardImpl::module_xxx_reg(int32_t param_id, bool read, int32_t &val) { return err::kmodule_not_find_reg; } |
|||
int32_t ExtBoardImpl::board_read_ext_io(int32_t ioindex, int32_t *val) { |
|||
if (ioindex < 0 || ioindex >= ZARRAY_SIZE(IO)) return err::kparam_out_of_range; |
|||
*val = IO[ioindex].getState(); |
|||
return 0; |
|||
} |
|||
int32_t ExtBoardImpl::board_write_ext_io(int32_t ioindex, int32_t val) { return 0; } |
|||
int32_t ExtBoardImpl::board_read_muti_io(int32_t *val) { |
|||
for (int i = 0; i < ZARRAY_SIZE(IO); i++) { |
|||
*val |= IO[i].getState() << i; |
|||
} |
|||
return 0; |
|||
} |
@ -0,0 +1,41 @@ |
|||
#include <stddef.h>
|
|||
#include <stdint.h>
|
|||
#include <stdio.h>
|
|||
|
|||
//
|
|||
#include "a8000_protocol\protocol.hpp"
|
|||
#include "configs/device_id_mgr.hpp"
|
|||
#include "instance_init.hpp"
|
|||
#include "sdk/chip/chip.hpp"
|
|||
#include "sdk/os/zos.hpp"
|
|||
//
|
|||
|
|||
namespace iflytop { |
|||
class ExtBoardImpl : public ZIBoard, public ZIModule { |
|||
ENABLE_MODULE(ExtBoardImpl, kboard, 1); |
|||
|
|||
protected: |
|||
/* data */ |
|||
ZGPIO IO[EXT_READ_IO_NUM]; |
|||
|
|||
public: |
|||
ExtBoardImpl(/* args */); |
|||
~ExtBoardImpl(); |
|||
|
|||
public: |
|||
/***********************************************************************************************************************
|
|||
* ZIModule * |
|||
***********************************************************************************************************************/ |
|||
virtual int32_t getid(int32_t *id); |
|||
virtual int32_t module_xxx_reg(int32_t param_id, bool read, int32_t &val); |
|||
/***********************************************************************************************************************
|
|||
* ZIBoard * |
|||
***********************************************************************************************************************/ |
|||
virtual int32_t board_read_ext_io(int32_t ioindex, int32_t *val); |
|||
virtual int32_t board_write_ext_io(int32_t ioindex, int32_t val); |
|||
virtual int32_t board_read_muti_io(int32_t *val); |
|||
|
|||
virtual int32_t getmoduleId(int off); |
|||
}; |
|||
|
|||
} // namespace iflytop
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue