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