X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fatten-pps3xxx%2Fprotocol.c;h=06a1d2e90d93546af3602e41ac399c04a9816d63;hb=88a0265ebcb265ba839c02cc5bcd39e359c9f60f;hp=95137d2e9a8164e86041d5184129ab749173c75f;hpb=081c214eace0c9088cbcbd9a3d448f6fac5e98f4;p=libsigrok.git diff --git a/src/hardware/atten-pps3xxx/protocol.c b/src/hardware/atten-pps3xxx/protocol.c index 95137d2e..06a1d2e9 100644 --- a/src/hardware/atten-pps3xxx/protocol.c +++ b/src/hardware/atten-pps3xxx/protocol.c @@ -17,11 +17,11 @@ * along with this program. If not, see . */ +#include #include -#include #include "protocol.h" -static void dump_packet(char *msg, uint8_t *packet) +static void dump_packet(const char *msg, uint8_t *packet) { int i; char str[128]; @@ -37,13 +37,13 @@ static void handle_packet(const struct sr_dev_inst *sdi) { struct dev_context *devc; struct sr_datafeed_packet packet; - struct sr_datafeed_analog analog; + struct sr_datafeed_analog_old analog; float value, data[MAX_CHANNELS]; int offset, i; devc = sdi->priv; dump_packet("received", devc->packet); - packet.type = SR_DF_ANALOG; + packet.type = SR_DF_ANALOG_OLD; packet.payload = &analog; analog.channels = sdi->channels; analog.num_samples = 1; @@ -83,10 +83,12 @@ static void handle_packet(const struct sr_dev_inst *sdi) SR_PRIV void send_packet(const struct sr_dev_inst *sdi, uint8_t *packet) { + struct dev_context *devc; struct sr_serial_dev_inst *serial; + devc = sdi->priv; serial = sdi->conn; - if (serial_write_blocking(serial, packet, PACKET_SIZE) < PACKET_SIZE) + if (serial_write_blocking(serial, packet, PACKET_SIZE, devc->delay_ms) < PACKET_SIZE) sr_dbg("Failed to send packet."); dump_packet("sent", packet); } @@ -131,7 +133,6 @@ SR_PRIV int atten_pps3xxx_receive_data(int fd, int revents, void *cb_data) struct dev_context *devc; const struct sr_dev_inst *sdi; struct sr_serial_dev_inst *serial; - struct sr_datafeed_packet packet; unsigned char c; (void)fd; @@ -154,12 +155,10 @@ SR_PRIV int atten_pps3xxx_receive_data(int fd, int revents, void *cb_data) send_config(sdi); else { serial_source_remove(sdi->session, serial); - packet.type = SR_DF_END; - sr_session_send(sdi, &packet); + std_session_send_df_end(sdi, LOG_PREFIX); } } } return TRUE; } -