Commit 510e052b899bfed94117012b03583634bee4fc27

Authored by bmarechal
1 parent 993f3792d1
Exists in master

double_dds client

Showing 2 changed files with 1283 additions and 0 deletions Inline Diff

redpitaya/client/double_dds.grc
File was created 1 <?xml version='1.0' encoding='utf-8'?>
2 <?grc format='1' created='3.7.10'?>
3 <flow_graph>
4 <timestamp>Thu Feb 2 22:54:58 2017</timestamp>
5 <block>
6 <key>options</key>
7 <param>
8 <key>author</key>
9 <value></value>
10 </param>
11 <param>
12 <key>window_size</key>
13 <value>1000, 2000</value>
14 </param>
15 <param>
16 <key>category</key>
17 <value>[GRC Hier Blocks]</value>
18 </param>
19 <param>
20 <key>comment</key>
21 <value></value>
22 </param>
23 <param>
24 <key>description</key>
25 <value></value>
26 </param>
27 <param>
28 <key>_enabled</key>
29 <value>True</value>
30 </param>
31 <param>
32 <key>_coordinate</key>
33 <value>(8, 8)</value>
34 </param>
35 <param>
36 <key>_rotation</key>
37 <value>0</value>
38 </param>
39 <param>
40 <key>generate_options</key>
41 <value>qt_gui</value>
42 </param>
43 <param>
44 <key>hier_block_src_path</key>
45 <value>.:</value>
46 </param>
47 <param>
48 <key>id</key>
49 <value>double_dds</value>
50 </param>
51 <param>
52 <key>max_nouts</key>
53 <value>0</value>
54 </param>
55 <param>
56 <key>qt_qss_theme</key>
57 <value></value>
58 </param>
59 <param>
60 <key>realtime_scheduling</key>
61 <value></value>
62 </param>
63 <param>
64 <key>run_command</key>
65 <value>{python} -u {filename}</value>
66 </param>
67 <param>
68 <key>run_options</key>
69 <value>prompt</value>
70 </param>
71 <param>
72 <key>run</key>
73 <value>True</value>
74 </param>
75 <param>
76 <key>thread_safe_setters</key>
77 <value></value>
78 </param>
79 <param>
80 <key>title</key>
81 <value></value>
82 </param>
83 </block>
84 <block>
85 <key>variable</key>
86 <param>
87 <key>comment</key>
88 <value></value>
89 </param>
90 <param>
91 <key>_enabled</key>
92 <value>True</value>
93 </param>
94 <param>
95 <key>_coordinate</key>
96 <value>(8, 104)</value>
97 </param>
98 <param>
99 <key>_rotation</key>
100 <value>0</value>
101 </param>
102 <param>
103 <key>id</key>
104 <value>addr</value>
105 </param>
106 <param>
107 <key>value</key>
108 <value>"192.168.0.204"</value>
109 </param>
110 </block>
111 <block>
112 <key>variable_qtgui_range</key>
113 <param>
114 <key>comment</key>
115 <value></value>
116 </param>
117 <param>
118 <key>value</key>
119 <value>0</value>
120 </param>
121 <param>
122 <key>_enabled</key>
123 <value>True</value>
124 </param>
125 <param>
126 <key>_coordinate</key>
127 <value>(256, 396)</value>
128 </param>
129 <param>
130 <key>gui_hint</key>
131 <value>1, 0</value>
132 </param>
133 <param>
134 <key>_rotation</key>
135 <value>0</value>
136 </param>
137 <param>
138 <key>id</key>
139 <value>dds1_ampl</value>
140 </param>
141 <param>
142 <key>label</key>
143 <value>dds1_ampl</value>
144 </param>
145 <param>
146 <key>min_len</key>
147 <value>200</value>
148 </param>
149 <param>
150 <key>orient</key>
151 <value>Qt.Horizontal</value>
152 </param>
153 <param>
154 <key>start</key>
155 <value>0</value>
156 </param>
157 <param>
158 <key>step</key>
159 <value>1</value>
160 </param>
161 <param>
162 <key>stop</key>
163 <value>2**13-1</value>
164 </param>
165 <param>
166 <key>rangeType</key>
167 <value>int</value>
168 </param>
169 <param>
170 <key>widget</key>
171 <value>counter_slider</value>
172 </param>
173 </block>
174 <block>
175 <key>variable_qtgui_range</key>
176 <param>
177 <key>comment</key>
178 <value></value>
179 </param>
180 <param>
181 <key>value</key>
182 <value>0</value>
183 </param>
184 <param>
185 <key>_enabled</key>
186 <value>True</value>
187 </param>
188 <param>
189 <key>_coordinate</key>
190 <value>(256, 20)</value>
191 </param>
192 <param>
193 <key>gui_hint</key>
194 <value>0, 0</value>
195 </param>
196 <param>
197 <key>_rotation</key>
198 <value>0</value>
199 </param>
200 <param>
201 <key>id</key>
202 <value>dds1_nco</value>
203 </param>
204 <param>
205 <key>label</key>
206 <value>dds1_nco</value>
207 </param>
208 <param>
209 <key>min_len</key>
210 <value>200</value>
211 </param>
212 <param>
213 <key>orient</key>
214 <value>Qt.Horizontal</value>
215 </param>
216 <param>
217 <key>start</key>
218 <value>0</value>
219 </param>
220 <param>
221 <key>step</key>
222 <value>1000</value>
223 </param>
224 <param>
225 <key>stop</key>
226 <value>60000000</value>
227 </param>
228 <param>
229 <key>rangeType</key>
230 <value>float</value>
231 </param>
232 <param>
233 <key>widget</key>
234 <value>counter_slider</value>
235 </param>
236 </block>
237 <block>
238 <key>variable_qtgui_range</key>
239 <param>
240 <key>comment</key>
241 <value></value>
242 </param>
243 <param>
244 <key>value</key>
245 <value>0</value>
246 </param>
247 <param>
248 <key>_enabled</key>
249 <value>True</value>
250 </param>
251 <param>
252 <key>_coordinate</key>
253 <value>(256, 684)</value>
254 </param>
255 <param>
256 <key>gui_hint</key>
257 <value>2, 0</value>
258 </param>
259 <param>
260 <key>_rotation</key>
261 <value>0</value>
262 </param>
263 <param>
264 <key>id</key>
265 <value>dds1_offset</value>
266 </param>
267 <param>
268 <key>label</key>
269 <value>dds1_offset</value>
270 </param>
271 <param>
272 <key>min_len</key>
273 <value>200</value>
274 </param>
275 <param>
276 <key>orient</key>
277 <value>Qt.Horizontal</value>
278 </param>
279 <param>
280 <key>start</key>
281 <value>-2**13</value>
282 </param>
283 <param>
284 <key>step</key>
285 <value>1</value>
286 </param>
287 <param>
288 <key>stop</key>
289 <value>2**13-1</value>
290 </param>
291 <param>
292 <key>rangeType</key>
293 <value>int</value>
294 </param>
295 <param>
296 <key>widget</key>
297 <value>counter_slider</value>
298 </param>
299 </block>
300 <block>
301 <key>variable_qtgui_range</key>
302 <param>
303 <key>comment</key>
304 <value></value>
305 </param>
306 <param>
307 <key>value</key>
308 <value>0</value>
309 </param>
310 <param>
311 <key>_enabled</key>
312 <value>True</value>
313 </param>
314 <param>
315 <key>_coordinate</key>
316 <value>(256, 996)</value>
317 </param>
318 <param>
319 <key>gui_hint</key>
320 <value>3, 0</value>
321 </param>
322 <param>
323 <key>_rotation</key>
324 <value>0</value>
325 </param>
326 <param>
327 <key>id</key>
328 <value>dds1_phase</value>
329 </param>
330 <param>
331 <key>label</key>
332 <value>dds1_phase</value>
333 </param>
334 <param>
335 <key>min_len</key>
336 <value>200</value>
337 </param>
338 <param>
339 <key>orient</key>
340 <value>Qt.Horizontal</value>
341 </param>
342 <param>
343 <key>start</key>
344 <value>-2**13</value>
345 </param>
346 <param>
347 <key>step</key>
348 <value>1</value>
349 </param>
350 <param>
351 <key>stop</key>
352 <value>2**13-1</value>
353 </param>
354 <param>
355 <key>rangeType</key>
356 <value>int</value>
357 </param>
358 <param>
359 <key>widget</key>
360 <value>counter_slider</value>
361 </param>
362 </block>
363 <block>
364 <key>variable_qtgui_range</key>
365 <param>
366 <key>comment</key>
367 <value></value>
368 </param>
369 <param>
370 <key>value</key>
371 <value>0</value>
372 </param>
373 <param>
374 <key>_enabled</key>
375 <value>True</value>
376 </param>
377 <param>
378 <key>_coordinate</key>
379 <value>(600, 396)</value>
380 </param>
381 <param>
382 <key>gui_hint</key>
383 <value>1, 1</value>
384 </param>
385 <param>
386 <key>_rotation</key>
387 <value>0</value>
388 </param>
389 <param>
390 <key>id</key>
391 <value>dds2_ampl</value>
392 </param>
393 <param>
394 <key>label</key>
395 <value>dds2_ampl</value>
396 </param>
397 <param>
398 <key>min_len</key>
399 <value>200</value>
400 </param>
401 <param>
402 <key>orient</key>
403 <value>Qt.Horizontal</value>
404 </param>
405 <param>
406 <key>start</key>
407 <value>0</value>
408 </param>
409 <param>
410 <key>step</key>
411 <value>1</value>
412 </param>
413 <param>
414 <key>stop</key>
415 <value>2**13-1</value>
416 </param>
417 <param>
418 <key>rangeType</key>
419 <value>int</value>
420 </param>
421 <param>
422 <key>widget</key>
423 <value>counter_slider</value>
424 </param>
425 </block>
426 <block>
427 <key>variable_qtgui_range</key>
428 <param>
429 <key>comment</key>
430 <value></value>
431 </param>
432 <param>
433 <key>value</key>
434 <value>0</value>
435 </param>
436 <param>
437 <key>_enabled</key>
438 <value>True</value>
439 </param>
440 <param>
441 <key>_coordinate</key>
442 <value>(600, 20)</value>
443 </param>
444 <param>
445 <key>gui_hint</key>
446 <value>0, 1</value>
447 </param>
448 <param>
449 <key>_rotation</key>
450 <value>0</value>
451 </param>
452 <param>
453 <key>id</key>
454 <value>dds2_nco</value>
455 </param>
456 <param>
457 <key>label</key>
458 <value>dds2_nco</value>
459 </param>
460 <param>
461 <key>min_len</key>
462 <value>200</value>
463 </param>
464 <param>
465 <key>orient</key>
466 <value>Qt.Horizontal</value>
467 </param>
468 <param>
469 <key>start</key>
470 <value>0</value>
471 </param>
472 <param>
473 <key>step</key>
474 <value>1000</value>
475 </param>
476 <param>
477 <key>stop</key>
478 <value>60000000</value>
479 </param>
480 <param>
481 <key>rangeType</key>
482 <value>float</value>
483 </param>
484 <param>
485 <key>widget</key>
486 <value>counter_slider</value>
487 </param>
488 </block>
489 <block>
490 <key>variable_qtgui_range</key>
491 <param>
492 <key>comment</key>
493 <value></value>
494 </param>
495 <param>
496 <key>value</key>
497 <value>0</value>
498 </param>
499 <param>
500 <key>_enabled</key>
501 <value>True</value>
502 </param>
503 <param>
504 <key>_coordinate</key>
505 <value>(600, 684)</value>
506 </param>
507 <param>
508 <key>gui_hint</key>
509 <value>2, 1</value>
510 </param>
511 <param>
512 <key>_rotation</key>
513 <value>0</value>
514 </param>
515 <param>
516 <key>id</key>
517 <value>dds2_offset</value>
518 </param>
519 <param>
520 <key>label</key>
521 <value>dds2_offset</value>
522 </param>
523 <param>
524 <key>min_len</key>
525 <value>200</value>
526 </param>
527 <param>
528 <key>orient</key>
529 <value>Qt.Horizontal</value>
530 </param>
531 <param>
532 <key>start</key>
533 <value>-2**13</value>
534 </param>
535 <param>
536 <key>step</key>
537 <value>1</value>
538 </param>
539 <param>
540 <key>stop</key>
541 <value>2**13-1</value>
542 </param>
543 <param>
544 <key>rangeType</key>
545 <value>int</value>
546 </param>
547 <param>
548 <key>widget</key>
549 <value>counter_slider</value>
550 </param>
551 </block>
552 <block>
553 <key>variable_qtgui_range</key>
554 <param>
555 <key>comment</key>
556 <value></value>
557 </param>
558 <param>
559 <key>value</key>
560 <value>0</value>
561 </param>
562 <param>
563 <key>_enabled</key>
564 <value>True</value>
565 </param>
566 <param>
567 <key>_coordinate</key>
568 <value>(600, 996)</value>
569 </param>
570 <param>
571 <key>gui_hint</key>
572 <value>3, 1</value>
573 </param>
574 <param>
575 <key>_rotation</key>
576 <value>0</value>
577 </param>
578 <param>
579 <key>id</key>
580 <value>dds2_phase</value>
581 </param>
582 <param>
583 <key>label</key>
584 <value>dds2_phase</value>
585 </param>
586 <param>
587 <key>min_len</key>
588 <value>200</value>
589 </param>
590 <param>
591 <key>orient</key>
592 <value>Qt.Horizontal</value>
593 </param>
594 <param>
595 <key>start</key>
596 <value>-2**13</value>
597 </param>
598 <param>
599 <key>step</key>
600 <value>1</value>
601 </param>
602 <param>
603 <key>stop</key>
604 <value>2**13-1</value>
605 </param>
606 <param>
607 <key>rangeType</key>
608 <value>int</value>
609 </param>
610 <param>
611 <key>widget</key>
612 <value>counter_slider</value>
613 </param>
614 </block>
615 <block>
616 <key>variable</key>
617 <param>
618 <key>comment</key>
619 <value></value>
620 </param>
621 <param>
622 <key>_enabled</key>
623 <value>True</value>
624 </param>
625 <param>
626 <key>_coordinate</key>
627 <value>(8, 176)</value>
628 </param>
629 <param>
630 <key>_rotation</key>
631 <value>0</value>
632 </param>
633 <param>
634 <key>id</key>
635 <value>port</value>
636 </param>
637 <param>
638 <key>value</key>
639 <value>1001</value>
640 </param>
641 </block>
642 <block>
643 <key>add_const_set_offset</key>
644 <param>
645 <key>addr</key>
646 <value>addr</value>
647 </param>
648 <param>
649 <key>alias</key>
650 <value></value>
651 </param>
652 <param>
653 <key>comment</key>
654 <value></value>
655 </param>
656 <param>
657 <key>const</key>
658 <value>dds1_offset</value>
659 </param>
660 <param>
661 <key>device</key>
662 <value>/dev/dds1_offset</value>
663 </param>
664 <param>
665 <key>_enabled</key>
666 <value>True</value>
667 </param>
668 <param>
669 <key>_coordinate</key>
670 <value>(256, 852)</value>
671 </param>
672 <param>
673 <key>_rotation</key>
674 <value>0</value>
675 </param>
676 <param>
677 <key>id</key>
678 <value>add_const_set_offset_0</value>
679 </param>
680 <param>
681 <key>port</key>
682 <value>port</value>
683 </param>
684 </block>
685 <block>
686 <key>add_const_set_offset</key>
687 <param>
688 <key>addr</key>
689 <value>addr</value>
690 </param>
691 <param>
692 <key>alias</key>
693 <value></value>
694 </param>
695 <param>
696 <key>comment</key>
697 <value></value>
698 </param>
699 <param>
700 <key>const</key>
701 <value>dds1_ampl</value>
702 </param>
703 <param>
704 <key>device</key>
705 <value>/dev/dds1_ampl</value>
706 </param>
707 <param>
708 <key>_enabled</key>
709 <value>True</value>
710 </param>
711 <param>
712 <key>_coordinate</key>
713 <value>(256, 548)</value>
714 </param>
715 <param>
716 <key>_rotation</key>
717 <value>0</value>
718 </param>
719 <param>
720 <key>id</key>
721 <value>add_const_set_offset_0_0</value>
722 </param>
723 <param>
724 <key>port</key>
725 <value>port</value>
726 </param>
727 </block>
728 <block>
729 <key>add_const_set_offset</key>
730 <param>
731 <key>addr</key>
732 <value>addr</value>
733 </param>
734 <param>
735 <key>alias</key>
736 <value></value>
737 </param>
738 <param>
739 <key>comment</key>
740 <value></value>
741 </param>
742 <param>
743 <key>const</key>
744 <value>dds2_ampl</value>
745 </param>
746 <param>
747 <key>device</key>
748 <value>/dev/dds2_ampl</value>
749 </param>
750 <param>
751 <key>_enabled</key>
752 <value>True</value>
753 </param>
754 <param>
755 <key>_coordinate</key>
756 <value>(600, 548)</value>
757 </param>
758 <param>
759 <key>_rotation</key>
760 <value>0</value>
761 </param>
762 <param>
763 <key>id</key>
764 <value>add_const_set_offset_0_0_0</value>
765 </param>
766 <param>
767 <key>port</key>
768 <value>port</value>
769 </param>
770 </block>
771 <block>
772 <key>add_const_set_offset</key>
773 <param>
774 <key>addr</key>
775 <value>addr</value>
776 </param>
777 <param>
778 <key>alias</key>
779 <value></value>
780 </param>
781 <param>
782 <key>comment</key>
783 <value></value>
784 </param>
785 <param>
786 <key>const</key>
787 <value>dds2_offset</value>
788 </param>
789 <param>
790 <key>device</key>
791 <value>/dev/dds2_offset</value>
792 </param>
793 <param>
794 <key>_enabled</key>
795 <value>True</value>
796 </param>
797 <param>
798 <key>_coordinate</key>
799 <value>(600, 852)</value>
800 </param>
801 <param>
802 <key>_rotation</key>
803 <value>0</value>
804 </param>
805 <param>
806 <key>id</key>
807 <value>add_const_set_offset_0_1</value>
808 </param>
809 <param>
810 <key>port</key>
811 <value>port</value>
812 </param>
813 </block>
814 <block>
815 <key>add_const_set_offset</key>
816 <param>
817 <key>addr</key>
818 <value>addr</value>
819 </param>
820 <param>
821 <key>alias</key>
822 <value></value>
823 </param>
824 <param>
825 <key>comment</key>
826 <value></value>
827 </param>
828 <param>
829 <key>const</key>
830 <value>dds2_phase</value>
831 </param>
832 <param>
833 <key>device</key>
834 <value>/dev/dds2_phase</value>
835 </param>
836 <param>
837 <key>_enabled</key>
838 <value>True</value>
839 </param>
840 <param>
841 <key>_coordinate</key>
842 <value>(600, 1164)</value>
843 </param>
844 <param>
845 <key>_rotation</key>
846 <value>0</value>
847 </param>
848 <param>
849 <key>id</key>
850 <value>add_const_set_offset_0_1_0</value>
851 </param>
852 <param>
853 <key>port</key>
854 <value>port</value>
855 </param>
856 </block>
857 <block>
858 <key>add_const_set_offset</key>
859 <param>
860 <key>addr</key>
861 <value>addr</value>
862 </param>
863 <param>
864 <key>alias</key>
865 <value></value>
866 </param>
867 <param>
868 <key>comment</key>
869 <value></value>
870 </param>
871 <param>
872 <key>const</key>
873 <value>dds1_phase</value>
874 </param>
875 <param>
876 <key>device</key>
877 <value>/dev/dds1_phase</value>
878 </param>
879 <param>
880 <key>_enabled</key>
881 <value>True</value>
882 </param>
883 <param>
884 <key>_coordinate</key>
885 <value>(256, 1164)</value>
886 </param>
887 <param>
888 <key>_rotation</key>
889 <value>0</value>
890 </param>
891 <param>
892 <key>id</key>
893 <value>add_const_set_offset_0_2</value>
894 </param>
895 <param>
896 <key>port</key>
897 <value>port</value>
898 </param>
899 </block>
900 <block>
901 <key>nco_counter_send_conf</key>
902 <param>
903 <key>acc_size</key>
904 <value>32</value>
905 </param>
906 <param>
907 <key>addr</key>
908 <value>addr</value>
909 </param>
910 <param>
911 <key>alias</key>
912 <value></value>
913 </param>
914 <param>
915 <key>comment</key>
916 <value></value>
917 </param>
918 <param>
919 <key>device</key>
920 <value>/dev/dds1_nco</value>
921 </param>
922 <param>
923 <key>_enabled</key>
924 <value>True</value>
925 </param>
926 <param>
927 <key>freq_dds</key>
928 <value>dds1_nco</value>
929 </param>
930 <param>
931 <key>freq_ref</key>
932 <value>125000000</value>
933 </param>
934 <param>
935 <key>_coordinate</key>
936 <value>(256, 168)</value>
937 </param>
938 <param>
939 <key>_rotation</key>
940 <value>0</value>
941 </param>
942 <param>
943 <key>id</key>
944 <value>nco_counter_send_conf_0</value>
945 </param>
946 <param>
947 <key>offset</key>
948 <value>0</value>
949 </param>
950 <param>
951 <key>pinc_sw</key>
952 <value>1</value>
953 </param>
954 <param>
955 <key>poff_sw</key>
956 <value>0</value>
957 </param>
958 <param>
959 <key>port</key>
960 <value>port</value>
961 </param>
962 </block>
963 <block>
964 <key>nco_counter_send_conf</key>
965 <param>
966 <key>acc_size</key>
967 <value>32</value>
968 </param>
969 <param>
970 <key>addr</key>
971 <value>addr</value>
972 </param>
973 <param>
974 <key>alias</key>
975 <value></value>
976 </param>
977 <param>
978 <key>comment</key>
979 <value></value>
980 </param>
981 <param>
982 <key>device</key>
983 <value>/dev/dds2_nco</value>
984 </param>
985 <param>
986 <key>_enabled</key>
987 <value>True</value>
988 </param>
989 <param>
990 <key>freq_dds</key>
991 <value>dds2_nco</value>
992 </param>
993 <param>
994 <key>freq_ref</key>
995 <value>125000000</value>
996 </param>
997 <param>
998 <key>_coordinate</key>
999 <value>(600, 168)</value>
1000 </param>
1001 <param>
1002 <key>_rotation</key>
1003 <value>0</value>
1004 </param>
1005 <param>
1006 <key>id</key>
1007 <value>nco_counter_send_conf_0_0</value>
1008 </param>
1009 <param>
1010 <key>offset</key>
1011 <value>0</value>
1012 </param>
1013 <param>
1014 <key>pinc_sw</key>
1015 <value>1</value>
1016 </param>
1017 <param>
1018 <key>poff_sw</key>
1019 <value>0</value>
1020 </param>
1021 <param>
1022 <key>port</key>
1023 <value>port</value>
1024 </param>
1025 </block>
1026 </flow_graph>
redpitaya/client/double_dds.py
File was created 1 #!/usr/bin/env python2
2 # -*- coding: utf-8 -*-
3 ##################################################
4 # GNU Radio Python Flow Graph
5 # Title: Double Dds
6 # Generated: Thu May 11 08:24:36 2017
7 ##################################################
8
9 if __name__ == '__main__':
10 import ctypes
11 import sys
12 if sys.platform.startswith('linux'):
13 try:
14 x11 = ctypes.cdll.LoadLibrary('libX11.so')
15 x11.XInitThreads()
16 except:
17 print "Warning: failed to XInitThreads()"
18
19 from PyQt4 import Qt
20 from gnuradio import eng_notation
21 from gnuradio import gr
22 from gnuradio.eng_option import eng_option
23 from gnuradio.filter import firdes
24 from gnuradio.qtgui import Range, RangeWidget
25 from optparse import OptionParser
26 import redpitaya_gnuradio
27 import sys
28
29
30 class double_dds(gr.top_block, Qt.QWidget):
31
32 def __init__(self):
33 gr.top_block.__init__(self, "Double Dds")
34 Qt.QWidget.__init__(self)
35 self.setWindowTitle("Double Dds")
36 try:
37 self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
38 except:
39 pass
40 self.top_scroll_layout = Qt.QVBoxLayout()
41 self.setLayout(self.top_scroll_layout)
42 self.top_scroll = Qt.QScrollArea()
43 self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
44 self.top_scroll_layout.addWidget(self.top_scroll)
45 self.top_scroll.setWidgetResizable(True)
46 self.top_widget = Qt.QWidget()
47 self.top_scroll.setWidget(self.top_widget)
48 self.top_layout = Qt.QVBoxLayout(self.top_widget)
49 self.top_grid_layout = Qt.QGridLayout()
50 self.top_layout.addLayout(self.top_grid_layout)
51
52 self.settings = Qt.QSettings("GNU Radio", "double_dds")
53 self.restoreGeometry(self.settings.value("geometry").toByteArray())
54
55 ##################################################
56 # Variables
57 ##################################################
58 self.port = port = 1001
59 self.dds2_phase = dds2_phase = 0
60 self.dds2_offset = dds2_offset = 0
61 self.dds2_nco = dds2_nco = 0
62 self.dds2_ampl = dds2_ampl = 0
63 self.dds1_phase = dds1_phase = 0
64 self.dds1_offset = dds1_offset = 0
65 self.dds1_nco = dds1_nco = 0
66 self.dds1_ampl = dds1_ampl = 0
67 self.addr = addr = "192.168.0.204"
68
69 ##################################################
70 # Blocks
71 ##################################################
72 self._dds2_phase_range = Range(-2**13, 2**13-1, 1, 0, 200)
73 self._dds2_phase_win = RangeWidget(self._dds2_phase_range, self.set_dds2_phase, 'dds2_phase', "counter_slider", int)
74 self.top_grid_layout.addWidget(self._dds2_phase_win, 3, 1)
75 self._dds2_offset_range = Range(-2**13, 2**13-1, 1, 0, 200)
76 self._dds2_offset_win = RangeWidget(self._dds2_offset_range, self.set_dds2_offset, 'dds2_offset', "counter_slider", int)
77 self.top_grid_layout.addWidget(self._dds2_offset_win, 2, 1)
78 self._dds2_nco_range = Range(0, 60000000, 1000, 0, 200)
79 self._dds2_nco_win = RangeWidget(self._dds2_nco_range, self.set_dds2_nco, 'dds2_nco', "counter_slider", float)
80 self.top_grid_layout.addWidget(self._dds2_nco_win, 0, 1)
81 self._dds2_ampl_range = Range(0, 2**13-1, 1, 0, 200)
82 self._dds2_ampl_win = RangeWidget(self._dds2_ampl_range, self.set_dds2_ampl, 'dds2_ampl', "counter_slider", int)
83 self.top_grid_layout.addWidget(self._dds2_ampl_win, 1, 1)
84 self._dds1_phase_range = Range(-2**13, 2**13-1, 1, 0, 200)
85 self._dds1_phase_win = RangeWidget(self._dds1_phase_range, self.set_dds1_phase, 'dds1_phase', "counter_slider", int)
86 self.top_grid_layout.addWidget(self._dds1_phase_win, 3, 0)
87 self._dds1_offset_range = Range(-2**13, 2**13-1, 1, 0, 200)
88 self._dds1_offset_win = RangeWidget(self._dds1_offset_range, self.set_dds1_offset, 'dds1_offset', "counter_slider", int)
89 self.top_grid_layout.addWidget(self._dds1_offset_win, 2, 0)
90 self._dds1_nco_range = Range(0, 60000000, 1000, 0, 200)
91 self._dds1_nco_win = RangeWidget(self._dds1_nco_range, self.set_dds1_nco, 'dds1_nco', "counter_slider", float)
92 self.top_grid_layout.addWidget(self._dds1_nco_win, 0, 0)
93 self._dds1_ampl_range = Range(0, 2**13-1, 1, 0, 200)
94 self._dds1_ampl_win = RangeWidget(self._dds1_ampl_range, self.set_dds1_ampl, 'dds1_ampl', "counter_slider", int)
95 self.top_grid_layout.addWidget(self._dds1_ampl_win, 1, 0)
96 self.nco_counter_send_conf_0_0 = redpitaya_gnuradio.nco_counter_send_conf(
97 addr=addr,
98 port=port,
99 device='/dev/dds2_nco',
100 freq_ref=125000000,
101 freq_dds=dds2_nco,
102 acc_size=32,
103 offset=0,
104 pinc_sw=1,
105 poff_sw=0,
106 )
107
108 self.nco_counter_send_conf_0 = redpitaya_gnuradio.nco_counter_send_conf(
109 addr=addr,
110 port=port,
111 device='/dev/dds1_nco',
112 freq_ref=125000000,
113 freq_dds=dds1_nco,
114 acc_size=32,
115 offset=0,
116 pinc_sw=1,
117 poff_sw=0,
118 )
119
120 self.add_const_set_offset_0_2 = redpitaya_gnuradio.add_const_set_offset(
121 addr=addr,
122 port=port,
123 device='/dev/dds1_phase',
124 const=dds1_phase,
125 )
126
127 self.add_const_set_offset_0_1_0 = redpitaya_gnuradio.add_const_set_offset(
128 addr=addr,
129 port=port,
130 device='/dev/dds2_phase',
131 const=dds2_phase,
132 )
133
134 self.add_const_set_offset_0_1 = redpitaya_gnuradio.add_const_set_offset(
135 addr=addr,
136 port=port,
137 device='/dev/dds2_offset',
138 const=dds2_offset,
139 )
140
141 self.add_const_set_offset_0_0_0 = redpitaya_gnuradio.add_const_set_offset(
142 addr=addr,
143 port=port,
144 device='/dev/dds2_ampl',
145 const=dds2_ampl,
146 )
147
148 self.add_const_set_offset_0_0 = redpitaya_gnuradio.add_const_set_offset(
149 addr=addr,
150 port=port,
151 device='/dev/dds1_ampl',
152 const=dds1_ampl,
153 )
154
155 self.add_const_set_offset_0 = redpitaya_gnuradio.add_const_set_offset(
156 addr=addr,
157 port=port,
158 device='/dev/dds1_offset',
159 const=dds1_offset,
160 )
161
162
163 def closeEvent(self, event):
164 self.settings = Qt.QSettings("GNU Radio", "double_dds")
165 self.settings.setValue("geometry", self.saveGeometry())
166 event.accept()
167
168 def get_port(self):
169 return self.port
170
171 def set_port(self, port):
172 self.port = port
173
174 def get_dds2_phase(self):
175 return self.dds2_phase
176
177 def set_dds2_phase(self, dds2_phase):
178 self.dds2_phase = dds2_phase
179 self.add_const_set_offset_0_1_0.set_const(device='/dev/dds2_phase', const=self.dds2_phase)
180
181 def get_dds2_offset(self):
182 return self.dds2_offset
183
184 def set_dds2_offset(self, dds2_offset):
185 self.dds2_offset = dds2_offset
186 self.add_const_set_offset_0_1.set_const(device='/dev/dds2_offset', const=self.dds2_offset)
187
188 def get_dds2_nco(self):
189 return self.dds2_nco
190
191 def set_dds2_nco(self, dds2_nco):
192 self.dds2_nco = dds2_nco
193 self.nco_counter_send_conf_0_0.set_nco(device='/dev/dds2_nco', freq_ref=125000000, freq_dds=self.dds2_nco, acc_size=32, offset=0, pinc_sw=1, poff_sw=0)
194
195 def get_dds2_ampl(self):
196 return self.dds2_ampl
197
198 def set_dds2_ampl(self, dds2_ampl):
199 self.dds2_ampl = dds2_ampl
200 self.add_const_set_offset_0_0_0.set_const(device='/dev/dds2_ampl', const=self.dds2_ampl)
201
202 def get_dds1_phase(self):
203 return self.dds1_phase
204
205 def set_dds1_phase(self, dds1_phase):
206 self.dds1_phase = dds1_phase
207 self.add_const_set_offset_0_2.set_const(device='/dev/dds1_phase', const=self.dds1_phase)
208
209 def get_dds1_offset(self):
210 return self.dds1_offset
211
212 def set_dds1_offset(self, dds1_offset):
213 self.dds1_offset = dds1_offset