Skip to content
Snippets Groups Projects
Commit df9d1b64 authored by Carlo Alessandro Nicolau's avatar Carlo Alessandro Nicolau
Browse files

[in progress] Added startup sequence, checking with CLB

parent 4b729d48
No related branches found
No related tags found
No related merge requests found
......@@ -11,7 +11,7 @@ sys.path.insert(0, '../codegen')
import commands
from utils import mls
from analogvariables import *
from bpsentities.descriptors import PayloadFieldEnum, PayloadFieldU8, PayloadFieldU16, PayloadFieldU32
from entities.descriptors import PayloadFieldEnum, PayloadFieldU8, PayloadFieldU16, PayloadFieldU32
from commutils import *
import os
......@@ -93,8 +93,15 @@ if __name__ == '__main__':
sys.stdout = f
switch_list = commands.SwitchList()
analog_variable_list = commands.AnalogVariableList()
digital_variable_list = commands.DigitalVariableList()
analog_variable_list = commands.AnalogVariableList(
_var_enum_index_start=1,
_alarm_enum_index_start=1)
digital_variable_list = commands.DigitalVariableList(
_var_enum_index_start=max(analog_variable_list.get_var_enum_indexes())+1,
_alarm_enum_index_start=max(analog_variable_list.get_alarm_enum_indexes())+1)
user_pin_list = commands.UserPinList()
commands = commands.CommandList(switch_list, analog_variable_list, digital_variable_list, user_pin_list)
......
......@@ -27,6 +27,7 @@ void init_adcreader(void);
void start_irqs(void);
void sensors_acquire_offsets(void);
void alarms_enable(void);
void du_base_powersequence(void);
void manage_incoming_data(void);
void _delay_seconds(uint8_t _seconds);
......@@ -50,6 +51,9 @@ void main(void) {
// enable alarms
alarms_enable();
// du-base power up
du_base_powersequence();
// enter main loop
while(1) {
......@@ -120,6 +124,28 @@ void alarms_enable(void) {
// (see variables.h in generated/sources)
}
void du_base_powersequence(void) {
// wait 5 seconds
_delay_seconds(5);
// power on WWRS-A
switch_SWITCH_GLRA_set(SWITCHSTATE_CLOSED);
// wait 120 seconds (the WWRS should configure in about 60 seconds)
_delay_seconds(120);
// power on WWRS-B
switch_SWITCH_GLRB_set(SWITCHSTATE_CLOSED);
// wait 120 seconds (the WWRS should configure in about 60 seconds)
_delay_seconds(120);
// power on CLB
switch_SWITCH_PWB_set(SWITCHSTATE_CLOSED);
}
void manage_incoming_data(void) {
// check if a new byte is present in serial port receive buffer
if(serialport_dataready) {
......
......@@ -136,7 +136,7 @@
<targetPluginBoard></targetPluginBoard>
<platformTool>noID</platformTool>
<languageToolchain>XC8</languageToolchain>
<languageToolchainVersion>2.00</languageToolchainVersion>
<languageToolchainVersion>2.20</languageToolchainVersion>
<platform>2</platform>
</toolsSet>
<packs>
......@@ -277,7 +277,7 @@
<targetPluginBoard></targetPluginBoard>
<platformTool>ICD3PlatformTool</platformTool>
<languageToolchain>XC8</languageToolchain>
<languageToolchainVersion>2.00</languageToolchainVersion>
<languageToolchainVersion>2.20</languageToolchainVersion>
<platform>2</platform>
</toolsSet>
<packs>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment