##// END OF EJS Templates
HK packet changed due to misalignment of one int data...
paul -
r132:f919b72104cf VHDLib206
parent child
Show More
@@ -1,6 +1,6
1 1 #############################################################################
2 2 # Makefile for building: bin/fsw
3 # Generated by qmake (2.01a) (Qt 4.8.6) on: Tue May 13 07:12:26 2014
3 # Generated by qmake (2.01a) (Qt 4.8.6) on: Tue May 13 15:18:10 2014
4 4 # Project: fsw-qt.pro
5 5 # Template: app
6 6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
@@ -1,6 +1,6
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by QtCreator 3.0.1, 2014-05-13T07:49:30. -->
3 <!-- Written by QtCreator 3.0.1, 2014-05-13T15:58:32. -->
4 4 <qtcreator>
5 5 <data>
6 6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
@@ -51,9 +51,9
51 51 <data>
52 52 <variable>ProjectExplorer.Project.Target.0</variable>
53 53 <valuemap type="QVariantMap">
54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop-Qt 4.8.3 in PATH (System)</value>
55 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop-Qt 4.8.3 in PATH (System)</value>
56 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{be73cf6a-f9d8-4d5a-8adf-adc2d83e2e44}</value>
54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop-Qt 4.8.2 in PATH (System)</value>
55 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop-Qt 4.8.2 in PATH (System)</value>
56 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{5289e843-9ef2-45ce-88c6-ad27d8e08def}</value>
57 57 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
58 58 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
59 59 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
@@ -192,7 +192,7
192 192 </data>
193 193 <data>
194 194 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
195 <value type="QByteArray">{cdbf9cdc-1e84-406e-889b-c4feef49e75c}</value>
195 <value type="QByteArray">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
196 196 </data>
197 197 <data>
198 198 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
@@ -572,7 +572,7 typedef struct {
572 572 unsigned char hk_lfr_dpu_spw_tick_out_cnt;
573 573 unsigned char hk_lfr_dpu_spw_last_timc;
574 574 // ahb error statistics
575 unsigned int hk_lfr_last_fail_addr;
575 unsigned char hk_lfr_last_fail_addr[4];
576 576 // temperatures
577 577 unsigned char hk_lfr_temp_scm[2];
578 578 unsigned char hk_lfr_temp_pcb[2];
@@ -36,8 +36,10 void increment_seq_counter( unsigned cha
36 36 void getTime( unsigned char *time);
37 37 unsigned long long int getTimeAsUnsignedLongLongInt( );
38 38 void send_dumb_hk( void );
39 void get_v_e1_e2_f3 (unsigned char *v, unsigned char *e1, unsigned char *e2, bool init_buffer_addr );
39 void get_v_e1_e2_f3 (unsigned char *v, unsigned char *e1, unsigned char *e2);
40 40
41 41 extern int sched_yield( void );
42 extern ring_node *current_ring_node_f3;
43 extern ring_node *ring_node_to_send_cwf_f3;
42 44
43 45 #endif // FSW_MISC_H_INCLUDED
@@ -51,7 +51,6 rtems_task swbd_task( rtems_task_argumen
51 51
52 52 //******************
53 53 // general functions
54 void init_waveforms( void );
55 54 void init_waveform_rings( void );
56 55 void init_waveform_ring( ring_node waveform_ring[], unsigned char nbNodes, volatile int wfrm[] );
57 56 void reset_current_ring_nodes( void );
@@ -222,8 +222,7 rtems_task hous_task(rtems_task_argument
222 222 spacewire_update_statistics();
223 223
224 224 get_v_e1_e2_f3(
225 housekeeping_packet.hk_lfr_sc_v_f3, housekeeping_packet.hk_lfr_sc_e1_f3, housekeeping_packet.hk_lfr_sc_e2_f3,
226 false );
225 housekeeping_packet.hk_lfr_sc_v_f3, housekeeping_packet.hk_lfr_sc_e1_f3, housekeeping_packet.hk_lfr_sc_e2_f3 );
227 226
228 227 // SEND PACKET
229 228 status = rtems_message_queue_urgent( queue_id, &housekeeping_packet,
@@ -437,7 +436,7 void send_dumb_hk( void )
437 436 PACKET_LENGTH_HK + CCSDS_TC_TM_PACKET_OFFSET + CCSDS_PROTOCOLE_EXTRA_BYTES);
438 437 }
439 438
440 void get_v_e1_e2_f3( unsigned char *v, unsigned char *e1, unsigned char *e2, bool init_buffer_addr )
439 void get_v_e1_e2_f3( unsigned char *v, unsigned char *e1, unsigned char *e2 )
441 440 {
442 441 unsigned int coarseTime;
443 442 unsigned int acquisitionTime;
@@ -460,7 +459,7 void get_v_e1_e2_f3( unsigned char *v, u
460 459 else
461 460 {
462 461 coarseTime = time_management_regs->coarse_time & 0x7fffffff;
463 bufferPtr = (unsigned char*) waveform_picker_regs->addr_data_f3;
462 bufferPtr = (unsigned char*) current_ring_node_f3->buffer_address;
464 463 acquisitionTime = (unsigned int) ( ( bufferPtr[2] & 0x7f ) << 24 )
465 464 + (unsigned int) ( bufferPtr[3] << 16 )
466 465 + (unsigned int) ( bufferPtr[0] << 8 )
@@ -472,7 +471,8 void get_v_e1_e2_f3( unsigned char *v, u
472 471 }
473 472 else if( coarseTime == acquisitionTime )
474 473 {
475 offset_in_samples = 0;
474 bufferPtr = (unsigned char*) current_ring_node_f3->previous->buffer_address; // pick up v e1 and e2 in the previous f3 buffer
475 offset_in_samples = NB_SAMPLES_PER_SNAPSHOT-1;
476 476 }
477 477 else
478 478 {
@@ -482,7 +482,7 void get_v_e1_e2_f3( unsigned char *v, u
482 482
483 483 if ( offset_in_samples > (NB_SAMPLES_PER_SNAPSHOT - 1) )
484 484 {
485 PRINTF1("ERR *** in get_v_e1_e2_f3 *** trying to read out the buffer, counter = %d\n", offset_in_samples)
485 PRINTF1("ERR *** in get_v_e1_e2_f3 *** trying to read out of the buffer, counter = %d\n", offset_in_samples)
486 486 offset_in_samples = NB_SAMPLES_PER_SNAPSHOT -1;
487 487 }
488 488 PRINTF1("f3 data @ %x *** ", waveform_picker_regs->addr_data_f3 )
@@ -214,8 +214,6 rtems_task wfrm_task(rtems_task_argument
214 214 init_header_snapshot_wf_table( SID_NORM_SWF_F1, headerSWF_F1 );
215 215 init_header_snapshot_wf_table( SID_NORM_SWF_F2, headerSWF_F2 );
216 216
217 init_waveforms();
218
219 217 status = get_message_queue_id_send( &queue_id );
220 218 if (status != RTEMS_SUCCESSFUL)
221 219 {
@@ -449,37 +447,6 rtems_task swbd_task(rtems_task_argument
449 447
450 448 //******************
451 449 // general functions
452 void init_waveforms( void )
453 {
454 int i = 0;
455
456 for (i=0; i< NB_SAMPLES_PER_SNAPSHOT; i++)
457 {
458 //***
459 // F0
460 // wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x88887777; //
461 // wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111; //
462 // wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0x44443333; //
463
464 //***
465 // F1
466 // wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x22221111;
467 // wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x44443333;
468 // wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000;
469
470 //***
471 // F2
472 // wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x44443333;
473 // wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111;
474 // wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000;
475
476 //***
477 // F3
478 // wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 0 ] = val1;
479 // wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 1 ] = val2;
480 // wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 2 ] = 0xaaaa0000;
481 }
482 }
483 450
484 451 void init_waveform_rings( void )
485 452 {
General Comments 0
You need to be logged in to leave comments. Login now