##// END OF EJS Templates
HK emission using the directive...
paul -
r55:278c7d92e10c default
parent child
Show More
@@ -1,6 +1,6
1 #############################################################################
1 #############################################################################
2 # Makefile for building: bin/fsw
2 # Makefile for building: bin/fsw
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Mon Nov 4 07:05:32 2013
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Tue Nov 5 13:12:35 2013
4 # Project: fsw-qt.pro
4 # Project: fsw-qt.pro
5 # Template: app
5 # Template: app
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
1 NO CONTENT: modified file, binary diff hidden
NO CONTENT: modified file, binary diff hidden
@@ -1,6 +1,6
1 <?xml version="1.0" encoding="UTF-8"?>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE QtCreatorProject>
2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by QtCreator 2.8.0, 2013-11-04T07:04:49. -->
3 <!-- Written by QtCreator 2.8.1, 2013-11-05T13:11:18. -->
4 <qtcreator>
4 <qtcreator>
5 <data>
5 <data>
6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
@@ -84,6 +84,8 rtems_task Init( rtems_task_argument ign
84 //send_console_outputs_on_apbuart_port();
84 //send_console_outputs_on_apbuart_port();
85 set_apbuart_scaler_reload_register(REGS_ADDR_APBUART, APBUART_SCALER_RELOAD_VALUE);
85 set_apbuart_scaler_reload_register(REGS_ADDR_APBUART, APBUART_SCALER_RELOAD_VALUE);
86
86
87 reset_wfp_burst_enable(); // stop the waveform picker if it was running
88
87 init_parameter_dump();
89 init_parameter_dump();
88 init_local_mode_parameters();
90 init_local_mode_parameters();
89 init_housekeeping_parameters();
91 init_housekeeping_parameters();
@@ -390,7 +392,7 int create_all_tasks( void ) // create a
390 {
392 {
391 status = rtems_task_create(
393 status = rtems_task_create(
392 Task_name[TASKID_SEND], TASK_PRIORITY_SEND, RTEMS_MINIMUM_STACK_SIZE,
394 Task_name[TASKID_SEND], TASK_PRIORITY_SEND, RTEMS_MINIMUM_STACK_SIZE,
393 RTEMS_DEFAULT_MODES | RTEMS_NO_PREEMPT,
395 RTEMS_DEFAULT_MODES,
394 RTEMS_DEFAULT_ATTRIBUTES, &Task_id[TASKID_SEND]
396 RTEMS_DEFAULT_ATTRIBUTES, &Task_id[TASKID_SEND]
395 );
397 );
396 }
398 }
@@ -7,12 +7,13
7
7
8 #include "fsw_misc.h"
8 #include "fsw_misc.h"
9
9
10 char *DumbMessages[6] = {"in DUMB *** default", // RTEMS_EVENT_0
10 char *DumbMessages[7] = {"in DUMB *** default", // RTEMS_EVENT_0
11 "in DUMB *** timecode_irq_handler", // RTEMS_EVENT_1
11 "in DUMB *** timecode_irq_handler", // RTEMS_EVENT_1
12 "in DUMB *** waveforms_isr", // RTEMS_EVENT_2
12 "in DUMB *** waveforms_isr", // RTEMS_EVENT_2
13 "in DUMB *** in SMIQ *** Error sending event to AVF0", // RTEMS_EVENT_3
13 "in DUMB *** in SMIQ *** Error sending event to AVF0", // RTEMS_EVENT_3
14 "in DUMB *** spectral_matrices_isr *** Error sending event to SMIQ", // RTEMS_EVENT_4
14 "in DUMB *** spectral_matrices_isr *** Error sending event to SMIQ", // RTEMS_EVENT_4
15 "in DUMB *** waveforms_simulator_isr" // RTEMS_EVENT_5
15 "in DUMB *** waveforms_simulator_isr", // RTEMS_EVENT_5
16 "ERR HK" // RTEMS_EVENT_6
16 };
17 };
17
18
18 int configure_timer(gptimer_regs_t *gptimer_regs, unsigned char timer, unsigned int clock_divider,
19 int configure_timer(gptimer_regs_t *gptimer_regs, unsigned char timer, unsigned int clock_divider,
@@ -200,6 +201,7 rtems_task hous_task(rtems_task_argument
200 status = rtems_rate_monotonic_period( HK_id, HK_PERIOD );
201 status = rtems_rate_monotonic_period( HK_id, HK_PERIOD );
201 if ( status != RTEMS_SUCCESSFUL ) {
202 if ( status != RTEMS_SUCCESSFUL ) {
202 PRINTF1( "in HOUS *** ERR period: %d\n", status);
203 PRINTF1( "in HOUS *** ERR period: %d\n", status);
204 rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_6 );
203 }
205 }
204 else {
206 else {
205 housekeeping_packet.time[0] = (unsigned char) (time_management_regs->coarse_time>>24);
207 housekeeping_packet.time[0] = (unsigned char) (time_management_regs->coarse_time>>24);
@@ -213,7 +215,7 rtems_task hous_task(rtems_task_argument
213 spacewire_update_statistics();
215 spacewire_update_statistics();
214
216
215 // SEND PACKET
217 // SEND PACKET
216 status = rtems_message_queue_send( queue_id, &housekeeping_packet,
218 status = rtems_message_queue_urgent( queue_id, &housekeeping_packet,
217 PACKET_LENGTH_HK + CCSDS_TC_TM_PACKET_OFFSET + CCSDS_PROTOCOLE_EXTRA_BYTES);
219 PACKET_LENGTH_HK + CCSDS_TC_TM_PACKET_OFFSET + CCSDS_PROTOCOLE_EXTRA_BYTES);
218 if (status != RTEMS_SUCCESSFUL) {
220 if (status != RTEMS_SUCCESSFUL) {
219 PRINTF1("in HOUS *** ERR send: %d\n", status)
221 PRINTF1("in HOUS *** ERR send: %d\n", status)
@@ -247,7 +249,8 rtems_task dumb_task( rtems_task_argumen
247 BOOT_PRINTF("in DUMB *** \n")
249 BOOT_PRINTF("in DUMB *** \n")
248
250
249 while(1){
251 while(1){
250 rtems_event_receive(RTEMS_EVENT_0 | RTEMS_EVENT_1 | RTEMS_EVENT_2 | RTEMS_EVENT_3 | RTEMS_EVENT_4 | RTEMS_EVENT_5,
252 rtems_event_receive(RTEMS_EVENT_0 | RTEMS_EVENT_1 | RTEMS_EVENT_2 | RTEMS_EVENT_3
253 | RTEMS_EVENT_4 | RTEMS_EVENT_5 | RTEMS_EVENT_6,
251 RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &event_out); // wait for an RTEMS_EVENT
254 RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &event_out); // wait for an RTEMS_EVENT
252 intEventOut = (unsigned int) event_out;
255 intEventOut = (unsigned int) event_out;
253 for ( i=0; i<32; i++)
256 for ( i=0; i<32; i++)
@@ -256,7 +259,7 rtems_task dumb_task( rtems_task_argumen
256 {
259 {
257 coarse_time = time_management_regs->coarse_time;
260 coarse_time = time_management_regs->coarse_time;
258 fine_time = time_management_regs->fine_time;
261 fine_time = time_management_regs->fine_time;
259 printf("in DUMB *** time = coarse: %x, fine: %x, %s\n", coarse_time, fine_time, DumbMessages[i]);
262 printf("in DUMB *** coarse: %x, fine: %x, %s\n", coarse_time, fine_time, DumbMessages[i]);
260 }
263 }
261 }
264 }
262 }
265 }
@@ -1087,25 +1087,6 void reset_waveform_picker_regs()
1087 #endif
1087 #endif
1088 }
1088 }
1089
1089
1090 void reset_waveform_picker_regs_alt()
1091 {
1092 waveform_picker_regs_alt->data_shaping = 0x01; // 0x00 00 *** R1 R0 SP1 SP0 BW
1093 waveform_picker_regs_alt->run_burst_enable = 0x00; // 0x04 01 *** [run *** burst f2, f1, f0 *** enable f3, f2, f1, f0 ]
1094 waveform_picker_regs_alt->addr_data_f0 = (int) (wf_snap_f0); // 0x08
1095 waveform_picker_regs_alt->addr_data_f1 = (int) (wf_snap_f1); // 0x0c
1096 waveform_picker_regs_alt->addr_data_f2 = (int) (wf_snap_f2); // 0x10
1097 waveform_picker_regs_alt->addr_data_f3 = (int) (wf_cont_f3); // 0x14
1098 waveform_picker_regs_alt->status = 0x00; // 0x18
1099 waveform_picker_regs_alt->delta_snapshot = 0x12800; // 0x1c
1100 waveform_picker_regs_alt->delta_f0 = 0x3f5; // 0x20 *** 1013
1101 waveform_picker_regs_alt->delta_f0_2 = 0x7; // 0x24 *** 7
1102 waveform_picker_regs_alt->delta_f1 = 0x3c0; // 0x28 *** 960
1103 waveform_picker_regs_alt->delta_f2 = 0x12200; // 0x2c *** 74240
1104 waveform_picker_regs_alt->nb_data_by_buffer = 0x1802; // 0x30 *** 2048 * 3 + 2
1105 waveform_picker_regs_alt->snapshot_param = 0x7ff; // 0x34 *** 2048 -1
1106 waveform_picker_regs_alt->start_date = 0x00;
1107 }
1108
1109 //*****************
1090 //*****************
1110 // local parameters
1091 // local parameters
1111 void set_local_sbm1_nb_cwf_max()
1092 void set_local_sbm1_nb_cwf_max()
General Comments 0
You need to be logged in to leave comments. Login now