From cbdb63bbca3e8dd97de19707f6d88b7678e5217c Mon Sep 17 00:00:00 2001 From: yunyaobaihong <896458252@qq.com> Date: Mon, 15 May 2023 15:10:37 +0800 Subject: [PATCH] demo protocol file --- DSView/demo/logic/demo.demo | Bin 155058 -> 0 bytes DSView/demo/logic/eeprom.demo | Bin 76550 -> 0 bytes DSView/demo/logic/protocol.demo | Bin 0 -> 12222 bytes DSView/demo/logic/spi.demo | Bin 147779 -> 0 bytes libsigrok4DSL/hardware/demo/demo.c | 139 +++++++++++++++++------------ libsigrok4DSL/hardware/demo/demo.h | 5 +- 6 files changed, 86 insertions(+), 58 deletions(-) delete mode 100644 DSView/demo/logic/demo.demo delete mode 100644 DSView/demo/logic/eeprom.demo create mode 100644 DSView/demo/logic/protocol.demo delete mode 100644 DSView/demo/logic/spi.demo diff --git a/DSView/demo/logic/demo.demo b/DSView/demo/logic/demo.demo deleted file mode 100644 index 2ec5557274cff527ac7b631026f33693501d98d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155058 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 Jx*gab>_4TdJ&ynY diff --git a/DSView/demo/logic/protocol.demo b/DSView/demo/logic/protocol.demo new file mode 100644 index 0000000000000000000000000000000000000000..6161065bbfb40873e7e8696ede4643a759bfc8a5 GIT binary patch literal 12222 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 EKg2d`CIA2c diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index 86344612..31e2d041 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -261,9 +261,9 @@ static int scan_dsl_file(struct sr_dev_inst *sdi) get_pattern_mode_from_file(DSO); get_pattern_mode_from_file(ANALOG); - if(PATTERN_RANDOM mode == ANALOG) @@ -1812,37 +1813,39 @@ static int receive_data_dso(int fd, int revents, const struct sr_dev_inst *sdi) if(timebase_change || vdiv_change) { int index; - int bit = get_bit(vdev->timebase); + int bit = get_bit(vdev->timebase); - void* tmp_buf = g_try_malloc0(bit); - for(int i = 0 ; i < bit ; i++) + if(sample_generator!= PATTERN_RANDOM) { - if(i%2 == 0) + void* tmp_buf = g_try_malloc0(bit); + for(int i = 0 ; i < bit ; i++) { - if(bit == 10) - index = i * 16; + if(i%2 == 0) + { + if(bit == 10) + index = i * 16; + else + index = i * 100 / (bit / 2); + } else - index = i * 100 / (bit / 2); + { + + if(bit == 10) + index = (i-1) * 16 + 1; + else + index = (i-1) * 100 / (bit / 2) + 1; + } + *((uint8_t*)tmp_buf+ i) = *((uint8_t*)pack_buffer->post_buf + index + 30); } - else + + for(int i = 0 ; i < DSO_PACKET_LEN/bit ; i++) { - - if(bit == 10) - index = (i-1) * 16 + 1; - else - index = (i-1) * 100 / (bit / 2) + 1; + memcpy(pack_buffer->post_buf+i*bit,tmp_buf,bit); } - *((uint8_t*)tmp_buf+ i) = *((uint8_t*)pack_buffer->post_buf + index + 30); - } - for(int i = 0 ; i < DSO_PACKET_LEN/bit ; i++) - { - memcpy(pack_buffer->post_buf+i*bit,tmp_buf,bit); + g_free(tmp_buf); } - g_free(tmp_buf); - - for(int i = 0 ; i < pack_buffer->post_buf_len; i++) { tem = 0; @@ -1888,44 +1891,66 @@ static int receive_data_dso(int fd, int revents, const struct sr_dev_inst *sdi) } } + //时间轴长度 gdouble total_time = vdev->timebase /(gdouble)SR_SEC(1)*(gdouble)10; + //总共运行时间 gdouble total_time_elapsed = g_timer_elapsed(run_time, NULL); - if (total_time_elapsed < total_time && !instant) + // + if(!instant) { - gdouble percent = total_time_elapsed / total_time; - int buf_len = percent* DSO_PACKET_LEN; - if(buf_len %2 != 0) - buf_len -=1; - pack_buffer->post_len = buf_len; - } - else - { - uint8_t top0; - uint8_t top1; - if(sample_generator == PATTERN_RANDOM) + if (total_time_elapsed < total_time) { - top0 = *((uint8_t*)pack_buffer->post_buf + pack_buffer->post_buf_len -2); - top1 = *((uint8_t*)pack_buffer->post_buf + pack_buffer->post_buf_len -1); + gdouble percent = total_time_elapsed / total_time; + int buf_len = percent* DSO_PACKET_LEN; + if(buf_len %2 != 0) + buf_len +=1; + pack_buffer->post_len = buf_len; } else { - top0 = *((uint8_t*)pack_buffer->post_buf + get_bit(vdev->timebase) -2); - top1 = *((uint8_t*)pack_buffer->post_buf + get_bit(vdev->timebase) -1); + uint8_t top0; + uint8_t top1; + if(sample_generator == PATTERN_RANDOM) + { + top0 = *((uint8_t*)pack_buffer->post_buf + pack_buffer->post_buf_len -2); + top1 = *((uint8_t*)pack_buffer->post_buf + pack_buffer->post_buf_len -1); + } + else + { + top0 = *((uint8_t*)pack_buffer->post_buf + get_bit(vdev->timebase) -2); + top1 = *((uint8_t*)pack_buffer->post_buf + get_bit(vdev->timebase) -1); + } + + + for(int i = pack_buffer->post_len -1; i > 1; i -= 2){ + *((uint8_t*)pack_buffer->post_buf + i) = *((uint8_t*)pack_buffer->post_buf + i - 2); + } + + for(int i = pack_buffer->post_len -2; i > 0; i -= 2){ + *((uint8_t*)pack_buffer->post_buf + i) = *((uint8_t*)pack_buffer->post_buf + i - 2); + } + + *(uint8_t*)pack_buffer->post_buf = top0; + *((uint8_t*)pack_buffer->post_buf + 1)= top1; + pack_buffer->post_len = DSO_PACKET_LEN; } - - - for(int i = pack_buffer->post_len -1; i > 1; i -= 2){ - *((uint8_t*)pack_buffer->post_buf + i) = *((uint8_t*)pack_buffer->post_buf + i - 2); - } - - for(int i = pack_buffer->post_len -2; i > 0; i -= 2){ - *((uint8_t*)pack_buffer->post_buf + i) = *((uint8_t*)pack_buffer->post_buf + i - 2); - } - - *(uint8_t*)pack_buffer->post_buf = top0; - *((uint8_t*)pack_buffer->post_buf + 1)= top1; - pack_buffer->post_len = DSO_PACKET_LEN; } + else + { + if(DSO_PACKET_LEN >total_num) + { + uint64_t total_packet_num = total_time*DSO_PACKET_NUM_PER_SEC; + pack_buffer->post_len = DSO_PACKET_LEN/total_packet_num; + total_num += pack_buffer->post_len; + } + else + { + pack_buffer->post_len = DSO_PACKET_LEN; + bToEnd = 1; + instant = FALSE; + } + } + if (pack_buffer->post_len >= byte_align * chan_num) { @@ -1944,11 +1969,11 @@ static int receive_data_dso(int fd, int revents, const struct sr_dev_inst *sdi) ds_data_forward(sdi, &packet); } - if(instant) - { - bToEnd = 1; - instant = FALSE; - } + // if(instant) + // { + // bToEnd = 1; + // instant = FALSE; + // } if (bToEnd || revents == -1) { diff --git a/libsigrok4DSL/hardware/demo/demo.h b/libsigrok4DSL/hardware/demo/demo.h index 8a2b84be..de574896 100644 --- a/libsigrok4DSL/hardware/demo/demo.h +++ b/libsigrok4DSL/hardware/demo/demo.h @@ -56,6 +56,7 @@ static int max_probe_num = 0; extern char DS_RES_PATH[500]; uint8_t sample_generator; static int64_t analog_count = 0; +static uint64_t total_num = 0; struct session_packet_buffer; @@ -250,6 +251,8 @@ static const uint64_t samplerates[] = { #define CAPS_FEATURE_ZERO (1 << 4) /* end */ +#define DEFAULT_LOGIC_FILE "protocol" + #define SEC 1 #define LOGIC_POST_DATA_PER_SECOND(n) ((n)/(8)) #define LOGIC_PACKET_NUM_PER_SEC (gdouble)200 @@ -259,7 +262,7 @@ static const uint64_t samplerates[] = { #define LOGIC_MIN_PACKET_NUM(n) (LOGIC_POST_DATA_PER_SECOND(n))/(LOGIC_MIN_PACKET_LEN) #define LOGIC_MIN_PACKET_TIME(n) ((SEC)/(gdouble)(LOGIC_MIN_PACKET_NUM(n))) -#define DSO_PACKET_NUM_PER_SEC (gdouble)200 +#define DSO_PACKET_NUM_PER_SEC (gdouble)100 #define DSO_PACKET_TIME ((SEC)/(DSO_PACKET_NUM_PER_SEC)) #define DSO_PACKET_LEN 20000