]> rtime.felk.cvut.cz Git - rpp-test-sw.git/commitdiff
Added command to set and read HOUT port
authorMichal Horn <hornmich@fel.cvut.cz>
Tue, 4 Sep 2012 17:17:32 +0000 (19:17 +0200)
committerMichal Horn <hornmich@fel.cvut.cz>
Tue, 4 Sep 2012 17:17:32 +0000 (19:17 +0200)
Modified currnet setters and getters
Comments added
Code cleaned up

59 files changed:
CommandStoring.dil
CommandStoring.hcg
Debug/CmdProcTISCI.map
Debug/CmdProcTISCI.out
Debug/ccsObjs.opt
Debug/makefile
Debug/source/adc.obj
Debug/source/can.obj
Debug/source/ccsSrcs.opt
Debug/source/cmd_proc_freertos_tms570.obj
Debug/source/cmdio_std_line.obj
Debug/source/cmdio_tisci.obj
Debug/source/commands.obj
Debug/source/commands.pp
Debug/source/din.obj
Debug/source/dma.obj
Debug/source/esm.obj
Debug/source/gio.obj
Debug/source/het.obj
Debug/source/hout.obj [new file with mode: 0644]
Debug/source/hout.pp [new file with mode: 0644]
Debug/source/mibspi.obj
Debug/source/mout.obj
Debug/source/notification.obj
Debug/source/os_croutine.obj
Debug/source/os_heap.obj
Debug/source/os_list.obj
Debug/source/os_port.obj
Debug/source/os_queue.obj
Debug/source/os_tasks.obj
Debug/source/os_timer.obj
Debug/source/pinmux.obj
Debug/source/sci.obj
Debug/source/subdir_rules.mk
Debug/source/subdir_vars.mk
Debug/source/sys_main.obj
Debug/source/sys_phantom.obj
Debug/source/sys_selftest.obj
Debug/source/sys_startup.obj
Debug/source/system.obj
include/cmd_proc_freertos_tms570.h
include/cmdio_tisci.h
include/din.h
include/hout.h [new file with mode: 0644]
include/mout.h
include/sys_vim.h
source/adc.c
source/cmd_proc_freertos_tms570.c
source/cmdio_std_line.c
source/cmdio_tisci.c
source/commands.c
source/din.c
source/het.c
source/hout.c [new file with mode: 0644]
source/mout.c
source/notification.c
source/sci.c
source/sys_main.c
source/sys_startup.c

index 22788f6b161bb4dfed601608f9013b7790d9aac2..4579b02345ce28bcc99d8364ed5f063648221579 100644 (file)
@@ -1,4 +1,4 @@
-# TMS570LS3137ZWT 08/30/12 15:16:52\r
+# TMS570LS3137ZWT 09/03/12 16:06:41\r
 # \r
 ARCH=TMS570LS3137ZWT\r
 # \r
@@ -667,7 +667,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_79_INT_ENABLE.VALUE=0
 DRIVER.SYSTEM.VAR.VIM_PARITY_AVAILABLE.VALUE=TRUE\r
 DRIVER.SYSTEM.VAR.SAFETY_INIT_CAN3_RAMPARITYCHECK_ENA.VALUE=1\r
 DRIVER.SYSTEM.VAR.SAFETY_INIT_RAMECC_SELFCHECK_ENA.VALUE=1\r
-DRIVER.SYSTEM.VAR.ADC2_ENABLE.VALUE=0\r
+DRIVER.SYSTEM.VAR.ADC2_ENABLE.VALUE=1\r
 DRIVER.SYSTEM.VAR.CLKT_VCLK2_FREQ.VALUE=80.000\r
 DRIVER.SYSTEM.VAR.FLASH_DATA_2_WAIT_STATE_FREQ.VALUE=150.0\r
 DRIVER.SYSTEM.VAR.VIM_CHANNEL_5_MAPPING.VALUE=5\r
@@ -753,7 +753,7 @@ DRIVER.SYSTEM.VAR.CORE_MPU_REGION_9_SUB_7_DISABLE.VALUE=0
 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_8_TYPE.VALUE=DEVICE_NONSHAREABLE\r
 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_2_SUB_5_DISABLE.VALUE=0\r
 DRIVER.SYSTEM.VAR.VIM_CHANNEL_100_INT_PRAGMA_ENABLE.VALUE=1\r
-DRIVER.SYSTEM.VAR.VIM_CHANNEL_51_INT_ENABLE.VALUE=0\r
+DRIVER.SYSTEM.VAR.VIM_CHANNEL_51_INT_ENABLE.VALUE=1\r
 DRIVER.SYSTEM.VAR.VIM_CHANNEL_43_INT_ENABLE.VALUE=0\r
 DRIVER.SYSTEM.VAR.VIM_CHANNEL_35_INT_ENABLE.VALUE=1\r
 DRIVER.SYSTEM.VAR.VIM_CHANNEL_27_INT_ENABLE.VALUE=0\r
@@ -4157,9 +4157,9 @@ DRIVER.ADC.VAR.ADC1_GROUP1_FIFO_SIZE.VALUE=16
 DRIVER.ADC.VAR.ADC1_GROUP2_DISCHARGE_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_SAMPLE_PRESCALER.VALUE=0\r
 DRIVER.ADC.VAR.ADC1_GROUP1_LENGTH.VALUE=16\r
-DRIVER.ADC.VAR.ADC2_GROUP1_ID_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_ID_ENABLE.VALUE=0x00000020\r
 DRIVER.ADC.VAR.ADC1_GROUP2_CONVERSION_TIME.VALUE=1.300\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN4_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN4_ENABLE.VALUE=0x00000010\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN11_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN7_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_ALT_TRIG.VALUE=0\r
@@ -4199,7 +4199,7 @@ DRIVER.ADC.VAR.ADC2_ACTUAL_CYCLE_TIME.VALUE=100.00
 DRIVER.ADC.VAR.ADC2_GROUP1_SAMPLE_PRESCALER.VALUE=0\r
 DRIVER.ADC.VAR.ADC2_GROUP1_PIN9_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP1_SAMPLE_TIME.VALUE=200.00\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN2_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN2_ENABLE.VALUE=0x00000004\r
 DRIVER.ADC.VAR.ADC2_GROUP1_TRIGGER_MODE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN5_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP2_DISCHARGE_PRESCALER.VALUE=0\r
@@ -4208,7 +4208,7 @@ DRIVER.ADC.VAR.ADC1_GROUP2_PIN9_ENABLE.VALUE=0x00000000
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN19_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_DISCHARGE_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_RAM_PARITY_ENA.VALUE=0x00000005\r
-DRIVER.ADC.VAR.ADC2_GROUP1_SCAN_TIME.VALUE=0.000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_SCAN_TIME.VALUE=312.500\r
 DRIVER.ADC.VAR.ADC2_GROUP0_CHANNEL_TOTAL_TIME.VALUE=0.000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_SAMPLE_TIME.VALUE=200.00\r
 DRIVER.ADC.VAR.ADC2_GROUP0_LENGTH.VALUE=16\r
@@ -4222,7 +4222,7 @@ DRIVER.ADC.VAR.ADC1_GROUP1_PIN16_ENABLE.VALUE=0x00000000
 DRIVER.ADC.VAR.ADC1_GROUP1_ACTUAL_SAMPLE_TIME.VALUE=200.00\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN6_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_TRIGGER_MODE.VALUE=0x00000000\r
-DRIVER.ADC.VAR.ADC1_GROUP2_CHANNEL_TOTAL_TIME.VALUE=0.000000\r
+DRIVER.ADC.VAR.ADC1_GROUP2_CHANNEL_TOTAL_TIME.VALUE=1.500000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_DISCHARGE_TIME.VALUE=0.00\r
 DRIVER.ADC.VAR.ADC2_LENGTH.VALUE=64\r
 DRIVER.ADC.VAR.ADC2_GROUP0_DISCHARGE_ENABLE.VALUE=0x00000000\r
@@ -4239,7 +4239,7 @@ DRIVER.ADC.VAR.ADC2_GROUP0_BND.VALUE=8
 DRIVER.ADC.VAR.ADC1_GROUP1_SCAN_TIME.VALUE=687.500\r
 DRIVER.ADC.VAR.ADC1_GROUP0_RESOLUTION.VALUE=12_BIT\r
 DRIVER.ADC.VAR.ADC2_GROUP2_FIFO_SIZE.VALUE=16\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN7_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN7_ENABLE.VALUE=0x00000080\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN14_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_HW_TRIGGER_SOURCE.VALUE=EVENT\r
 DRIVER.ADC.VAR.ADC2_GROUP1_BND.VALUE=8\r
@@ -4258,7 +4258,7 @@ DRIVER.ADC.VAR.ADC2_GROUP2_PIN15_ENABLE.VALUE=0x00000000
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN0_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_CONTINUOUS_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN10_ENABLE.VALUE=0x00000000\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PINS.VALUE=0\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PINS.VALUE=6\r
 DRIVER.ADC.VAR.ADC1_GROUP1_PIN22_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP1_PIN14_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN4_ENABLE.VALUE=0x00000000\r
@@ -4279,7 +4279,7 @@ DRIVER.ADC.VAR.ADC1_GROUP2_LENGTH.VALUE=32
 DRIVER.ADC.VAR.ADC1_GROUP0_BND.VALUE=8\r
 DRIVER.ADC.VAR.ADC2_GROUP2_CHANNEL_TOTAL_TIME.VALUE=0.000000\r
 DRIVER.ADC.VAR.ADC2_GROUP2_CONTINUOUS_ENABLE.VALUE=0x00000000\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN5_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN5_ENABLE.VALUE=0x00000020\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN12_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN8_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_TRIGGER_EDGE_ENABLE.VALUE=0x00000000\r
@@ -4311,7 +4311,7 @@ DRIVER.ADC.VAR.ADC2_GROUP0_PIN2_ENABLE.VALUE=0x00000000
 DRIVER.ADC.VAR.ADC2_GROUP0_RAM_PARITY_ENA.VALUE=0\r
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN24_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN16_ENABLE.VALUE=0x00000000\r
-DRIVER.ADC.VAR.ADC1_GROUP2_ID_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC1_GROUP2_ID_ENABLE.VALUE=0x00000020\r
 DRIVER.ADC.VAR.ADC2_GROUP2_PIN6_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP1_PIN9_ENABLE.VALUE=0x00000200\r
 DRIVER.ADC.VAR.ADC1_GROUP1_CONTINUOUS_ENABLE.VALUE=0x00000000\r
@@ -4323,7 +4323,7 @@ DRIVER.ADC.VAR.ADC1_GROUP0_LENGTH.VALUE=16
 DRIVER.ADC.VAR.ADC2_GROUP1_CONVERSION_TIME.VALUE=1.300\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PINS.VALUE=0\r
 DRIVER.ADC.VAR.ADC1_GROUP0_ACTUAL_SAMPLE_TIME.VALUE=200.00\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN3_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN3_ENABLE.VALUE=0x00000008\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN10_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP0_ID_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN6_ENABLE.VALUE=0x00000000\r
@@ -4387,19 +4387,19 @@ DRIVER.ADC.VAR.ADC2_GROUP0_PIN5_ENABLE.VALUE=0x00000000
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN19_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_PRESCALE.VALUE=7\r
 DRIVER.ADC.VAR.ADC2_GROUP0_ACTUAL_SAMPLE_TIME.VALUE=200.00\r
-DRIVER.ADC.VAR.ADC1_GROUP2_PINS.VALUE=0\r
+DRIVER.ADC.VAR.ADC1_GROUP2_PINS.VALUE=1\r
 DRIVER.ADC.VAR.ADC1_LENGTH.VALUE=64\r
 DRIVER.ADC.VAR.ADC2_GROUP2_PIN9_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN20_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP2_PIN12_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP2_SAMPLE_TIME.VALUE=200.00\r
-DRIVER.ADC.VAR.ADC2_GROUP1_CHANNEL_TOTAL_TIME.VALUE=0.000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_CHANNEL_TOTAL_TIME.VALUE=9.312500\r
 DRIVER.ADC.VAR.ADC2_GROUP2_PIN2_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP0_CONTINUOUS_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP1_PIN5_ENABLE.VALUE=0x00000020\r
 DRIVER.ADC.VAR.ADC1_GROUP2_ACTUAL_SAMPLE_TIME.VALUE=200.00\r
 DRIVER.ADC.VAR.ADC1_GROUP0_SCAN_TIME.VALUE=0.000\r
-DRIVER.ADC.VAR.ADC2_GROUP1_PIN6_ENABLE.VALUE=0x00000000\r
+DRIVER.ADC.VAR.ADC2_GROUP1_PIN6_ENABLE.VALUE=0x00000040\r
 DRIVER.ADC.VAR.ADC2_GROUP0_PIN13_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC2_GROUP0_TRIGGER_EDGE_ENABLE.VALUE=0x00000000\r
 DRIVER.ADC.VAR.ADC1_GROUP0_PIN9_ENABLE.VALUE=0x00000000\r
@@ -4887,7 +4887,7 @@ DRIVER.HET.VAR.HET1_BIT18_ANDSHARE.VALUE=0x00000000
 DRIVER.HET.VAR.HET2_BIT15_DOUT.VALUE=0\r
 DRIVER.HET.VAR.HET2_PWM0_PERIOD_PRESCALER.VALUE=159872\r
 DRIVER.HET.VAR.HET1_EDGE4_EVENT.VALUE=1\r
-DRIVER.HET.VAR.HET1_BIT20_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT20_DIR.VALUE=0x00100000\r
 DRIVER.HET.VAR.HET1_BIT12_DIR.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET2_BIT12_PULDIS.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_EDGE5_POLARITY.VALUE=0\r
@@ -4961,7 +4961,7 @@ DRIVER.HET.VAR.HET1_BIT10_PSL.VALUE=0x00000400
 DRIVER.HET.VAR.HET2_PWM7_DUTY_LVL.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_EDGE0_BOTH.VALUE=0\r
 DRIVER.HET.VAR.HET1_BIT30_DIR.VALUE=0x00000000\r
-DRIVER.HET.VAR.HET1_BIT22_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT22_DIR.VALUE=0x00400000\r
 DRIVER.HET.VAR.HET1_BIT14_DIR.VALUE=0x00004000\r
 DRIVER.HET.VAR.HET1_INT_X0.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET2_EDGE2_POLARITY.VALUE=0\r
@@ -5055,7 +5055,7 @@ DRIVER.HET.VAR.HET1_EDGE5_EVENT.VALUE=1
 DRIVER.HET.VAR.HET1_EDGE1_BOTH.VALUE=0\r
 DRIVER.HET.VAR.HET1_PWM5_PERIOD_LVL.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_BIT24_DIR.VALUE=0x00000000\r
-DRIVER.HET.VAR.HET1_BIT16_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT16_DIR.VALUE=0x00010000\r
 DRIVER.HET.VAR.HET2_PWM1_POLARITY.VALUE=3\r
 DRIVER.HET.VAR.HET2_BIT18_ANDSHARE.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_EDGE0_INTENA.VALUE=0x00000000\r
@@ -5094,7 +5094,7 @@ DRIVER.HET.VAR.HET1_BIT13_PSL.VALUE=0x00002000
 DRIVER.HET.VAR.HET1_LR_TIME.VALUE=800.000\r
 DRIVER.HET.VAR.HET2_EDGE0_LVL.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_PWM3_ACTION.VALUE=3\r
-DRIVER.HET.VAR.HET1_BIT25_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT25_DIR.VALUE=0x02000000\r
 DRIVER.HET.VAR.HET1_BIT21_PULL.VALUE=1\r
 DRIVER.HET.VAR.HET1_BIT17_DIR.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_BIT13_PULL.VALUE=1\r
@@ -5135,7 +5135,7 @@ DRIVER.HET.VAR.HET2_EDGE1_LVL.VALUE=0x00000000
 DRIVER.HET.VAR.HET2_PWM7_PERIOD_LVL.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_EDGE2_BOTH.VALUE=0\r
 DRIVER.HET.VAR.HET1_BIT26_DIR.VALUE=0x00000000\r
-DRIVER.HET.VAR.HET1_BIT18_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT18_DIR.VALUE=0x00040000\r
 DRIVER.HET.VAR.HET2_PWM1_DUTY_INTENA.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET2_BIT16_XORSHARE.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET2_BIT5_PULDIS.VALUE=0x00000000\r
@@ -5261,7 +5261,7 @@ DRIVER.HET.VAR.HET1_BIT25_PSL.VALUE=0x02000000
 DRIVER.HET.VAR.HET1_BIT17_PSL.VALUE=0x00020000\r
 DRIVER.HET.VAR.HET2_EDGE4_LVL.VALUE=0x00000000\r
 DRIVER.HET.VAR.HET1_BIT31_PULL.VALUE=1\r
-DRIVER.HET.VAR.HET1_BIT29_DIR.VALUE=0x00000000\r
+DRIVER.HET.VAR.HET1_BIT29_DIR.VALUE=0x20000000\r
 DRIVER.HET.VAR.HET1_BIT23_PULL.VALUE=1\r
 DRIVER.HET.VAR.HET1_BIT15_PULL.VALUE=1\r
 DRIVER.HET.VAR.HET1_BIT0_DIR.VALUE=0x00000000\r
index 2a40a40f9d9af36d1278351ade3126fe9b0b822f..9e3cfeb76137d8e79a6215c62252ba13129572a4 100644 (file)
       <HDRMIBSPI>\r
         <NAME>mibspi.h</NAME>\r
       </HDRMIBSPI>\r
-      <SRCMIBSPI/>\r
+      <SRCMIBSPI>\r
+        <NAME>mibspi.c</NAME>\r
+      </SRCMIBSPI>\r
       <HDRSPI>\r
         <NAME>spi.h</NAME>\r
       </HDRSPI>\r
         <NAME>dmm.h</NAME>\r
       </HDRDMM>\r
       <SRCDMM>\r
-        <NAME>dmm.c</NAME>\r
-      </SRCDMM>\r
+        </SRCDMM>\r
       <HDREMIF>\r
         <NAME>emif.h</NAME>\r
       </HDREMIF>\r
         <PATH>include\mibspi.h</PATH>\r
       </HDRMIBSPI>\r
       <SRCMIBSPI>\r
-        <PATH/>\r
+        <PATH>source\mibspi.c</PATH>\r
       </SRCMIBSPI>\r
     </FILENAMES>\r
   </MIBSPI>\r
         <PATH>include\dmm.h</PATH>\r
       </HDRDMM>\r
       <SRCDMM>\r
-        <PATH>source\dmm.c</PATH>\r
+        <PATH></PATH>\r
       </SRCDMM>\r
     </FILENAMES>\r
   </DMM>\r
index d782003b3ae793c4491ea136b0f8ba847d6d8742..f9672e8363c27646e2ce019071fa31cd7b150f4a 100644 (file)
@@ -1,10 +1,10 @@
 ******************************************************************************
                   TMS470 Linker Unix v4.9.1                    
 ******************************************************************************
->> Linked Thu Aug 30 15:34:53 2012
+>> Linked Tue Sep  4 19:06:02 2012
 
 OUTPUT FILE NAME:   <CmdProcTISCI.out>
-ENTRY POINT SYMBOL: "_c_int00"  address: 0000a460
+ENTRY POINT SYMBOL: "_c_int00"  address: 0000ad38
 
 
 MEMORY CONFIGURATION
@@ -12,25 +12,25 @@ MEMORY CONFIGURATION
          name            origin    length      used     unused   attr    fill
 ----------------------  --------  ---------  --------  --------  ----  --------
   VECTORS               00000000   00000020  00000020  00000000     X
-  FLASH0                00000020   0017ffe0  00010715  0016f8cb  R  X
+  FLASH0                00000020   0017ffe0  00010ead  0016f133  R  X
   FLASH1                00180000   00180000  00000000  00180000  R  X
   STACKS                08000000   00001500  00000000  00001500  RW  
-  RAM                   08001500   00026b00  0000438c  00022774  RW  
+  RAM                   08001500   00026b00  000043a8  00022758  RW  
 
 
 SEGMENT ALLOCATION MAP
 
 run origin  load origin   length   init length attrs members
 ----------  ----------- ---------- ----------- ----- -------
-00000000    00000000    00010738   00010738    r-x
+00000000    00000000    00010ed8   00010ed8    r-x
   00000000    00000000    00000020   00000020    r-x .intvecs
-  00000020    00000020    0000f638   0000f638    r-x .text
-  0000f658    0000f658    00000f75   00000f75    r-- .const
-  000105d0    000105d0    00000168   00000168    r-- .cinit
-08001500    08001500    0000415c   00000000    rw-
-  08001500    08001500    0000415c   00000000    rw- .bss
-08005660    08005660    00000230   00000230    rw-
-  08005660    08005660    00000230   00000230    rw- .data
+  00000020    00000020    0000ffc4   0000ffc4    r-x .text
+  0000ffe8    0000ffe8    00000d59   00000d59    r-- .const
+  00010d48    00010d48    00000190   00000190    r-- .cinit
+08001500    08001500    00004158   00000000    rw-
+  08001500    08001500    00004158   00000000    rw- .bss
+08005658    08005658    00000250   00000250    rw-
+  08005658    08005658    00000250   00000250    rw- .data
 
 
 SECTION ALLOCATION MAP
@@ -41,115 +41,112 @@ section   page    origin      length       input sections
 .intvecs   0    00000000    00000020     
                   00000000    00000020     sys_intvecs.obj (.intvecs)
 
-.text      0    00000020    0000f638     
+.text      0    00000020    0000ffc4     
                   00000020    00002d4c     can.obj (.text)
-                  00002d6c    000014c8     sys_selftest.obj (.text)
-                  00004234    00001460     os_tasks.obj (.text)
-                  00005694    000010b4     commands.obj (.text)
-                  00006748    00000b48     os_queue.obj (.text)
-                  00007290    00000b18     cmd_proc.obj (.text)
-                  00007da8    000009e6     rtsv7R4_T_be_v3D16_eabi.lib : _scanfi.obj (.text)
-                  0000878e    00000002     --HOLE-- [fill = 0]
-                  00008790    00000878     adc.obj (.text)
-                  00009008    0000078c     het.obj (.text)
-                  00009794    00000694     mibspi.obj (.text)
-                  00009e28    00000638     os_port.obj (.text)
-                  0000a460    000005ac     sys_startup.obj (.text:retain)
-                  0000aa0c    00000540     sci.obj (.text)
-                  0000af4c    0000043c     esm.obj (.text)
-                  0000b388    000003cc     cmd_io_line.obj (.text)
-                  0000b754    000003bc     cmdio_tisci.obj (.text)
-                  0000bb10    00000384     sci.obj (.text:retain)
-                  0000be94    00000384     sys_core.obj (.text)
-                  0000c218    0000030c     pinmux.obj (.text)
-                  0000c524    00000308     system.obj (.text)
-                  0000c82c    000002e0     can.obj (.text:retain)
-                  0000cb0c    000002b8     i2str.obj (.text)
-                  0000cdc4    00000284     gio.obj (.text)
-                  0000d048    00000240     os_list.obj (.text)
-                  0000d288    00000238     notification.obj (.text)
-                  0000d4c0    00000220     esm.obj (.text:retain)
-                  0000d6e0    000001f4     rtsv7R4_T_be_v3D16_eabi.lib : ull_div_t2.obj (.text)
-                  0000d8d4    000001e4                                 : strtod.obj (.text)
-                  0000dab8    000001e0                                 : strtold.obj (.text)
-                  0000dc98    000001dc                                 : strtoll.obj (.text)
-                  0000de74    000001d8     adc.obj (.text:retain)
-                  0000e04c    000001d4     cmd_io.obj (.text)
-                  0000e220    00000180     cmd_proc_freertos_tms570.obj (.text)
-                  0000e3a0    0000017c     rtsv7R4_T_be_v3D16_eabi.lib : strtoull.obj (.text)
-                  0000e51c    00000178     mibspi.obj (.text:retain)
-                  0000e694    0000016c     os_portasm.obj (.text)
-                  0000e800    0000015c     het.obj (.text:retain)
-                  0000e95c    00000150     cmd_proc_run.obj (.text)
-                  0000eaac    00000130     rtsv7R4_T_be_v3D16_eabi.lib : strtol.obj (.text)
-                  0000ebdc    00000110                                 : strtoul.obj (.text)
-                  0000ecec    000000e8     os_heap.obj (.text)
-                  0000edd4    000000d8     mout.obj (.text)
-                  0000eeac    000000c8     gio.obj (.text:retain)
-                  0000ef74    000000c0     dabort.obj (.text)
-                  0000f034    000000b8     rtsv7R4_T_be_v3D16_eabi.lib : sscanf.obj (.text)
-                  0000f0ec    0000009c                                 : memcpy_t2.obj (.text)
-                  0000f188    00000078                                 : memset_t2.obj (.text)
-                  0000f200    00000074     sys_main.obj (.text)
-                  0000f274    00000060     rtsv7R4_T_be_v3D16_eabi.lib : copy_decompress_rle.obj (.text)
-                  0000f2d4    00000054                                 : u_div32.obj (.text)
-                  0000f328    00000050                                 : atoi.obj (.text)
-                  0000f378    00000050                                 : atol.obj (.text)
-                  0000f3c8    0000004c                                 : cpy_tbl.obj (.text)
-                  0000f414    00000044                                 : exit.obj (.text)
-                  0000f458    00000040                                 : strtok.obj (.text)
-                  0000f498    00000030                                 : strncpy.obj (.text)
-                  0000f4c8    0000002c     din.obj (.text)
-                  0000f4f4    0000002a     rtsv7R4_T_be_v3D16_eabi.lib : strspn.obj (.text)
-                  0000f51e    00000026                                 : strncmp.obj (.text)
-                  0000f544    00000020                                 : strcspn.obj (.text)
-                  0000f564    00000018                                 : _lock.obj (.text)
-                  0000f57c    00000018                                 : ll_mul_t2.obj (.text)
-                  0000f594    00000018                                 : strcmp.obj (.text)
-                  0000f5ac    00000018                                 : strrchr.obj (.text)
-                  0000f5c4    00000016                                 : strchr.obj (.text)
-                  0000f5da    00000014                                 : strlen.obj (.text)
-                  0000f5ee    00000012                                 : copy_zero_init.obj (.text:decompress:ZI)
-                  0000f600    00000010                                 : isalnum.obj (.text)
-                  0000f610    00000010                                 : isdigit.obj (.text)
-                  0000f620    00000010                                 : isspace.obj (.text)
-                  0000f630    00000010                                 : strcpy.obj (.text)
-                  0000f640    0000000e                                 : copy_decompress_none.obj (.text:decompress:none)
-                  0000f64e    00000006                                 : copy_decompress_rle.obj (.text:decompress:rle24)
-                  0000f654    00000004     sys_phantom.obj (.text:retain)
+                  00002d6c    00001828     commands.obj (.text)
+                  00004594    000014c8     sys_selftest.obj (.text)
+                  00005a5c    00001460     os_tasks.obj (.text)
+                  00006ebc    00000b48     os_queue.obj (.text)
+                  00007a04    00000b18     cmd_proc.obj (.text)
+                  0000851c    000009e6     rtsv7R4_T_be_v3D16_eabi.lib : _scanfi.obj (.text)
+                  00008f02    00000002     --HOLE-- [fill = 0]
+                  00008f04    000009d8     adc.obj (.text)
+                  000098dc    00000790     het.obj (.text)
+                  0000a06c    00000694     mibspi.obj (.text)
+                  0000a700    00000638     os_port.obj (.text)
+                  0000ad38    000005b0     sys_startup.obj (.text:retain)
+                  0000b2e8    00000540     sci.obj (.text)
+                  0000b828    0000043c     esm.obj (.text)
+                  0000bc64    000003cc     cmd_io_line.obj (.text)
+                  0000c030    000003bc     cmdio_tisci.obj (.text)
+                  0000c3ec    00000384     sci.obj (.text:retain)
+                  0000c770    00000384     sys_core.obj (.text)
+                  0000caf4    0000030c     pinmux.obj (.text)
+                  0000ce00    00000308     system.obj (.text)
+                  0000d108    000002e0     can.obj (.text:retain)
+                  0000d3e8    000002b8     i2str.obj (.text)
+                  0000d6a0    00000284     gio.obj (.text)
+                  0000d924    00000240     os_list.obj (.text)
+                  0000db64    00000238     notification.obj (.text)
+                  0000dd9c    00000220     esm.obj (.text:retain)
+                  0000dfbc    000001f4     rtsv7R4_T_be_v3D16_eabi.lib : ull_div_t2.obj (.text)
+                  0000e1b0    000001e4                                 : strtod.obj (.text)
+                  0000e394    000001e0                                 : strtold.obj (.text)
+                  0000e574    000001dc                                 : strtoll.obj (.text)
+                  0000e750    000001d4     cmd_io.obj (.text)
+                  0000e924    000001c8     adc.obj (.text:retain)
+                  0000eaec    00000180     cmd_proc_freertos_tms570.obj (.text)
+                  0000ec6c    0000017c     rtsv7R4_T_be_v3D16_eabi.lib : strtoull.obj (.text)
+                  0000ede8    00000178     mibspi.obj (.text:retain)
+                  0000ef60    0000016c     os_portasm.obj (.text)
+                  0000f0cc    0000015c     het.obj (.text:retain)
+                  0000f228    00000150     cmd_proc_run.obj (.text)
+                  0000f378    00000130     rtsv7R4_T_be_v3D16_eabi.lib : strtol.obj (.text)
+                  0000f4a8    00000110                                 : strtoul.obj (.text)
+                  0000f5b8    000000e8     os_heap.obj (.text)
+                  0000f6a0    000000d8     hout.obj (.text)
+                  0000f778    000000d8     mout.obj (.text)
+                  0000f850    000000c8     gio.obj (.text:retain)
+                  0000f918    000000c0     dabort.obj (.text)
+                  0000f9d8    000000b8     rtsv7R4_T_be_v3D16_eabi.lib : sscanf.obj (.text)
+                  0000fa90    0000009c                                 : memcpy_t2.obj (.text)
+                  0000fb2c    00000078                                 : memset_t2.obj (.text)
+                  0000fba4    00000060                                 : copy_decompress_rle.obj (.text)
+                  0000fc04    0000005c     sys_main.obj (.text)
+                  0000fc60    00000054     rtsv7R4_T_be_v3D16_eabi.lib : u_div32.obj (.text)
+                  0000fcb4    00000050                                 : atoi.obj (.text)
+                  0000fd04    00000050                                 : atol.obj (.text)
+                  0000fd54    0000004c                                 : cpy_tbl.obj (.text)
+                  0000fda0    00000044                                 : exit.obj (.text)
+                  0000fde4    00000040                                 : strtok.obj (.text)
+                  0000fe24    00000030                                 : strncpy.obj (.text)
+                  0000fe54    0000002c     din.obj (.text)
+                  0000fe80    0000002a     rtsv7R4_T_be_v3D16_eabi.lib : strspn.obj (.text)
+                  0000feaa    00000026                                 : strncmp.obj (.text)
+                  0000fed0    00000020                                 : strcspn.obj (.text)
+                  0000fef0    00000018                                 : _lock.obj (.text)
+                  0000ff08    00000018                                 : ll_mul_t2.obj (.text)
+                  0000ff20    00000018                                 : strcmp.obj (.text)
+                  0000ff38    00000018                                 : strrchr.obj (.text)
+                  0000ff50    00000016                                 : strchr.obj (.text)
+                  0000ff66    00000014                                 : strlen.obj (.text)
+                  0000ff7a    00000012                                 : copy_zero_init.obj (.text:decompress:ZI)
+                  0000ff8c    00000010                                 : isalnum.obj (.text)
+                  0000ff9c    00000010                                 : isdigit.obj (.text)
+                  0000ffac    00000010                                 : isspace.obj (.text)
+                  0000ffbc    00000010                                 : strcpy.obj (.text)
+                  0000ffcc    0000000e                                 : copy_decompress_none.obj (.text:decompress:none)
+                  0000ffda    00000006                                 : copy_decompress_rle.obj (.text:decompress:rle24)
+                  0000ffe0    00000004     sys_phantom.obj (.text:retain)
 
-.const     0    0000f658    00000f75     
-                  0000f658    0000048c     commands.obj (.const:.string)
-                  0000fae4    000003a0     het.obj (.const:het1PROGRAM)
-                  0000fe84    00000204     sys_startup.obj (.const:s_vim_init)
-                  00010088    000001ef     commands.obj (.const)
-                  00010277    00000001     --HOLE-- [fill = 0]
-                  00010278    00000101     rtsv7R4_T_be_v3D16_eabi.lib : ctype.obj (.const:_ctypes_)
-                  00010379    00000007     --HOLE-- [fill = 0]
-                  00010380    00000050                                 : strtod.obj (.const:digits)
-                  000103d0    00000050                                 : strtold.obj (.const:digits)
-                  00010420    00000048                                 : strtod.obj (.const:powerof10)
-                  00010468    00000048                                 : strtold.obj (.const:powerof10)
-                  000104b0    00000038     cmd_proc_freertos_tms570.obj (.const:$P$T0$1)
-                  000104e8    00000030     adc.obj (.const)
-                  00010518    00000026     commands.obj (.const:$P$T1$2)
-                  0001053e    00000002     --HOLE-- [fill = 0]
-                  00010540    00000023     commands.obj (.const:$P$T2$3)
-                  00010563    00000001     --HOLE-- [fill = 0]
-                  00010564    00000020     can.obj (.const)
-                  00010584    00000020     het.obj (.const)
-                  000105a4    0000001c     cmdio_std_line.obj (.const)
-                  000105c0    0000000d     rtsv7R4_T_be_v3D16_eabi.lib : _scanfi.obj (.const)
+.const     0    0000ffe8    00000d59     
+                  0000ffe8    000003e4     commands.obj (.const:.string)
+                  000103cc    000003a0     het.obj (.const:het1PROGRAM)
+                  0001076c    00000204     sys_startup.obj (.const:s_vim_init)
+                  00010970    00000101     rtsv7R4_T_be_v3D16_eabi.lib : ctype.obj (.const:_ctypes_)
+                  00010a71    00000003     --HOLE-- [fill = 0]
+                  00010a74    000000c8     commands.obj (.const)
+                  00010b3c    00000004     --HOLE-- [fill = 0]
+                  00010b40    00000050     rtsv7R4_T_be_v3D16_eabi.lib : strtod.obj (.const:digits)
+                  00010b90    00000050                                 : strtold.obj (.const:digits)
+                  00010be0    00000048                                 : strtod.obj (.const:powerof10)
+                  00010c28    00000048                                 : strtold.obj (.const:powerof10)
+                  00010c70    00000038     cmd_proc_freertos_tms570.obj (.const:$P$T0$1)
+                  00010ca8    00000030     adc.obj (.const)
+                  00010cd8    00000020     can.obj (.const)
+                  00010cf8    00000020     het.obj (.const)
+                  00010d18    0000001c     cmdio_std_line.obj (.const)
+                  00010d34    0000000d     rtsv7R4_T_be_v3D16_eabi.lib : _scanfi.obj (.const)
 
-.cinit     0    000105d0    00000168     
-                  000105d0    0000013d     (.cinit..data.load) [load image, compression = rle]
-                  0001070d    00000003     --HOLE-- [fill = 0]
-                  00010710    0000000c     (__TI_handler_table)
-                  0001071c    00000004     --HOLE-- [fill = 0]
-                  00010720    00000008     (.cinit..bss.load) [load image, compression = zero_init]
-                  00010728    00000010     (__TI_cinit_table)
+.cinit     0    00010d48    00000190     
+                  00010d48    00000165     (.cinit..data.load) [load image, compression = rle]
+                  00010ead    00000003     --HOLE-- [fill = 0]
+                  00010eb0    0000000c     (__TI_handler_table)
+                  00010ebc    00000004     --HOLE-- [fill = 0]
+                  00010ec0    00000008     (.cinit..bss.load) [load image, compression = zero_init]
+                  00010ec8    00000010     (__TI_cinit_table)
 
-.bss       0    08001500    0000415c     UNINITIALIZED
+.bss       0    08001500    00004158     UNINITIALIZED
                   08001500    00003fa0     os_heap.obj (.bss:xHeap)
                   080054a0    00000064     os_tasks.obj (.bss:pxReadyTasksLists)
                   08005504    00000058     os_tasks.obj (.bss)
@@ -157,37 +154,40 @@ section   page    origin      length       input sections
                   080055b0    00000054     cmdio_std_line.obj (.bss:ed_line_out_std)
                   08005604    0000001c     sci.obj (.bss)
                   08005620    00000018     cmdio_tisci.obj (.bss)
-                  08005638    00000018     commands.obj (.bss)
-                  08005650    00000008     cmd_proc_freertos_tms570.obj (.bss)
-                  08005658    00000004     rtsv7R4_T_be_v3D16_eabi.lib : strtok.obj (.bss)
+                  08005638    00000014     commands.obj (.bss)
+                  0800564c    00000008     cmd_proc_freertos_tms570.obj (.bss)
+                  08005654    00000004     rtsv7R4_T_be_v3D16_eabi.lib : strtok.obj (.bss)
 
-.data      0    08005660    00000230     
-                  08005660    00000080     rtsv7R4_T_be_v3D16_eabi.lib : xvalues.obj (.data)
-                  080056e0    00000070                                 : xlvalues.obj (.data)
-                  08005750    0000003c     commands.obj (.data)
-                  0800578c    00000030     commands.obj (.data:cmd_list_main)
-                  080057bc    00000030     cmdio_std_line.obj (.data)
-                  080057ec    00000030     mout.obj (.data:moutPorts)
-                  0800581c    00000030     os_tasks.obj (.data)
-                  0800584c    0000001c     cmdio_tisci.obj (.data)
-                  08005868    0000000c     mout.obj (.data)
-                  08005874    00000008     rtsv7R4_T_be_v3D16_eabi.lib : _lock.obj (.data)
-                  0800587c    00000008                                 : exit.obj (.data)
-                  08005884    00000004     os_heap.obj (.data)
-                  08005888    00000004     os_port.obj (.data)
-                  0800588c    00000004     rtsv7R4_T_be_v3D16_eabi.lib : errno.obj (.data)
+.data      0    08005658    00000250     
+                  08005658    00000080     rtsv7R4_T_be_v3D16_eabi.lib : xvalues.obj (.data)
+                  080056d8    00000070                                 : xlvalues.obj (.data)
+                  08005748    00000030     cmdio_std_line.obj (.data)
+                  08005778    00000030     hout.obj (.data:houtPorts)
+                  080057a8    00000030     mout.obj (.data:moutPorts)
+                  080057d8    00000030     os_tasks.obj (.data)
+                  08005808    00000028     din.obj (.data)
+                  08005830    00000024     commands.obj (.data:cmd_list_main)
+                  08005854    0000001c     cmdio_tisci.obj (.data)
+                  08005870    0000000c     hout.obj (.data)
+                  0800587c    0000000c     mout.obj (.data)
+                  08005888    00000008     rtsv7R4_T_be_v3D16_eabi.lib : _lock.obj (.data)
+                  08005890    00000008                                 : exit.obj (.data)
+                  08005898    00000004     commands.obj (.data)
+                  0800589c    00000004     os_heap.obj (.data)
+                  080058a0    00000004     os_port.obj (.data)
+                  080058a4    00000004     rtsv7R4_T_be_v3D16_eabi.lib : errno.obj (.data)
 
 
 LINKER GENERATED COPY TABLES
 
-__TI_cinit_table @ 00010728 records: 2, size/record: 8, table size: 16
-       .data: load addr=000105d0, load size=0000013d bytes, run addr=08005660, run size=00000230 bytes, compression=rle
-       .bss: load addr=00010720, load size=00000008 bytes, run addr=08001500, run size=0000415c bytes, compression=zero_init
+__TI_cinit_table @ 00010ec8 records: 2, size/record: 8, table size: 16
+       .data: load addr=00010d48, load size=00000165 bytes, run addr=08005658, run size=00000250 bytes, compression=rle
+       .bss: load addr=00010ec0, load size=00000008 bytes, run addr=08001500, run size=00004158 bytes, compression=zero_init
 
 
 LINKER GENERATED HANDLER TABLE
 
-__TI_handler_table @ 00010710 records: 3, size/record: 4, table size: 12
+__TI_handler_table @ 00010eb0 records: 3, size/record: 4, table size: 12
        index: 0, handler: __TI_zero_init
        index: 1, handler: __TI_decompress_rle24
        index: 2, handler: __TI_decompress_none
@@ -197,126 +197,126 @@ GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
 
 address    name
 --------   ----
-0000f415   C$$EXIT
-08005660   _Denorm
-08005670   _Eps
-0800588c   _Errno
-08005680   _Hugeval
-08005690   _Inf
-080056e0   _LDenorm
-080056f0   _LEps
-08005700   _LInf
-08005710   _LNan
-08005730   _LRteps
-08005720   _LSnan
-08005740   _LXbig
-08005748   _LZero
-080056a0   _Nan
-080056c0   _Rteps
-080056b0   _Snan
-080056d0   _Xbig
-080056d8   _Zero
-00010728   __TI_CINIT_Base
-00010738   __TI_CINIT_Limit
-00010710   __TI_Handler_Table_Base
-0001071c   __TI_Handler_Table_Limit
-0000c210   __TI_PINIT_Base
-0000c214   __TI_PINIT_Limit
-0000f641   __TI_decompress_none
-0000f64f   __TI_decompress_rle24
+0000fda1   C$$EXIT
+08005658   _Denorm
+08005668   _Eps
+080058a4   _Errno
+08005678   _Hugeval
+08005688   _Inf
+080056d8   _LDenorm
+080056e8   _LEps
+080056f8   _LInf
+08005708   _LNan
+08005728   _LRteps
+08005718   _LSnan
+08005738   _LXbig
+08005740   _LZero
+08005698   _Nan
+080056b8   _Rteps
+080056a8   _Snan
+080056c8   _Xbig
+080056d0   _Zero
+00010ec8   __TI_CINIT_Base
+00010ed8   __TI_CINIT_Limit
+00010eb0   __TI_Handler_Table_Base
+00010ebc   __TI_Handler_Table_Limit
+0000caec   __TI_PINIT_Base
+0000caf0   __TI_PINIT_Limit
+0000ffcd   __TI_decompress_none
+0000ffdb   __TI_decompress_rle24
 00000000   __TI_static_base__
-0000f5ef   __TI_zero_init
-0000f57d   __aeabi_lmul
-0000f189   __aeabi_memclr
-0000f189   __aeabi_memclr4
-0000f189   __aeabi_memclr8
-0000f0ed   __aeabi_memcpy
-0000f0ed   __aeabi_memcpy4
-0000f0ed   __aeabi_memcpy8
-0000f18b   __aeabi_memset
-0000f18b   __aeabi_memset4
-0000f18b   __aeabi_memset8
-0000f2d4   __aeabi_uidivmod
-0000d6e1   __aeabi_uldivmod
+0000ff7b   __TI_zero_init
+0000ff09   __aeabi_lmul
+0000fb2d   __aeabi_memclr
+0000fb2d   __aeabi_memclr4
+0000fb2d   __aeabi_memclr8
+0000fa91   __aeabi_memcpy
+0000fa91   __aeabi_memcpy4
+0000fa91   __aeabi_memcpy8
+0000fb2f   __aeabi_memset
+0000fb2f   __aeabi_memset4
+0000fb2f   __aeabi_memset8
+0000fc60   __aeabi_uidivmod
+0000dfbd   __aeabi_uldivmod
 ffffffff   __binit__
 ffffffff   __c_args__
-0000a460   _c_int00
-0800587c   _cleanup_ptr
-0000c138   _coreClearAuxiliaryDataFault_
-0000c154   _coreClearAuxiliaryInstructionFault_
-0000c100   _coreClearDataFaultAddress_
-0000c0c8   _coreClearDataFault_
-0000c11c   _coreClearInstructionFaultAddress_
-0000c0e4   _coreClearInstructionFault_
-0000c02c   _coreDisableEventBusExport_
-0000c090   _coreDisableFlashEcc_
-0000c05c   _coreDisableRamEcc_
-0000c014   _coreEnableEventBusExport_
-0000c074   _coreEnableFlashEcc_
-0000c0a8   _coreEnableIrqVicOffset_
-0000c044   _coreEnableRamEcc_
-0000bffc   _coreEnableVfp_
-0000c130   _coreGetAuxiliaryDataFault_
-0000c14c   _coreGetAuxiliaryInstructionFault_
-0000c0f8   _coreGetDataFaultAddress_
-0000c0c0   _coreGetDataFault_
-0000c114   _coreGetInstructionFaultAddress_
-0000c0dc   _coreGetInstructionFault_
-0000be94   _coreInitRegisters_
-0000bf94   _coreInitStackPointer_
-00010278   _ctypes_
-0000ef74   _dabort
-0000c170   _disable_FIQ_interrupt_
-0000c178   _disable_IRQ_interrupt_
-0000c168   _disable_interrupt_
-08005880   _dtors_ptr
-0000c180   _enable_interrupt_
-0000c188   _esmCcmErrorsClear_
-0000bfe0   _getCPSRValue_
-0000bfe8   _gotoCPUIdle_
-08005874   _lock
-00002e84   _memoryInit_
-0000f571   _nop
-0000f56b   _register_lock
-0000f565   _register_unlock
-00008475   _scanfi
-08005878   _unlock
-0000f419   abort
-08005640   adc1Data
-0000de74   adc1Group0Interrupt
-0000dec0   adc1Group1Interrupt
-0000df00   adc1Group2Interrupt
-00003b74   adc1ParityCheck
-0000df4c   adc2Group0Interrupt
-0000df98   adc2Group1Interrupt
-0000dfe4   adc2Group2Interrupt
-00003be0   adc2ParityCheck
-00008bb8   adcCalibration
+0000ad38   _c_int00
+08005890   _cleanup_ptr
+0000ca14   _coreClearAuxiliaryDataFault_
+0000ca30   _coreClearAuxiliaryInstructionFault_
+0000c9dc   _coreClearDataFaultAddress_
+0000c9a4   _coreClearDataFault_
+0000c9f8   _coreClearInstructionFaultAddress_
+0000c9c0   _coreClearInstructionFault_
+0000c908   _coreDisableEventBusExport_
+0000c96c   _coreDisableFlashEcc_
+0000c938   _coreDisableRamEcc_
+0000c8f0   _coreEnableEventBusExport_
+0000c950   _coreEnableFlashEcc_
+0000c984   _coreEnableIrqVicOffset_
+0000c920   _coreEnableRamEcc_
+0000c8d8   _coreEnableVfp_
+0000ca0c   _coreGetAuxiliaryDataFault_
+0000ca28   _coreGetAuxiliaryInstructionFault_
+0000c9d4   _coreGetDataFaultAddress_
+0000c99c   _coreGetDataFault_
+0000c9f0   _coreGetInstructionFaultAddress_
+0000c9b8   _coreGetInstructionFault_
+0000c770   _coreInitRegisters_
+0000c870   _coreInitStackPointer_
+00010970   _ctypes_
+0000f918   _dabort
+0000ca4c   _disable_FIQ_interrupt_
+0000ca54   _disable_IRQ_interrupt_
+0000ca44   _disable_interrupt_
+08005894   _dtors_ptr
+0000ca5c   _enable_interrupt_
+0000ca64   _esmCcmErrorsClear_
+0000c8bc   _getCPSRValue_
+0000c8c4   _gotoCPUIdle_
+08005888   _lock
+000046ac   _memoryInit_
+0000fefd   _nop
+0000fef7   _register_lock
+0000fef1   _register_unlock
+00008be9   _scanfi
+0800588c   _unlock
+0000fda5   abort
+0000e924   adc1Group0Interrupt
+0000e970   adc1Group1Interrupt
+0000e9b0   adc1Group2Interrupt
+0000539c   adc1ParityCheck
+0000e9fc   adc2Group0Interrupt
+0000ea48   adc2Group1Interrupt
+0000ea88   adc2Group2Interrupt
+00005408   adc2ParityCheck
+00009444   adcCalibration
+08005640   adcData
 0800563c   adcDataConverted
-00008f84   adcDisableNotification
-00008f34   adcEnableNotification
-00008984   adcGetData
-00008790   adcInit
-00008b88   adcIsConversionComplete
-00008b58   adcIsFifoFull
-00008d94   adcMidPointCalibration
-0000d2d0   adcNotification
-0000895c   adcResetFiFo
-000088ac   adcStartConversion
-00008934   adcStopConversion
-0000f329   atoi
-0000f379   atol
+00009810   adcDisableNotification
+000097c0   adcEnableNotification
+00009210   adcGetData
+00008f04   adcInit
+00009414   adcIsConversionComplete
+000093e4   adcIsFifoFull
+00009620   adcMidPointCalibration
+0000dbac   adcNotification
+000091e8   adcResetFiFo
+00009138   adcStartConversion
+000091c0   adcStopConversion
+0000fcb5   atoi
+0000fd05   atol
 ffffffff   binit
-0000c82c   can1HighLevelInterrupt
-0000c8e8   can1LowLevelInterrupt
-00003c4c   can1ParityCheck
-0000c984   can2HighLevelInterrupt
-0000ca40   can2LowLevelInterrupt
-00003ccc   can2ParityCheck
-00003d5c   can3ParityCheck
+0000d108   can1HighLevelInterrupt
+0000d1c4   can1LowLevelInterrupt
+00005474   can1ParityCheck
+0000d260   can2HighLevelInterrupt
+0000d31c   can2LowLevelInterrupt
+000054f4   can2ParityCheck
+00005584   can3ParityCheck
 00002c8c   canDisableErrorNotification
 00002c6c   canEnableErrorNotification
-0000d38c   canErrorNotification
+0000dc68   canErrorNotification
 000029e0   canGetData
 00002c48   canGetErrorLevel
 00002c24   canGetLastError
@@ -328,313 +328,306 @@ ffffffff   binit
 00002bc8   canIsMessageBoxValid
 00002b6c   canIsRxMessageArrived
 00002b10   canIsTxMessagePending
-0000d3b0   canMessageNotification
+0000dc8c   canMessageNotification
 08005638   canMsgReceived
 000028fc   canTransmit
-00009624   capGetSignal
-00002e50   ccmFail
-00002d6c   ccmSelfCheck
-000035a0   checkB0RAMECC
-000036c4   checkB1RAMECC
-000037e4   checkFlashECC
-00003424   checkefcSelfTest
-0000b98c   clearBuffer
-0000b96c   clearInputBuffer
-0000b97c   clearOutputBuffer
-00010208   cmd_des_char
-00010220   cmd_des_charmid
-00010178   cmd_des_error
-000100e8   cmd_des_help
-00010238   cmd_des_hiddedn
-000101f0   cmd_des_num
-00010148   cmd_des_opchar_test
-000101a8   cmd_des_opchar_testro
-00010190   cmd_des_param
-000101d8   cmd_des_prefix
-000100a0   cmd_des_read
-00010088   cmd_des_setPin
-000101c0   cmd_des_test
-000100b8   cmd_des_testadcconnetion
-000100d0   cmd_des_testcanloopback
-00010160   cmd_des_testio
-00010100   cmd_des_val
-00010118   cmd_des_valro
-00010130   cmd_des_valwo
-00007ba0   cmd_do_help
-00005814   cmd_do_readADC1Values
-00005754   cmd_do_readDINValues
-00005694   cmd_do_readMOUTValues
-00005a20   cmd_do_readValues
-000079d8   cmd_do_rw_int
-00007a78   cmd_do_rw_long
-00007938   cmd_do_rw_short
-00005c34   cmd_do_setPin
-000078b4   cmd_do_stamp
-00006530   cmd_do_test
-00005fd0   cmd_do_testADC1Connection
-00006284   cmd_do_testcanloopback
-00006588   cmd_do_testcmdio
-00006514   cmd_do_testerror
-000063cc   cmd_do_testopchar
-000064a0   cmd_do_testparam
-0000b3f8   cmd_ed_line_buf
-0800584c   cmd_io_buf
-0000b628   cmd_io_line_in
-0000b530   cmd_io_line_out
-0000b510   cmd_io_line_putc
-0000b700   cmd_io_line_rdline
-0000e090   cmd_io_puts
-0000e19c   cmd_io_read_bychar
-000105a4   cmd_io_std_line
-0000e124   cmd_io_write_bychar
-08005788   cmd_list
-08005750   cmd_list_1
-08005768   cmd_list_2
-0800578c   cmd_list_main
-000077e4   cmd_num_suffix
-00007768   cmd_opchar_check
-00007b18   cmd_opchar_replong
-0000e998   cmd_processor_run
-0000f3c9   copy_in
-00002f70   cpuSelfTest
-000038b4   cpuSelfTestFail
-000038ac   custom_dabort
-0000f4e0   dinGetPort
-0000f4c8   dinSetPort
-0000392c   dmaParityCheck
-080057bc   ed_line_buf_in_std
-080057d4   ed_line_buf_out_std
+00009ef8   capGetSignal
+00004678   ccmFail
+00004594   ccmSelfCheck
+00004dc8   checkB0RAMECC
+00004eec   checkB1RAMECC
+0000500c   checkFlashECC
+00004c4c   checkefcSelfTest
+0000c268   clearBuffer
+0000c248   clearInputBuffer
+0000c258   clearOutputBuffer
+00010a74   cmd_des_getPin
+00010b1c   cmd_des_help
+00010aa4   cmd_des_read
+00010a8c   cmd_des_setPin
+00010abc   cmd_des_testadcconnetion
+00010ad4   cmd_des_testcanloopback
+00010b04   cmd_des_testhoutfail
+00010aec   cmd_des_testmoutfail
+00003aa4   cmd_do_getPin
+00008314   cmd_do_help
+00003288   cmd_do_readADC1Values
+00002e44   cmd_do_readDINValues
+00002d6c   cmd_do_readMOUTValues
+0000346c   cmd_do_readValues
+00002f10   cmd_do_read_HOUT_DIAG_Values
+00003128   cmd_do_read_HOUT_IFBK_Values
+0000814c   cmd_do_rw_int
+000081ec   cmd_do_rw_long
+000080ac   cmd_do_rw_short
+0000367c   cmd_do_setPin
+00008028   cmd_do_stamp
+00003f1c   cmd_do_testADC1Connection
+00004130   cmd_do_testcanloopback
+000042a8   cmd_do_testhoutfault
+000043a0   cmd_do_testmoutfault
+0000bcd4   cmd_ed_line_buf
+08005854   cmd_io_buf
+0000bf04   cmd_io_line_in
+0000be0c   cmd_io_line_out
+0000bdec   cmd_io_line_putc
+0000bfdc   cmd_io_line_rdline
+0000e794   cmd_io_puts
+0000e8a0   cmd_io_read_bychar
+00010d18   cmd_io_std_line
+0000e828   cmd_io_write_bychar
+08005898   cmd_list
+08005830   cmd_list_main
+00007f58   cmd_num_suffix
+00007edc   cmd_opchar_check
+0000828c   cmd_opchar_replong
+0000f264   cmd_processor_run
+0000fd55   copy_in
+00004798   cpuSelfTest
+000050dc   cpuSelfTestFail
+000050d4   custom_dabort
+08005828   dinBits
+0000fe6c   dinGetPort
+08005808   dinPorts
+0000fe54   dinSetPort
+00005154   dmaParityCheck
+08005748   ed_line_buf_in_std
+08005760   ed_line_buf_out_std
 0800555c   ed_line_in_std
 080055b0   ed_line_out_std
-000095e4   edgeDisableNotification
-000095a8   edgeEnableNotification
-0000957c   edgeGetCounter
-0000d484   edgeNotification
-00009550   edgeResetCounter
-000032ec   efcCheck
-000034bc   efcClass1Error
-000034c0   efcClass2Error
-000033fc   efcSelfTest
-00003348   efcStuckZeroTest
-0000b0fc   esmActivateNormalOperation
-0000b1e8   esmClearStatus
-0000b228   esmClearStatusBuffer
-0000b0c0   esmDisableError
-0000b138   esmDisableInterrupt
-0000b094   esmEnableError
-0000b10c   esmEnableInterrupt
-0000b078   esmError
-0000b274   esmGetStatus
-0000b2d8   esmGetStatusBuffer
-0000d288   esmGroup1Notification
-0000d294   esmGroup2Notification
-0000d4c0   esmHighInterrupt
-0000af4c   esmInit
-0000d604   esmLowInterrupt
-0000b254   esmSetCounterPreloadValue
-0000b164   esmSetInterruptLevel
-0000b0ec   esmTriggerErrorPinReset
-0000f421   exit
-000038a4   flashClass1Error
-000038a8   flashClass2Error
-000034c4   fmcBus2Check
-00003598   fmcClass1Error
-0000359c   fmcClass2Error
-00003500   fmcECCcheck
+00009eb8   edgeDisableNotification
+00009e7c   edgeEnableNotification
+00009e50   edgeGetCounter
+0000dd60   edgeNotification
+00009e24   edgeResetCounter
+00004b14   efcCheck
+00004ce4   efcClass1Error
+00004ce8   efcClass2Error
+00004c24   efcSelfTest
+00004b70   efcStuckZeroTest
+0000b9d8   esmActivateNormalOperation
+0000bac4   esmClearStatus
+0000bb04   esmClearStatusBuffer
+0000b99c   esmDisableError
+0000ba14   esmDisableInterrupt
+0000b970   esmEnableError
+0000b9e8   esmEnableInterrupt
+0000b954   esmError
+0000bb50   esmGetStatus
+0000bbb4   esmGetStatusBuffer
+0000db64   esmGroup1Notification
+0000db70   esmGroup2Notification
+0000dd9c   esmHighInterrupt
+0000b828   esmInit
+0000dee0   esmLowInterrupt
+0000bb30   esmSetCounterPreloadValue
+0000ba40   esmSetInterruptLevel
+0000b9c8   esmTriggerErrorPinReset
+0000fdad   exit
+000050cc   flashClass1Error
+000050d0   flashClass2Error
+00004cec   fmcBus2Check
+00004dc0   fmcClass1Error
+00004dc4   fmcClass2Error
+00004d28   fmcECCcheck
 08005608   g_sciTransfer
-0000b82c   genericPrint
-0000b7e4   genericRead
-0000cfe0   gioDisableNotification
-0000cfbc   gioEnableNotification
-0000cf24   gioGetBit
-0000cf4c   gioGetPort
-0000eeac   gioHighLevelInterrupt
-0000cdc4   gioInit
-0000ef0c   gioLowLevelInterrupt
-0000d408   gioNotification
-0000ceb4   gioSetBit
-0000ce94   gioSetDirection
-0000cf04   gioSetPort
-0000cf64   gioToggleBit
-0000e800   het1HighLevelInterrupt
-0000e8a8   het1LowLevelInterrupt
-0000fae4   het1PROGRAM
-000039a0   het1ParityCheck
-00003a7c   het2ParityCheck
-00009734   hetGetTimestamp
-00009008   hetInit
-0000d494   hetNotification
-00009718   hetResetTimestamp
-00003a08   htu1ParityCheck
-00003b00   htu2ParityCheck
-0000cb0c   i2str
+0000c108   genericPrint
+0000c0c0   genericRead
+0000d8bc   gioDisableNotification
+0000d898   gioEnableNotification
+0000d800   gioGetBit
+0000d828   gioGetPort
+0000f850   gioHighLevelInterrupt
+0000d6a0   gioInit
+0000f8b0   gioLowLevelInterrupt
+0000dce4   gioNotification
+0000d790   gioSetBit
+0000d770   gioSetDirection
+0000d7e0   gioSetPort
+0000d840   gioToggleBit
+0000f0cc   het1HighLevelInterrupt
+0000f174   het1LowLevelInterrupt
+000103cc   het1PROGRAM
+000051c8   het1ParityCheck
+000052a4   het2ParityCheck
+0000a008   hetGetTimestamp
+000098dc   hetInit
+0000dd70   hetNotification
+00009fec   hetResetTimestamp
+08005870   houtBits
+0000f704   houtGetPort
+08005778   houtPorts
+0000f6a0   houtSetPort
+00005230   htu1ParityCheck
+00005328   htu2ParityCheck
+0000d3e8   i2str
 0800562c   inBuffer
-0000e220   initCmdProc
-0000b754   initIoBuffer
-0000f601   isalnum
-0000f611   isdigit
-0000f621   isspace
-0000f200   main
-0000c638   mapClocks
-0000f0ed   memcpy
-0000d2a0   memoryPort0TestFailNotification
-0000d2b8   memoryPort1TestFailNotification
-0000f191   memset
-00003df0   mibspi1ParityCheck
-00003ed8   mibspi3ParityCheck
-0000e51c   mibspi5HighLevelInterrupt
-0000e5cc   mibspi5LowLevelInterrupt
-00003fd0   mibspi5ParityCheck
-00009d4c   mibspiDisableGroupNotification
-00009ca8   mibspiDisableLoopback
-00009cc4   mibspiEnableGroupNotification
-00009c74   mibspiEnableLoopback
-00009ad8   mibspiGetData
-0000d424   mibspiGroupNotification
-00009794   mibspiInit
-00009c48   mibspiIsTransferComplete
-0000d414   mibspiNotification
-000099d4   mibspiSetData
-000099b4   mibspiSetFunctional
-00009c18   mibspiTransfer
-08005868   moutBits
-0000ee38   moutGetPort
-080057ec   moutPorts
-0000edd4   moutSetPort
-0000c218   muxInit
+0000eaec   initCmdProc
+0000c030   initIoBuffer
+0000ff8d   isalnum
+0000ff9d   isdigit
+0000ffad   isspace
+0000fc04   main
+0000cf14   mapClocks
+0000fa91   memcpy
+0000db7c   memoryPort0TestFailNotification
+0000db94   memoryPort1TestFailNotification
+0000fb35   memset
+00005618   mibspi1ParityCheck
+00005700   mibspi3ParityCheck
+0000ede8   mibspi5HighLevelInterrupt
+0000ee98   mibspi5LowLevelInterrupt
+000057f8   mibspi5ParityCheck
+0000a624   mibspiDisableGroupNotification
+0000a580   mibspiDisableLoopback
+0000a59c   mibspiEnableGroupNotification
+0000a54c   mibspiEnableLoopback
+0000a3b0   mibspiGetData
+0000dd00   mibspiGroupNotification
+0000a06c   mibspiInit
+0000a520   mibspiIsTransferComplete
+0000dcf0   mibspiNotification
+0000a2ac   mibspiSetData
+0000a28c   mibspiSetFunctional
+0000a4f0   mibspiTransfer
+0800587c   moutBits
+0000f7dc   moutGetPort
+080057a8   moutPorts
+0000f778   moutSetPort
+0000caf4   muxInit
 08005620   outBuffer
-00003238   pbistIsTestCompleted
-00003254   pbistIsTestPassed
-00003290   pbistPortTestStatus
-00003130   pbistRun
-00002ff0   pbistSelfCheck
-0000312c   pbistSelfCheckFail
-00003208   pbistStop
-0000c5e0   periphInit
-0000f654   phantomInterrupt
-0000b7b4   print
-00007344   proc_cmd_line
-0000e340   processCmd
-08005650   processCmdHandler
-08005654   prompt
-0000ecec   pvPortMalloc
-00009520   pwmDisableNotification
-000094d8   pwmEnableNotification
-000093dc   pwmGetSignal
-0000d470   pwmNotification
-00009130   pwmSetDuty
-0000926c   pwmSetSignal
-000090c8   pwmStart
-000090fc   pwmStop
-0800581c   pxCurrentTCB
-00009e28   pxPortInitialiseStack
-0000b7cc   read
-0000ae10   sciDisableLoopback
-0000ae94   sciDisableNotification
-0000addc   sciEnableLoopback
-0000ae2c   sciEnableNotification
-0000bb10   sciHighLevelInterrupt
-0000aa0c   sciInit
-0000ace0   sciIsRxReady
-0000ab80   sciIsTxReady
-0000bca8   sciLowLevelInterrupt
-0000d434   sciNotification
-0000ad54   sciReceive
-0000ad2c   sciReceiveByte
-0000acfc   sciRxError
-0000abcc   sciSend
-0000ab9c   sciSendByte
-0000ab00   sciSetBaudrate
-0000aae0   sciSetFunctional
-0000c5a0   setupFlash
-0000c524   setupPLL
-00007310   skip_white
-0000f035   sscanf
-00002ec8   stcSelfCheck
-000038b0   stcSelfCheckFail
-0000f5c5   strchr
-0000f595   strcmp
-0000f631   strcpy
-0000f545   strcspn
-0000f5db   strlen
-0000f51f   strncmp
-0000f499   strncpy
-0000f5ad   strrchr
-0000f4f5   strspn
-0000d8d5   strtod
-0000f459   strtok
-0000eaad   strtol
-0000dab9   strtold
-0000dc99   strtoll
-0000ebdd   strtoul
-0000e3a1   strtoull
-0000c710   systemInit
-0000c79c   systemPowerDown
-000037dc   tcramClass1Error
-000037e0   tcramClass2Error
-0000ba10   tisci_getc
-0000b9d4   tisci_putc
-0000ba80   tisci_read
-0000ba40   tisci_write
-0000c558   trimLPO
-08005888   ulCriticalNesting
-00006ebc   uxQueueMessagesWaiting
-00006ee0   uxQueueMessagesWaitingFromISR
-00004c08   uxTaskGetNumberOfTasks
-000053e8   uxTaskGetStackHighWaterMark
-00004598   uxTaskPriorityGet
-0000d048   vListInitialise
-0000d0a0   vListInitialiseItem
-0000d140   vListInsert
-0000d0bc   vListInsertEnd
-0000d204   vListRemove
-0000a31c   vPortEndScheduler
-0000a320   vPortEnterCritical
-0000a338   vPortExitCritical
-0000ed94   vPortFree
-0000eda4   vPortInitialiseBlocks
-0000e694   vPortStartFirstTask
-0000e7ec   vPortYield
-0000e6c8   vPortYieldProcessor
-0000e750   vPreemptiveTick
-00006f00   vQueueDelete
-00004530   vTaskDelay
-00004434   vTaskDelayUntil
-00004a24   vTaskEndScheduler
-00004c1c   vTaskIncrementTick
-00005110   vTaskMissedYield
-00004ebc   vTaskPlaceOnEventList
-000055ac   vTaskPriorityDisinherit
-000054a8   vTaskPriorityInherit
-000045dc   vTaskPrioritySet
-000048e4   vTaskResume
-00005008   vTaskSetTimeOutState
-000049a8   vTaskStartScheduler
-00004778   vTaskSuspend
-00004a40   vTaskSuspendAll
-00004df4   vTaskSwitchContext
-0800564c   val
-000038b8   vimParityCheck
-0000edb4   xPortGetFreeHeapSize
-0000a308   xPortStartScheduler
-00006748   xQueueCreate
-00006934   xQueueCreateCountingSemaphore
-00006878   xQueueCreateMutex
-00006bc4   xQueueGenericReceive
-00006970   xQueueGenericSend
-00006af8   xQueueGenericSendFromISR
-000071ec   xQueueIsQueueEmptyFromISR
-00007258   xQueueIsQueueFullFromISR
-00006df0   xQueueReceiveFromISR
-00005038   xTaskCheckForTimeOut
-00004234   xTaskGenericCreate
-00005438   xTaskGetCurrentTaskHandle
-00005458   xTaskGetSchedulerState
-00004bc4   xTaskGetTickCount
-00004be4   xTaskGetTickCountFromISR
-00004850   xTaskIsTaskSuspended
-00004f30   xTaskRemoveFromEventList
-00004a54   xTaskResumeAll
+00004a60   pbistIsTestCompleted
+00004a7c   pbistIsTestPassed
+00004ab8   pbistPortTestStatus
+00004958   pbistRun
+00004818   pbistSelfCheck
+00004954   pbistSelfCheckFail
+00004a30   pbistStop
+0000cebc   periphInit
+0000ffe0   phantomInterrupt
+0000c090   print
+00007ab8   proc_cmd_line
+0000ec0c   processCmd
+0800564c   processCmdHandler
+08005650   prompt
+0000f5b8   pvPortMalloc
+00009df4   pwmDisableNotification
+00009dac   pwmEnableNotification
+00009cb0   pwmGetSignal
+0000dd4c   pwmNotification
+00009a04   pwmSetDuty
+00009b40   pwmSetSignal
+0000999c   pwmStart
+000099d0   pwmStop
+080057d8   pxCurrentTCB
+0000a700   pxPortInitialiseStack
+0000c0a8   read
+00002fe8   readADC
+0000b6ec   sciDisableLoopback
+0000b770   sciDisableNotification
+0000b6b8   sciEnableLoopback
+0000b708   sciEnableNotification
+0000c3ec   sciHighLevelInterrupt
+0000b2e8   sciInit
+0000b5bc   sciIsRxReady
+0000b45c   sciIsTxReady
+0000c584   sciLowLevelInterrupt
+0000dd10   sciNotification
+0000b630   sciReceive
+0000b608   sciReceiveByte
+0000b5d8   sciRxError
+0000b4a8   sciSend
+0000b478   sciSendByte
+0000b3dc   sciSetBaudrate
+0000b3bc   sciSetFunctional
+0000ce7c   setupFlash
+0000ce00   setupPLL
+00007a84   skip_white
+0000f9d9   sscanf
+000046f0   stcSelfCheck
+000050d8   stcSelfCheckFail
+0000ff51   strchr
+0000ff21   strcmp
+0000ffbd   strcpy
+0000fed1   strcspn
+0000ff67   strlen
+0000feab   strncmp
+0000fe25   strncpy
+0000ff39   strrchr
+0000fe81   strspn
+0000e1b1   strtod
+0000fde5   strtok
+0000f379   strtol
+0000e395   strtold
+0000e575   strtoll
+0000f4a9   strtoul
+0000ec6d   strtoull
+0000cfec   systemInit
+0000d078   systemPowerDown
+00005004   tcramClass1Error
+00005008   tcramClass2Error
+0000c2ec   tisci_getc
+0000c2b0   tisci_putc
+0000c35c   tisci_read
+0000c31c   tisci_write
+0000ce34   trimLPO
+080058a0   ulCriticalNesting
+00007630   uxQueueMessagesWaiting
+00007654   uxQueueMessagesWaitingFromISR
+00006430   uxTaskGetNumberOfTasks
+00006c10   uxTaskGetStackHighWaterMark
+00005dc0   uxTaskPriorityGet
+0000d924   vListInitialise
+0000d97c   vListInitialiseItem
+0000da1c   vListInsert
+0000d998   vListInsertEnd
+0000dae0   vListRemove
+0000abf4   vPortEndScheduler
+0000abf8   vPortEnterCritical
+0000ac10   vPortExitCritical
+0000f660   vPortFree
+0000f670   vPortInitialiseBlocks
+0000ef60   vPortStartFirstTask
+0000f0b8   vPortYield
+0000ef94   vPortYieldProcessor
+0000f01c   vPreemptiveTick
+00007674   vQueueDelete
+00005d58   vTaskDelay
+00005c5c   vTaskDelayUntil
+0000624c   vTaskEndScheduler
+00006444   vTaskIncrementTick
+00006938   vTaskMissedYield
+000066e4   vTaskPlaceOnEventList
+00006dd4   vTaskPriorityDisinherit
+00006cd0   vTaskPriorityInherit
+00005e04   vTaskPrioritySet
+0000610c   vTaskResume
+00006830   vTaskSetTimeOutState
+000061d0   vTaskStartScheduler
+00005fa0   vTaskSuspend
+00006268   vTaskSuspendAll
+0000661c   vTaskSwitchContext
+000050e0   vimParityCheck
+0000f680   xPortGetFreeHeapSize
+0000abe0   xPortStartScheduler
+00006ebc   xQueueCreate
+000070a8   xQueueCreateCountingSemaphore
+00006fec   xQueueCreateMutex
+00007338   xQueueGenericReceive
+000070e4   xQueueGenericSend
+0000726c   xQueueGenericSendFromISR
+00007960   xQueueIsQueueEmptyFromISR
+000079cc   xQueueIsQueueFullFromISR
+00007564   xQueueReceiveFromISR
+00006860   xTaskCheckForTimeOut
+00005a5c   xTaskGenericCreate
+00006c60   xTaskGetCurrentTaskHandle
+00006c80   xTaskGetSchedulerState
+000063ec   xTaskGetTickCount
+0000640c   xTaskGetTickCountFromISR
+00006078   xTaskIsTaskSuspended
+00006758   xTaskRemoveFromEventList
+0000627c   xTaskResumeAll
 
 
 GLOBAL SYMBOLS: SORTED BY Symbol Address 
@@ -656,382 +649,374 @@ address    name
 00002ce4   canIoSetPort
 00002d1c   canIoTxGetBit
 00002d38   canIoRxGetBit
-00002d6c   ccmSelfCheck
-00002e50   ccmFail
-00002e84   _memoryInit_
-00002ec8   stcSelfCheck
-00002f70   cpuSelfTest
-00002ff0   pbistSelfCheck
-0000312c   pbistSelfCheckFail
-00003130   pbistRun
-00003208   pbistStop
-00003238   pbistIsTestCompleted
-00003254   pbistIsTestPassed
-00003290   pbistPortTestStatus
-000032ec   efcCheck
-00003348   efcStuckZeroTest
-000033fc   efcSelfTest
-00003424   checkefcSelfTest
-000034bc   efcClass1Error
-000034c0   efcClass2Error
-000034c4   fmcBus2Check
-00003500   fmcECCcheck
-00003598   fmcClass1Error
-0000359c   fmcClass2Error
-000035a0   checkB0RAMECC
-000036c4   checkB1RAMECC
-000037dc   tcramClass1Error
-000037e0   tcramClass2Error
-000037e4   checkFlashECC
-000038a4   flashClass1Error
-000038a8   flashClass2Error
-000038ac   custom_dabort
-000038b0   stcSelfCheckFail
-000038b4   cpuSelfTestFail
-000038b8   vimParityCheck
-0000392c   dmaParityCheck
-000039a0   het1ParityCheck
-00003a08   htu1ParityCheck
-00003a7c   het2ParityCheck
-00003b00   htu2ParityCheck
-00003b74   adc1ParityCheck
-00003be0   adc2ParityCheck
-00003c4c   can1ParityCheck
-00003ccc   can2ParityCheck
-00003d5c   can3ParityCheck
-00003df0   mibspi1ParityCheck
-00003ed8   mibspi3ParityCheck
-00003fd0   mibspi5ParityCheck
-00004234   xTaskGenericCreate
-00004434   vTaskDelayUntil
-00004530   vTaskDelay
-00004598   uxTaskPriorityGet
-000045dc   vTaskPrioritySet
-00004778   vTaskSuspend
-00004850   xTaskIsTaskSuspended
-000048e4   vTaskResume
-000049a8   vTaskStartScheduler
-00004a24   vTaskEndScheduler
-00004a40   vTaskSuspendAll
-00004a54   xTaskResumeAll
-00004bc4   xTaskGetTickCount
-00004be4   xTaskGetTickCountFromISR
-00004c08   uxTaskGetNumberOfTasks
-00004c1c   vTaskIncrementTick
-00004df4   vTaskSwitchContext
-00004ebc   vTaskPlaceOnEventList
-00004f30   xTaskRemoveFromEventList
-00005008   vTaskSetTimeOutState
-00005038   xTaskCheckForTimeOut
-00005110   vTaskMissedYield
-000053e8   uxTaskGetStackHighWaterMark
-00005438   xTaskGetCurrentTaskHandle
-00005458   xTaskGetSchedulerState
-000054a8   vTaskPriorityInherit
-000055ac   vTaskPriorityDisinherit
-00005694   cmd_do_readMOUTValues
-00005754   cmd_do_readDINValues
-00005814   cmd_do_readADC1Values
-00005a20   cmd_do_readValues
-00005c34   cmd_do_setPin
-00005fd0   cmd_do_testADC1Connection
-00006284   cmd_do_testcanloopback
-000063cc   cmd_do_testopchar
-000064a0   cmd_do_testparam
-00006514   cmd_do_testerror
-00006530   cmd_do_test
-00006588   cmd_do_testcmdio
-00006748   xQueueCreate
-00006878   xQueueCreateMutex
-00006934   xQueueCreateCountingSemaphore
-00006970   xQueueGenericSend
-00006af8   xQueueGenericSendFromISR
-00006bc4   xQueueGenericReceive
-00006df0   xQueueReceiveFromISR
-00006ebc   uxQueueMessagesWaiting
-00006ee0   uxQueueMessagesWaitingFromISR
-00006f00   vQueueDelete
-000071ec   xQueueIsQueueEmptyFromISR
-00007258   xQueueIsQueueFullFromISR
-00007310   skip_white
-00007344   proc_cmd_line
-00007768   cmd_opchar_check
-000077e4   cmd_num_suffix
-000078b4   cmd_do_stamp
-00007938   cmd_do_rw_short
-000079d8   cmd_do_rw_int
-00007a78   cmd_do_rw_long
-00007b18   cmd_opchar_replong
-00007ba0   cmd_do_help
-00008475   _scanfi
-00008790   adcInit
-000088ac   adcStartConversion
-00008934   adcStopConversion
-0000895c   adcResetFiFo
-00008984   adcGetData
-00008b58   adcIsFifoFull
-00008b88   adcIsConversionComplete
-00008bb8   adcCalibration
-00008d94   adcMidPointCalibration
-00008f34   adcEnableNotification
-00008f84   adcDisableNotification
-00009008   hetInit
-000090c8   pwmStart
-000090fc   pwmStop
-00009130   pwmSetDuty
-0000926c   pwmSetSignal
-000093dc   pwmGetSignal
-000094d8   pwmEnableNotification
-00009520   pwmDisableNotification
-00009550   edgeResetCounter
-0000957c   edgeGetCounter
-000095a8   edgeEnableNotification
-000095e4   edgeDisableNotification
-00009624   capGetSignal
-00009718   hetResetTimestamp
-00009734   hetGetTimestamp
-00009794   mibspiInit
-000099b4   mibspiSetFunctional
-000099d4   mibspiSetData
-00009ad8   mibspiGetData
-00009c18   mibspiTransfer
-00009c48   mibspiIsTransferComplete
-00009c74   mibspiEnableLoopback
-00009ca8   mibspiDisableLoopback
-00009cc4   mibspiEnableGroupNotification
-00009d4c   mibspiDisableGroupNotification
-00009e28   pxPortInitialiseStack
-0000a308   xPortStartScheduler
-0000a31c   vPortEndScheduler
-0000a320   vPortEnterCritical
-0000a338   vPortExitCritical
-0000a460   _c_int00
-0000aa0c   sciInit
-0000aae0   sciSetFunctional
-0000ab00   sciSetBaudrate
-0000ab80   sciIsTxReady
-0000ab9c   sciSendByte
-0000abcc   sciSend
-0000ace0   sciIsRxReady
-0000acfc   sciRxError
-0000ad2c   sciReceiveByte
-0000ad54   sciReceive
-0000addc   sciEnableLoopback
-0000ae10   sciDisableLoopback
-0000ae2c   sciEnableNotification
-0000ae94   sciDisableNotification
-0000af4c   esmInit
-0000b078   esmError
-0000b094   esmEnableError
-0000b0c0   esmDisableError
-0000b0ec   esmTriggerErrorPinReset
-0000b0fc   esmActivateNormalOperation
-0000b10c   esmEnableInterrupt
-0000b138   esmDisableInterrupt
-0000b164   esmSetInterruptLevel
-0000b1e8   esmClearStatus
-0000b228   esmClearStatusBuffer
-0000b254   esmSetCounterPreloadValue
-0000b274   esmGetStatus
-0000b2d8   esmGetStatusBuffer
-0000b3f8   cmd_ed_line_buf
-0000b510   cmd_io_line_putc
-0000b530   cmd_io_line_out
-0000b628   cmd_io_line_in
-0000b700   cmd_io_line_rdline
-0000b754   initIoBuffer
-0000b7b4   print
-0000b7cc   read
-0000b7e4   genericRead
-0000b82c   genericPrint
-0000b96c   clearInputBuffer
-0000b97c   clearOutputBuffer
-0000b98c   clearBuffer
-0000b9d4   tisci_putc
-0000ba10   tisci_getc
-0000ba40   tisci_write
-0000ba80   tisci_read
-0000bb10   sciHighLevelInterrupt
-0000bca8   sciLowLevelInterrupt
-0000be94   _coreInitRegisters_
-0000bf94   _coreInitStackPointer_
-0000bfe0   _getCPSRValue_
-0000bfe8   _gotoCPUIdle_
-0000bffc   _coreEnableVfp_
-0000c014   _coreEnableEventBusExport_
-0000c02c   _coreDisableEventBusExport_
-0000c044   _coreEnableRamEcc_
-0000c05c   _coreDisableRamEcc_
-0000c074   _coreEnableFlashEcc_
-0000c090   _coreDisableFlashEcc_
-0000c0a8   _coreEnableIrqVicOffset_
-0000c0c0   _coreGetDataFault_
-0000c0c8   _coreClearDataFault_
-0000c0dc   _coreGetInstructionFault_
-0000c0e4   _coreClearInstructionFault_
-0000c0f8   _coreGetDataFaultAddress_
-0000c100   _coreClearDataFaultAddress_
-0000c114   _coreGetInstructionFaultAddress_
-0000c11c   _coreClearInstructionFaultAddress_
-0000c130   _coreGetAuxiliaryDataFault_
-0000c138   _coreClearAuxiliaryDataFault_
-0000c14c   _coreGetAuxiliaryInstructionFault_
-0000c154   _coreClearAuxiliaryInstructionFault_
-0000c168   _disable_interrupt_
-0000c170   _disable_FIQ_interrupt_
-0000c178   _disable_IRQ_interrupt_
-0000c180   _enable_interrupt_
-0000c188   _esmCcmErrorsClear_
-0000c210   __TI_PINIT_Base
-0000c214   __TI_PINIT_Limit
-0000c218   muxInit
-0000c524   setupPLL
-0000c558   trimLPO
-0000c5a0   setupFlash
-0000c5e0   periphInit
-0000c638   mapClocks
-0000c710   systemInit
-0000c79c   systemPowerDown
-0000c82c   can1HighLevelInterrupt
-0000c8e8   can1LowLevelInterrupt
-0000c984   can2HighLevelInterrupt
-0000ca40   can2LowLevelInterrupt
-0000cb0c   i2str
-0000cdc4   gioInit
-0000ce94   gioSetDirection
-0000ceb4   gioSetBit
-0000cf04   gioSetPort
-0000cf24   gioGetBit
-0000cf4c   gioGetPort
-0000cf64   gioToggleBit
-0000cfbc   gioEnableNotification
-0000cfe0   gioDisableNotification
-0000d048   vListInitialise
-0000d0a0   vListInitialiseItem
-0000d0bc   vListInsertEnd
-0000d140   vListInsert
-0000d204   vListRemove
-0000d288   esmGroup1Notification
-0000d294   esmGroup2Notification
-0000d2a0   memoryPort0TestFailNotification
-0000d2b8   memoryPort1TestFailNotification
-0000d2d0   adcNotification
-0000d38c   canErrorNotification
-0000d3b0   canMessageNotification
-0000d408   gioNotification
-0000d414   mibspiNotification
-0000d424   mibspiGroupNotification
-0000d434   sciNotification
-0000d470   pwmNotification
-0000d484   edgeNotification
-0000d494   hetNotification
-0000d4c0   esmHighInterrupt
-0000d604   esmLowInterrupt
-0000d6e1   __aeabi_uldivmod
-0000d8d5   strtod
-0000dab9   strtold
-0000dc99   strtoll
-0000de74   adc1Group0Interrupt
-0000dec0   adc1Group1Interrupt
-0000df00   adc1Group2Interrupt
-0000df4c   adc2Group0Interrupt
-0000df98   adc2Group1Interrupt
-0000dfe4   adc2Group2Interrupt
-0000e090   cmd_io_puts
-0000e124   cmd_io_write_bychar
-0000e19c   cmd_io_read_bychar
-0000e220   initCmdProc
-0000e340   processCmd
-0000e3a1   strtoull
-0000e51c   mibspi5HighLevelInterrupt
-0000e5cc   mibspi5LowLevelInterrupt
-0000e694   vPortStartFirstTask
-0000e6c8   vPortYieldProcessor
-0000e750   vPreemptiveTick
-0000e7ec   vPortYield
-0000e800   het1HighLevelInterrupt
-0000e8a8   het1LowLevelInterrupt
-0000e998   cmd_processor_run
-0000eaad   strtol
-0000ebdd   strtoul
-0000ecec   pvPortMalloc
-0000ed94   vPortFree
-0000eda4   vPortInitialiseBlocks
-0000edb4   xPortGetFreeHeapSize
-0000edd4   moutSetPort
-0000ee38   moutGetPort
-0000eeac   gioHighLevelInterrupt
-0000ef0c   gioLowLevelInterrupt
-0000ef74   _dabort
-0000f035   sscanf
-0000f0ed   __aeabi_memcpy
-0000f0ed   __aeabi_memcpy4
-0000f0ed   __aeabi_memcpy8
-0000f0ed   memcpy
-0000f189   __aeabi_memclr
-0000f189   __aeabi_memclr4
-0000f189   __aeabi_memclr8
-0000f18b   __aeabi_memset
-0000f18b   __aeabi_memset4
-0000f18b   __aeabi_memset8
-0000f191   memset
-0000f200   main
-0000f2d4   __aeabi_uidivmod
-0000f329   atoi
-0000f379   atol
-0000f3c9   copy_in
-0000f415   C$$EXIT
-0000f419   abort
-0000f421   exit
-0000f459   strtok
-0000f499   strncpy
-0000f4c8   dinSetPort
-0000f4e0   dinGetPort
-0000f4f5   strspn
-0000f51f   strncmp
-0000f545   strcspn
-0000f565   _register_unlock
-0000f56b   _register_lock
-0000f571   _nop
-0000f57d   __aeabi_lmul
-0000f595   strcmp
-0000f5ad   strrchr
-0000f5c5   strchr
-0000f5db   strlen
-0000f5ef   __TI_zero_init
-0000f601   isalnum
-0000f611   isdigit
-0000f621   isspace
-0000f631   strcpy
-0000f641   __TI_decompress_none
-0000f64f   __TI_decompress_rle24
-0000f654   phantomInterrupt
-0000fae4   het1PROGRAM
-00010088   cmd_des_setPin
-000100a0   cmd_des_read
-000100b8   cmd_des_testadcconnetion
-000100d0   cmd_des_testcanloopback
-000100e8   cmd_des_help
-00010100   cmd_des_val
-00010118   cmd_des_valro
-00010130   cmd_des_valwo
-00010148   cmd_des_opchar_test
-00010160   cmd_des_testio
-00010178   cmd_des_error
-00010190   cmd_des_param
-000101a8   cmd_des_opchar_testro
-000101c0   cmd_des_test
-000101d8   cmd_des_prefix
-000101f0   cmd_des_num
-00010208   cmd_des_char
-00010220   cmd_des_charmid
-00010238   cmd_des_hiddedn
-00010278   _ctypes_
-000105a4   cmd_io_std_line
-00010710   __TI_Handler_Table_Base
-0001071c   __TI_Handler_Table_Limit
-00010728   __TI_CINIT_Base
-00010738   __TI_CINIT_Limit
+00002d6c   cmd_do_readMOUTValues
+00002e44   cmd_do_readDINValues
+00002f10   cmd_do_read_HOUT_DIAG_Values
+00002fe8   readADC
+00003128   cmd_do_read_HOUT_IFBK_Values
+00003288   cmd_do_readADC1Values
+0000346c   cmd_do_readValues
+0000367c   cmd_do_setPin
+00003aa4   cmd_do_getPin
+00003f1c   cmd_do_testADC1Connection
+00004130   cmd_do_testcanloopback
+000042a8   cmd_do_testhoutfault
+000043a0   cmd_do_testmoutfault
+00004594   ccmSelfCheck
+00004678   ccmFail
+000046ac   _memoryInit_
+000046f0   stcSelfCheck
+00004798   cpuSelfTest
+00004818   pbistSelfCheck
+00004954   pbistSelfCheckFail
+00004958   pbistRun
+00004a30   pbistStop
+00004a60   pbistIsTestCompleted
+00004a7c   pbistIsTestPassed
+00004ab8   pbistPortTestStatus
+00004b14   efcCheck
+00004b70   efcStuckZeroTest
+00004c24   efcSelfTest
+00004c4c   checkefcSelfTest
+00004ce4   efcClass1Error
+00004ce8   efcClass2Error
+00004cec   fmcBus2Check
+00004d28   fmcECCcheck
+00004dc0   fmcClass1Error
+00004dc4   fmcClass2Error
+00004dc8   checkB0RAMECC
+00004eec   checkB1RAMECC
+00005004   tcramClass1Error
+00005008   tcramClass2Error
+0000500c   checkFlashECC
+000050cc   flashClass1Error
+000050d0   flashClass2Error
+000050d4   custom_dabort
+000050d8   stcSelfCheckFail
+000050dc   cpuSelfTestFail
+000050e0   vimParityCheck
+00005154   dmaParityCheck
+000051c8   het1ParityCheck
+00005230   htu1ParityCheck
+000052a4   het2ParityCheck
+00005328   htu2ParityCheck
+0000539c   adc1ParityCheck
+00005408   adc2ParityCheck
+00005474   can1ParityCheck
+000054f4   can2ParityCheck
+00005584   can3ParityCheck
+00005618   mibspi1ParityCheck
+00005700   mibspi3ParityCheck
+000057f8   mibspi5ParityCheck
+00005a5c   xTaskGenericCreate
+00005c5c   vTaskDelayUntil
+00005d58   vTaskDelay
+00005dc0   uxTaskPriorityGet
+00005e04   vTaskPrioritySet
+00005fa0   vTaskSuspend
+00006078   xTaskIsTaskSuspended
+0000610c   vTaskResume
+000061d0   vTaskStartScheduler
+0000624c   vTaskEndScheduler
+00006268   vTaskSuspendAll
+0000627c   xTaskResumeAll
+000063ec   xTaskGetTickCount
+0000640c   xTaskGetTickCountFromISR
+00006430   uxTaskGetNumberOfTasks
+00006444   vTaskIncrementTick
+0000661c   vTaskSwitchContext
+000066e4   vTaskPlaceOnEventList
+00006758   xTaskRemoveFromEventList
+00006830   vTaskSetTimeOutState
+00006860   xTaskCheckForTimeOut
+00006938   vTaskMissedYield
+00006c10   uxTaskGetStackHighWaterMark
+00006c60   xTaskGetCurrentTaskHandle
+00006c80   xTaskGetSchedulerState
+00006cd0   vTaskPriorityInherit
+00006dd4   vTaskPriorityDisinherit
+00006ebc   xQueueCreate
+00006fec   xQueueCreateMutex
+000070a8   xQueueCreateCountingSemaphore
+000070e4   xQueueGenericSend
+0000726c   xQueueGenericSendFromISR
+00007338   xQueueGenericReceive
+00007564   xQueueReceiveFromISR
+00007630   uxQueueMessagesWaiting
+00007654   uxQueueMessagesWaitingFromISR
+00007674   vQueueDelete
+00007960   xQueueIsQueueEmptyFromISR
+000079cc   xQueueIsQueueFullFromISR
+00007a84   skip_white
+00007ab8   proc_cmd_line
+00007edc   cmd_opchar_check
+00007f58   cmd_num_suffix
+00008028   cmd_do_stamp
+000080ac   cmd_do_rw_short
+0000814c   cmd_do_rw_int
+000081ec   cmd_do_rw_long
+0000828c   cmd_opchar_replong
+00008314   cmd_do_help
+00008be9   _scanfi
+00008f04   adcInit
+00009138   adcStartConversion
+000091c0   adcStopConversion
+000091e8   adcResetFiFo
+00009210   adcGetData
+000093e4   adcIsFifoFull
+00009414   adcIsConversionComplete
+00009444   adcCalibration
+00009620   adcMidPointCalibration
+000097c0   adcEnableNotification
+00009810   adcDisableNotification
+000098dc   hetInit
+0000999c   pwmStart
+000099d0   pwmStop
+00009a04   pwmSetDuty
+00009b40   pwmSetSignal
+00009cb0   pwmGetSignal
+00009dac   pwmEnableNotification
+00009df4   pwmDisableNotification
+00009e24   edgeResetCounter
+00009e50   edgeGetCounter
+00009e7c   edgeEnableNotification
+00009eb8   edgeDisableNotification
+00009ef8   capGetSignal
+00009fec   hetResetTimestamp
+0000a008   hetGetTimestamp
+0000a06c   mibspiInit
+0000a28c   mibspiSetFunctional
+0000a2ac   mibspiSetData
+0000a3b0   mibspiGetData
+0000a4f0   mibspiTransfer
+0000a520   mibspiIsTransferComplete
+0000a54c   mibspiEnableLoopback
+0000a580   mibspiDisableLoopback
+0000a59c   mibspiEnableGroupNotification
+0000a624   mibspiDisableGroupNotification
+0000a700   pxPortInitialiseStack
+0000abe0   xPortStartScheduler
+0000abf4   vPortEndScheduler
+0000abf8   vPortEnterCritical
+0000ac10   vPortExitCritical
+0000ad38   _c_int00
+0000b2e8   sciInit
+0000b3bc   sciSetFunctional
+0000b3dc   sciSetBaudrate
+0000b45c   sciIsTxReady
+0000b478   sciSendByte
+0000b4a8   sciSend
+0000b5bc   sciIsRxReady
+0000b5d8   sciRxError
+0000b608   sciReceiveByte
+0000b630   sciReceive
+0000b6b8   sciEnableLoopback
+0000b6ec   sciDisableLoopback
+0000b708   sciEnableNotification
+0000b770   sciDisableNotification
+0000b828   esmInit
+0000b954   esmError
+0000b970   esmEnableError
+0000b99c   esmDisableError
+0000b9c8   esmTriggerErrorPinReset
+0000b9d8   esmActivateNormalOperation
+0000b9e8   esmEnableInterrupt
+0000ba14   esmDisableInterrupt
+0000ba40   esmSetInterruptLevel
+0000bac4   esmClearStatus
+0000bb04   esmClearStatusBuffer
+0000bb30   esmSetCounterPreloadValue
+0000bb50   esmGetStatus
+0000bbb4   esmGetStatusBuffer
+0000bcd4   cmd_ed_line_buf
+0000bdec   cmd_io_line_putc
+0000be0c   cmd_io_line_out
+0000bf04   cmd_io_line_in
+0000bfdc   cmd_io_line_rdline
+0000c030   initIoBuffer
+0000c090   print
+0000c0a8   read
+0000c0c0   genericRead
+0000c108   genericPrint
+0000c248   clearInputBuffer
+0000c258   clearOutputBuffer
+0000c268   clearBuffer
+0000c2b0   tisci_putc
+0000c2ec   tisci_getc
+0000c31c   tisci_write
+0000c35c   tisci_read
+0000c3ec   sciHighLevelInterrupt
+0000c584   sciLowLevelInterrupt
+0000c770   _coreInitRegisters_
+0000c870   _coreInitStackPointer_
+0000c8bc   _getCPSRValue_
+0000c8c4   _gotoCPUIdle_
+0000c8d8   _coreEnableVfp_
+0000c8f0   _coreEnableEventBusExport_
+0000c908   _coreDisableEventBusExport_
+0000c920   _coreEnableRamEcc_
+0000c938   _coreDisableRamEcc_
+0000c950   _coreEnableFlashEcc_
+0000c96c   _coreDisableFlashEcc_
+0000c984   _coreEnableIrqVicOffset_
+0000c99c   _coreGetDataFault_
+0000c9a4   _coreClearDataFault_
+0000c9b8   _coreGetInstructionFault_
+0000c9c0   _coreClearInstructionFault_
+0000c9d4   _coreGetDataFaultAddress_
+0000c9dc   _coreClearDataFaultAddress_
+0000c9f0   _coreGetInstructionFaultAddress_
+0000c9f8   _coreClearInstructionFaultAddress_
+0000ca0c   _coreGetAuxiliaryDataFault_
+0000ca14   _coreClearAuxiliaryDataFault_
+0000ca28   _coreGetAuxiliaryInstructionFault_
+0000ca30   _coreClearAuxiliaryInstructionFault_
+0000ca44   _disable_interrupt_
+0000ca4c   _disable_FIQ_interrupt_
+0000ca54   _disable_IRQ_interrupt_
+0000ca5c   _enable_interrupt_
+0000ca64   _esmCcmErrorsClear_
+0000caec   __TI_PINIT_Base
+0000caf0   __TI_PINIT_Limit
+0000caf4   muxInit
+0000ce00   setupPLL
+0000ce34   trimLPO
+0000ce7c   setupFlash
+0000cebc   periphInit
+0000cf14   mapClocks
+0000cfec   systemInit
+0000d078   systemPowerDown
+0000d108   can1HighLevelInterrupt
+0000d1c4   can1LowLevelInterrupt
+0000d260   can2HighLevelInterrupt
+0000d31c   can2LowLevelInterrupt
+0000d3e8   i2str
+0000d6a0   gioInit
+0000d770   gioSetDirection
+0000d790   gioSetBit
+0000d7e0   gioSetPort
+0000d800   gioGetBit
+0000d828   gioGetPort
+0000d840   gioToggleBit
+0000d898   gioEnableNotification
+0000d8bc   gioDisableNotification
+0000d924   vListInitialise
+0000d97c   vListInitialiseItem
+0000d998   vListInsertEnd
+0000da1c   vListInsert
+0000dae0   vListRemove
+0000db64   esmGroup1Notification
+0000db70   esmGroup2Notification
+0000db7c   memoryPort0TestFailNotification
+0000db94   memoryPort1TestFailNotification
+0000dbac   adcNotification
+0000dc68   canErrorNotification
+0000dc8c   canMessageNotification
+0000dce4   gioNotification
+0000dcf0   mibspiNotification
+0000dd00   mibspiGroupNotification
+0000dd10   sciNotification
+0000dd4c   pwmNotification
+0000dd60   edgeNotification
+0000dd70   hetNotification
+0000dd9c   esmHighInterrupt
+0000dee0   esmLowInterrupt
+0000dfbd   __aeabi_uldivmod
+0000e1b1   strtod
+0000e395   strtold
+0000e575   strtoll
+0000e794   cmd_io_puts
+0000e828   cmd_io_write_bychar
+0000e8a0   cmd_io_read_bychar
+0000e924   adc1Group0Interrupt
+0000e970   adc1Group1Interrupt
+0000e9b0   adc1Group2Interrupt
+0000e9fc   adc2Group0Interrupt
+0000ea48   adc2Group1Interrupt
+0000ea88   adc2Group2Interrupt
+0000eaec   initCmdProc
+0000ec0c   processCmd
+0000ec6d   strtoull
+0000ede8   mibspi5HighLevelInterrupt
+0000ee98   mibspi5LowLevelInterrupt
+0000ef60   vPortStartFirstTask
+0000ef94   vPortYieldProcessor
+0000f01c   vPreemptiveTick
+0000f0b8   vPortYield
+0000f0cc   het1HighLevelInterrupt
+0000f174   het1LowLevelInterrupt
+0000f264   cmd_processor_run
+0000f379   strtol
+0000f4a9   strtoul
+0000f5b8   pvPortMalloc
+0000f660   vPortFree
+0000f670   vPortInitialiseBlocks
+0000f680   xPortGetFreeHeapSize
+0000f6a0   houtSetPort
+0000f704   houtGetPort
+0000f778   moutSetPort
+0000f7dc   moutGetPort
+0000f850   gioHighLevelInterrupt
+0000f8b0   gioLowLevelInterrupt
+0000f918   _dabort
+0000f9d9   sscanf
+0000fa91   __aeabi_memcpy
+0000fa91   __aeabi_memcpy4
+0000fa91   __aeabi_memcpy8
+0000fa91   memcpy
+0000fb2d   __aeabi_memclr
+0000fb2d   __aeabi_memclr4
+0000fb2d   __aeabi_memclr8
+0000fb2f   __aeabi_memset
+0000fb2f   __aeabi_memset4
+0000fb2f   __aeabi_memset8
+0000fb35   memset
+0000fc04   main
+0000fc60   __aeabi_uidivmod
+0000fcb5   atoi
+0000fd05   atol
+0000fd55   copy_in
+0000fda1   C$$EXIT
+0000fda5   abort
+0000fdad   exit
+0000fde5   strtok
+0000fe25   strncpy
+0000fe54   dinSetPort
+0000fe6c   dinGetPort
+0000fe81   strspn
+0000feab   strncmp
+0000fed1   strcspn
+0000fef1   _register_unlock
+0000fef7   _register_lock
+0000fefd   _nop
+0000ff09   __aeabi_lmul
+0000ff21   strcmp
+0000ff39   strrchr
+0000ff51   strchr
+0000ff67   strlen
+0000ff7b   __TI_zero_init
+0000ff8d   isalnum
+0000ff9d   isdigit
+0000ffad   isspace
+0000ffbd   strcpy
+0000ffcd   __TI_decompress_none
+0000ffdb   __TI_decompress_rle24
+0000ffe0   phantomInterrupt
+000103cc   het1PROGRAM
+00010970   _ctypes_
+00010a74   cmd_des_getPin
+00010a8c   cmd_des_setPin
+00010aa4   cmd_des_read
+00010abc   cmd_des_testadcconnetion
+00010ad4   cmd_des_testcanloopback
+00010aec   cmd_des_testmoutfail
+00010b04   cmd_des_testhoutfail
+00010b1c   cmd_des_help
+00010d18   cmd_io_std_line
+00010eb0   __TI_Handler_Table_Base
+00010ebc   __TI_Handler_Table_Limit
+00010ec8   __TI_CINIT_Base
+00010ed8   __TI_CINIT_Limit
 0800555c   ed_line_in_std
 080055b0   ed_line_out_std
 08005608   g_sciTransfer
@@ -1039,45 +1024,46 @@ address    name
 0800562c   inBuffer
 08005638   canMsgReceived
 0800563c   adcDataConverted
-08005640   adc1Data
-0800564c   val
-08005650   processCmdHandler
-08005654   prompt
-08005660   _Denorm
-08005670   _Eps
-08005680   _Hugeval
-08005690   _Inf
-080056a0   _Nan
-080056b0   _Snan
-080056c0   _Rteps
-080056d0   _Xbig
-080056d8   _Zero
-080056e0   _LDenorm
-080056f0   _LEps
-08005700   _LInf
-08005710   _LNan
-08005720   _LSnan
-08005730   _LRteps
-08005740   _LXbig
-08005748   _LZero
-08005750   cmd_list_1
-08005768   cmd_list_2
-08005788   cmd_list
-0800578c   cmd_list_main
-080057bc   ed_line_buf_in_std
-080057d4   ed_line_buf_out_std
-080057ec   moutPorts
-0800581c   pxCurrentTCB
-0800584c   cmd_io_buf
-08005868   moutBits
-08005874   _lock
-08005878   _unlock
-0800587c   _cleanup_ptr
-08005880   _dtors_ptr
-08005888   ulCriticalNesting
-0800588c   _Errno
+08005640   adcData
+0800564c   processCmdHandler
+08005650   prompt
+08005658   _Denorm
+08005668   _Eps
+08005678   _Hugeval
+08005688   _Inf
+08005698   _Nan
+080056a8   _Snan
+080056b8   _Rteps
+080056c8   _Xbig
+080056d0   _Zero
+080056d8   _LDenorm
+080056e8   _LEps
+080056f8   _LInf
+08005708   _LNan
+08005718   _LSnan
+08005728   _LRteps
+08005738   _LXbig
+08005740   _LZero
+08005748   ed_line_buf_in_std
+08005760   ed_line_buf_out_std
+08005778   houtPorts
+080057a8   moutPorts
+080057d8   pxCurrentTCB
+08005808   dinPorts
+08005828   dinBits
+08005830   cmd_list_main
+08005854   cmd_io_buf
+08005870   houtBits
+0800587c   moutBits
+08005888   _lock
+0800588c   _unlock
+08005890   _cleanup_ptr
+08005894   _dtors_ptr
+08005898   cmd_list
+080058a0   ulCriticalNesting
+080058a4   _Errno
 ffffffff   __binit__
 ffffffff   __c_args__
 ffffffff   binit
 
-[438 symbols]
+[431 symbols]
index 72667d8ecf9cbd6d7d26db68aa27ebd78558e56d..32b16b0c2c0f34007346bcdebf0301494d74f157 100644 (file)
Binary files a/Debug/CmdProcTISCI.out and b/Debug/CmdProcTISCI.out differ
index 3cf225f60aaac1eea0d147c69edf48c84be2e35b..87acd565cc04ba84e9e21db65aef3e0fc326001c 100644 (file)
@@ -1 +1 @@
-"./source/system.obj" "./source/sys_startup.obj" "./source/sys_selftest.obj" "./source/sys_pmu.obj" "./source/sys_phantom.obj" "./source/sys_mpu.obj" "./source/sys_main.obj" "./source/sys_intvecs.obj" "./source/sys_core.obj" "./source/sci.obj" "./source/pinmux.obj" "./source/os_timer.obj" "./source/os_tasks.obj" "./source/os_queue.obj" "./source/os_portasm.obj" "./source/os_port.obj" "./source/os_list.obj" "./source/os_heap.obj" "./source/os_croutine.obj" "./source/notification.obj" "./source/mout.obj" "./source/mibspi.obj" "./source/i2str.obj" "./source/het.obj" "./source/gio.obj" "./source/esm.obj" "./source/dma.obj" "./source/din.obj" "./source/dabort.obj" "./source/commands.obj" "./source/cmdio_tisci.obj" "./source/cmdio_std_line.obj" "./source/cmd_proc_run.obj" "./source/cmd_proc_freertos_tms570.obj" "./source/cmd_proc.obj" "./source/cmd_io_line.obj" "./source/cmd_io.obj" "./source/can.obj" "./source/adc.obj" -l"rtsv7R4_T_be_v3D16_eabi.lib" "../source/sys_link.cmd" 
\ No newline at end of file
+"./source/system.obj" "./source/sys_startup.obj" "./source/sys_selftest.obj" "./source/sys_pmu.obj" "./source/sys_phantom.obj" "./source/sys_mpu.obj" "./source/sys_main.obj" "./source/sys_intvecs.obj" "./source/sys_core.obj" "./source/sci.obj" "./source/pinmux.obj" "./source/os_timer.obj" "./source/os_tasks.obj" "./source/os_queue.obj" "./source/os_portasm.obj" "./source/os_port.obj" "./source/os_list.obj" "./source/os_heap.obj" "./source/os_croutine.obj" "./source/notification.obj" "./source/mout.obj" "./source/mibspi.obj" "./source/i2str.obj" "./source/hout.obj" "./source/het.obj" "./source/gio.obj" "./source/esm.obj" "./source/dma.obj" "./source/din.obj" "./source/dabort.obj" "./source/commands.obj" "./source/cmdio_tisci.obj" "./source/cmdio_std_line.obj" "./source/cmd_proc_run.obj" "./source/cmd_proc_freertos_tms570.obj" "./source/cmd_proc.obj" "./source/cmd_io_line.obj" "./source/cmd_io.obj" "./source/can.obj" "./source/adc.obj" -l"rtsv7R4_T_be_v3D16_eabi.lib" "../source/sys_link.cmd" 
\ No newline at end of file
index 1e171c3ab357cb72b909cba64150374197737422..297c13e95b922b9971ec6e7670bad1cc2fd5f444 100644 (file)
@@ -29,6 +29,7 @@ $(GEN_CMDS__FLAG) \
 "./source/mout.obj" \
 "./source/mibspi.obj" \
 "./source/i2str.obj" \
+"./source/hout.obj" \
 "./source/het.obj" \
 "./source/gio.obj" \
 "./source/esm.obj" \
@@ -158,8 +159,8 @@ CmdProcTISCI.out: $(OBJS) $(CMD_SRCS) $(GEN_CMDS)
 # Other Targets
 clean:
        -$(RM) $(TMS470_EXECUTABLE_OUTPUTS__QUOTED) "CmdProcTISCI.out"
-       -$(RM) "source/adc.pp" "source/can.pp" "source/cmd_io.pp" "source/cmd_io_line.pp" "source/cmd_proc.pp" "source/cmd_proc_freertos_tms570.pp" "source/cmd_proc_run.pp" "source/cmdio_std_line.pp" "source/cmdio_tisci.pp" "source/commands.pp" "source/din.pp" "source/dma.pp" "source/esm.pp" "source/gio.pp" "source/het.pp" "source/i2str.pp" "source/mibspi.pp" "source/mout.pp" "source/notification.pp" "source/os_croutine.pp" "source/os_heap.pp" "source/os_list.pp" "source/os_port.pp" "source/os_queue.pp" "source/os_tasks.pp" "source/os_timer.pp" "source/pinmux.pp" "source/sci.pp" "source/sys_main.pp" "source/sys_phantom.pp" "source/sys_selftest.pp" "source/sys_startup.pp" "source/system.pp" 
-       -$(RM) "source/adc.obj" "source/can.obj" "source/cmd_io.obj" "source/cmd_io_line.obj" "source/cmd_proc.obj" "source/cmd_proc_freertos_tms570.obj" "source/cmd_proc_run.obj" "source/cmdio_std_line.obj" "source/cmdio_tisci.obj" "source/commands.obj" "source/dabort.obj" "source/din.obj" "source/dma.obj" "source/esm.obj" "source/gio.obj" "source/het.obj" "source/i2str.obj" "source/mibspi.obj" "source/mout.obj" "source/notification.obj" "source/os_croutine.obj" "source/os_heap.obj" "source/os_list.obj" "source/os_port.obj" "source/os_portasm.obj" "source/os_queue.obj" "source/os_tasks.obj" "source/os_timer.obj" "source/pinmux.obj" "source/sci.obj" "source/sys_core.obj" "source/sys_intvecs.obj" "source/sys_main.obj" "source/sys_mpu.obj" "source/sys_phantom.obj" "source/sys_pmu.obj" "source/sys_selftest.obj" "source/sys_startup.obj" "source/system.obj" 
+       -$(RM) "source/adc.pp" "source/can.pp" "source/cmd_io.pp" "source/cmd_io_line.pp" "source/cmd_proc.pp" "source/cmd_proc_freertos_tms570.pp" "source/cmd_proc_run.pp" "source/cmdio_std_line.pp" "source/cmdio_tisci.pp" "source/commands.pp" "source/din.pp" "source/dma.pp" "source/esm.pp" "source/gio.pp" "source/het.pp" "source/hout.pp" "source/i2str.pp" "source/mibspi.pp" "source/mout.pp" "source/notification.pp" "source/os_croutine.pp" "source/os_heap.pp" "source/os_list.pp" "source/os_port.pp" "source/os_queue.pp" "source/os_tasks.pp" "source/os_timer.pp" "source/pinmux.pp" "source/sci.pp" "source/sys_main.pp" "source/sys_phantom.pp" "source/sys_selftest.pp" "source/sys_startup.pp" "source/system.pp" 
+       -$(RM) "source/adc.obj" "source/can.obj" "source/cmd_io.obj" "source/cmd_io_line.obj" "source/cmd_proc.obj" "source/cmd_proc_freertos_tms570.obj" "source/cmd_proc_run.obj" "source/cmdio_std_line.obj" "source/cmdio_tisci.obj" "source/commands.obj" "source/dabort.obj" "source/din.obj" "source/dma.obj" "source/esm.obj" "source/gio.obj" "source/het.obj" "source/hout.obj" "source/i2str.obj" "source/mibspi.obj" "source/mout.obj" "source/notification.obj" "source/os_croutine.obj" "source/os_heap.obj" "source/os_list.obj" "source/os_port.obj" "source/os_portasm.obj" "source/os_queue.obj" "source/os_tasks.obj" "source/os_timer.obj" "source/pinmux.obj" "source/sci.obj" "source/sys_core.obj" "source/sys_intvecs.obj" "source/sys_main.obj" "source/sys_mpu.obj" "source/sys_phantom.obj" "source/sys_pmu.obj" "source/sys_selftest.obj" "source/sys_startup.obj" "source/system.obj" 
        -$(RM) "source/dabort.pp" "source/os_portasm.pp" "source/sys_core.pp" "source/sys_intvecs.pp" "source/sys_mpu.pp" "source/sys_pmu.pp" 
        -@echo 'Finished clean'
        -@echo ' '
index f085e357e3e5d3f8c522d6ee51fb5b3f06439d23..a297ecafd2958a3f0a8d7555758a53c94421ed01 100644 (file)
Binary files a/Debug/source/adc.obj and b/Debug/source/adc.obj differ
index 558972884c6752d11404a8980287f8a43dbe2295..3f3f6523423a7c5b77f511013a019740e21f1b9a 100644 (file)
Binary files a/Debug/source/can.obj and b/Debug/source/can.obj differ
index b4200d8eeed698e2e7f3967fc9826f2fc0b1be77..9a8f740c042f6a308b10a54cacf0fe3844da1a24 100644 (file)
@@ -1 +1 @@
-"../source/adc.c" "../source/can.c" "../source/cmd_io.c" "../source/cmd_io_line.c" "../source/cmd_proc.c" "../source/cmd_proc_freertos_tms570.c" "../source/cmd_proc_run.c" "../source/cmdio_std_line.c" "../source/cmdio_tisci.c" "../source/commands.c" "../source/dabort.asm" "../source/din.c" "../source/dma.c" "../source/esm.c" "../source/gio.c" "../source/het.c" "../source/i2str.c" "../source/mibspi.c" "../source/mout.c" "../source/notification.c" "../source/os_croutine.c" "../source/os_heap.c" "../source/os_list.c" "../source/os_port.c" "../source/os_portasm.asm" "../source/os_queue.c" "../source/os_tasks.c" "../source/os_timer.c" "../source/pinmux.c" "../source/sci.c" "../source/sys_core.asm" "../source/sys_intvecs.asm" "../source/sys_main.c" "../source/sys_mpu.asm" "../source/sys_phantom.c" "../source/sys_pmu.asm" "../source/sys_selftest.c" "../source/sys_startup.c" "../source/system.c" 
\ No newline at end of file
+"../source/adc.c" "../source/can.c" "../source/cmd_io.c" "../source/cmd_io_line.c" "../source/cmd_proc.c" "../source/cmd_proc_freertos_tms570.c" "../source/cmd_proc_run.c" "../source/cmdio_std_line.c" "../source/cmdio_tisci.c" "../source/commands.c" "../source/dabort.asm" "../source/din.c" "../source/dma.c" "../source/esm.c" "../source/gio.c" "../source/het.c" "../source/hout.c" "../source/i2str.c" "../source/mibspi.c" "../source/mout.c" "../source/notification.c" "../source/os_croutine.c" "../source/os_heap.c" "../source/os_list.c" "../source/os_port.c" "../source/os_portasm.asm" "../source/os_queue.c" "../source/os_tasks.c" "../source/os_timer.c" "../source/pinmux.c" "../source/sci.c" "../source/sys_core.asm" "../source/sys_intvecs.asm" "../source/sys_main.c" "../source/sys_mpu.asm" "../source/sys_phantom.c" "../source/sys_pmu.asm" "../source/sys_selftest.c" "../source/sys_startup.c" "../source/system.c" 
\ No newline at end of file
index 8316723120f57dc2197edd19eec140f7014ba226..2422629edab83a7c8ec7d3bfdfe10cb6d4717689 100644 (file)
Binary files a/Debug/source/cmd_proc_freertos_tms570.obj and b/Debug/source/cmd_proc_freertos_tms570.obj differ
index 3e12debae4a192d6ecf15f2e4af14f7278ed84f2..f5bb418d7247e2a8d4c7388b3f674516c7b2c072 100644 (file)
Binary files a/Debug/source/cmdio_std_line.obj and b/Debug/source/cmdio_std_line.obj differ
index 532b5fa87b53a7fab182de6d0896890949fe4531..87ca9027a408e4a4d5f16407c26d1f2e72b21e2e 100644 (file)
Binary files a/Debug/source/cmdio_tisci.obj and b/Debug/source/cmdio_tisci.obj differ
index 12fc7d604af1f00750f2e5c227b83b3dcb85fe3a..50425e0356cf1ec862a022fc534ec81df092f767 100644 (file)
Binary files a/Debug/source/commands.obj and b/Debug/source/commands.obj differ
index 213b47c456816e4382f5388cc5a3106c7017b5ff..6497663f245f4b602e05ea67b6e0ea0787f74966 100644 (file)
@@ -33,6 +33,8 @@ source/commands.obj: ../include/gio.h
 source/commands.obj: /opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/string.h
 source/commands.obj: ../include/mibspi.h
 source/commands.obj: ../include/gio.h
+source/commands.obj: ../include/hout.h
+source/commands.obj: ../include/gio.h
 
 ../source/commands.c: 
 ../include/cmd_proc.h: 
@@ -67,3 +69,5 @@ source/commands.obj: ../include/gio.h
 /opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/string.h: 
 ../include/mibspi.h: 
 ../include/gio.h: 
+../include/hout.h: 
+../include/gio.h: 
index 269c7405a4a03a23bee808dab16d20a14ba82f78..490dabd950b5b22eb299386ce667675550f3d4b9 100644 (file)
Binary files a/Debug/source/din.obj and b/Debug/source/din.obj differ
index 38272db665b4f9570a178e68880c6ccb0c4a3137..7c715d2a8125e5c471e25ca2cb1e8ea0dfe1126b 100644 (file)
Binary files a/Debug/source/dma.obj and b/Debug/source/dma.obj differ
index 361e26671041ce4fa213337a86be0919e49e93bd..4f062efdf88f747c10634861ddfe3de9ff390bef 100644 (file)
Binary files a/Debug/source/esm.obj and b/Debug/source/esm.obj differ
index 586ee74ed5dfd0ca79004e7d2e663ec74bce8726..0cc543444d91708af44920a382de8d1e14e02077 100644 (file)
Binary files a/Debug/source/gio.obj and b/Debug/source/gio.obj differ
index d2e06a8a3b64993c9dbcade7f9822927616d808d..3ed2395a2d9875d6f0a8bc9dc13fd589d00513c3 100644 (file)
Binary files a/Debug/source/het.obj and b/Debug/source/het.obj differ
diff --git a/Debug/source/hout.obj b/Debug/source/hout.obj
new file mode 100644 (file)
index 0000000..6ecb2d9
Binary files /dev/null and b/Debug/source/hout.obj differ
diff --git a/Debug/source/hout.pp b/Debug/source/hout.pp
new file mode 100644 (file)
index 0000000..8702716
--- /dev/null
@@ -0,0 +1,19 @@
+# FIXED
+
+source/hout.obj: ../source/hout.c
+source/hout.obj: ../include/hout.h
+source/hout.obj: ../include/gio.h
+source/hout.obj: ../include/sys_common.h
+source/hout.obj: ../include/het.h
+source/hout.obj: ../include/gio.h
+source/hout.obj: /opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/string.h
+source/hout.obj: /opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/linkage.h
+
+../source/hout.c: 
+../include/hout.h: 
+../include/gio.h: 
+../include/sys_common.h: 
+../include/het.h: 
+../include/gio.h: 
+/opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/string.h: 
+/opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include/linkage.h: 
index e43349794b0ae8f21413788af2b7a2af106e86b5..72bdb313a8268327b1f26516c841d507668b5966 100644 (file)
Binary files a/Debug/source/mibspi.obj and b/Debug/source/mibspi.obj differ
index b3ec3690f4ad8d0dc8fff17eecd166ea2872844b..d179d8134207d19251089ad6fb74ce20e77f7725 100644 (file)
Binary files a/Debug/source/mout.obj and b/Debug/source/mout.obj differ
index 393fbc05e6b4654dd4700f8aee398f82af844635..177b7525a5fc42d2601d67cd6cd151174ca709ca 100644 (file)
Binary files a/Debug/source/notification.obj and b/Debug/source/notification.obj differ
index e7b943eb33e99be51321f69e1aa235e71fae13c3..57d54ce9a7552cfd13cbb264427d19dda260f10d 100644 (file)
Binary files a/Debug/source/os_croutine.obj and b/Debug/source/os_croutine.obj differ
index 5b2f66c4577924c7b1a93782bd127bca7e248505..664abd33f57055d360a76d12c0d392cbdb3de2e6 100644 (file)
Binary files a/Debug/source/os_heap.obj and b/Debug/source/os_heap.obj differ
index ff23479b206e50d1c02fa3d7d0a5f7e19f029f61..8920a8dbc1c3175bc4963a88a65e309ccb9d37d8 100644 (file)
Binary files a/Debug/source/os_list.obj and b/Debug/source/os_list.obj differ
index 9f4c5e1d9661969860e89e89857dc34b0ff1d7ad..d29ae293cfcb6f24bdfc3e4e6bb45b424b82696d 100644 (file)
Binary files a/Debug/source/os_port.obj and b/Debug/source/os_port.obj differ
index 41cab6342f06285e490e4a2334c376af7db61deb..558ca72444af862eb68afb698563f443d63234f9 100644 (file)
Binary files a/Debug/source/os_queue.obj and b/Debug/source/os_queue.obj differ
index 98a8be8722ffccd510da92a91568866f2363745a..32a569ad1dbbd37c6d492fae0399ab947d7b9674 100644 (file)
Binary files a/Debug/source/os_tasks.obj and b/Debug/source/os_tasks.obj differ
index fa9899de36573bde46dd9187993d2bd65a326346..1a9519c639fae7ce8c2b65bf61490c47d95e974b 100644 (file)
Binary files a/Debug/source/os_timer.obj and b/Debug/source/os_timer.obj differ
index 760619e1481775751599a599633345916c7197c1..5b5bfdfedb75ad6ed1f11130fe26513f554ae563 100644 (file)
Binary files a/Debug/source/pinmux.obj and b/Debug/source/pinmux.obj differ
index be669c26af9b3a805ec1ba7387afeaa49e0884c8..f2eae170221eaa657b3f270e80d9ba827afc3083 100644 (file)
Binary files a/Debug/source/sci.obj and b/Debug/source/sci.obj differ
index f257daff1192970e93e48c49382caf537c1c11cf..2bb31c45f9f4e58adee581b6ac53fa77fd4e3eb9 100644 (file)
@@ -115,6 +115,13 @@ source/het.obj: ../source/het.c $(GEN_OPTS) $(GEN_SRCS)
        @echo 'Finished building: $<'
        @echo ' '
 
+source/hout.obj: ../source/hout.c $(GEN_OPTS) $(GEN_SRCS)
+       @echo 'Building file: $<'
+       @echo 'Invoking: ARM Compiler'
+       "/opt/ti/ccsv5/tools/compiler/tms470_4.9.1/bin/cl470" -mv7R4 --code_state=32 --float_support=VFPv3D16 --abi=eabi -g --include_path="/opt/ti/ccsv5/tools/compiler/tms470_4.9.1/include" --include_path="../include" --diag_warning=225 --display_error_number --enum_type=packed --preproc_with_compile --preproc_dependency="source/hout.pp" --obj_directory="source" $(GEN_OPTS__FLAG) "$(shell echo $<)"
+       @echo 'Finished building: $<'
+       @echo ' '
+
 source/i2str.obj: ../source/i2str.c $(GEN_OPTS) $(GEN_SRCS)
        @echo 'Building file: $<'
        @echo 'Invoking: ARM Compiler'
index 30f0f40e6d6a3353d8a0f475b34194ebc05f832e..1b77e03beee397b8357e91b9a48e4cc4c11fb9e2 100644 (file)
@@ -30,6 +30,7 @@ C_SRCS += \
 ../source/esm.c \
 ../source/gio.c \
 ../source/het.c \
+../source/hout.c \
 ../source/i2str.c \
 ../source/mibspi.c \
 ../source/mout.c \
@@ -66,6 +67,7 @@ OBJS += \
 ./source/esm.obj \
 ./source/gio.obj \
 ./source/het.obj \
+./source/hout.obj \
 ./source/i2str.obj \
 ./source/mibspi.obj \
 ./source/mout.obj \
@@ -114,6 +116,7 @@ C_DEPS += \
 ./source/esm.pp \
 ./source/gio.pp \
 ./source/het.pp \
+./source/hout.pp \
 ./source/i2str.pp \
 ./source/mibspi.pp \
 ./source/mout.pp \
@@ -149,6 +152,7 @@ C_DEPS__QUOTED += \
 "source/esm.pp" \
 "source/gio.pp" \
 "source/het.pp" \
+"source/hout.pp" \
 "source/i2str.pp" \
 "source/mibspi.pp" \
 "source/mout.pp" \
@@ -185,6 +189,7 @@ OBJS__QUOTED += \
 "source/esm.obj" \
 "source/gio.obj" \
 "source/het.obj" \
+"source/hout.obj" \
 "source/i2str.obj" \
 "source/mibspi.obj" \
 "source/mout.obj" \
@@ -233,6 +238,7 @@ C_SRCS__QUOTED += \
 "../source/esm.c" \
 "../source/gio.c" \
 "../source/het.c" \
+"../source/hout.c" \
 "../source/i2str.c" \
 "../source/mibspi.c" \
 "../source/mout.c" \
index 202fb73dc167f3e2733a7d647a5800c9e7b9d0b8..12775f027a6338f5f184f4863e59358a0d713054 100644 (file)
Binary files a/Debug/source/sys_main.obj and b/Debug/source/sys_main.obj differ
index 171e04e404d254e7206e396d9e07d924b1606486..06fbb00c492d06a75b8fc8cdee81889a65b23789 100644 (file)
Binary files a/Debug/source/sys_phantom.obj and b/Debug/source/sys_phantom.obj differ
index f7b06b2c02558731d5323e97375deca25309e3fc..82faaaeee6f294bdaac31650d3ca73f57e29d15e 100644 (file)
Binary files a/Debug/source/sys_selftest.obj and b/Debug/source/sys_selftest.obj differ
index 26d6ad8d2e7e79a933ac57e714b22d800c099b5c..5eea58e2213e5ca99a78aec778e43cb4008e50ac 100644 (file)
Binary files a/Debug/source/sys_startup.obj and b/Debug/source/sys_startup.obj differ
index 03b960184907159bb25d6a7d58d5725a3124891c..ee53e38ad9b04a3d586f2d03a7a77626b61c301b 100644 (file)
Binary files a/Debug/source/system.obj and b/Debug/source/system.obj differ
index 0439d8188bc46959d5c7d6f7920703e30f29e50b..be11c44c23e7a61eb47d64e748131e420536abb0 100644 (file)
@@ -1,15 +1,15 @@
-/*
- * cmd_proc_freertos_tms570.h
- *
- *  Created on: 1.8.2012
- *      Author: Michal Horn
- *
- *  Header file for cmdProc with FreeRTOS procedures included.
- */
+/** @file cmd_proc_freertos_tms570.h
+*   @brief Texas Instrument SCI FreeRTOS cmdProc header file
+*   @date 1.August.2012
+*
+*  Function prototypes
+*
+*/
 
 #ifndef CMD_PROC_FREERTOS_TMS570_H_
 #define CMD_PROC_FREERTOS_TMS570_H_
 
+/* Include files */
 #include "string.h"
 #include "cmd_proc.h"
 #include "cmdio_tisci.h"
index 07bff2cf5f05f194d48496301210ba33b8557eed..f36487b2b63c66be415331cc02f87a07c33628d1 100644 (file)
@@ -1,20 +1,15 @@
-/*
- * cmd_proc_freertos_tms570.h
- *
- *  Created on: 1.8.2012
- *      Author: Michal Horn
- *
- *  Header file for cmdProc with FreeRTOS procedures included.
- */
+/** @file cmdio_tisci.h
+*   @brief Texas Instrument SCI IO for cmdProc header file
+*   @date 1.August.2012
+*
+*  Definition of IO for TMS570LS3137ZWT
+*/
+
 
 #ifndef CMDIO_BUFFER_H_
 #define CMDIO_BUFFER_H_
 
-#define MAX_BUFFER_LEN 32
-#define errBUFFER_NOT_INITIALIZED -6
-
-#define BUF_TRANSFER_IN_PROGRESS 1
-
+/* Include files */
 #include "cmd_proc.h"
 #include "FreeRTOS.h"
 #include "os_queue.h"
 #include "os_task.h"
 #include "sci.h"
 
+/** Maximal length of buffers */
+#define MAX_BUFFER_LEN 32
+/**    Error code when accessing to not initialized buffer     */
+#define errBUFFER_NOT_INITIALIZED -6
+/** Flag for transfer in progress */
+#define BUF_TRANSFER_IN_PROGRESS 1
 
+/** Struct to represent IO buffer for TI SCI */
 typedef struct {
-       xQueueHandle buf;
-       xSemaphoreHandle mutex;
-       uint8_t flags;
+       xQueueHandle buf;       /**< Ring buffer (FreeRTOS queue) */
+       xSemaphoreHandle mutex; /**< Mutex to allow speaking only one device at time */
+       uint8_t flags;  /**< Flags */
 } tBuffer;
 
 
index 433c2a9aafa9007c3f838538113961165a41d132..5bd3141e1dd7f0163bddf47c6f50cd8265fb75e7 100644 (file)
@@ -1,39 +1,71 @@
-/*
- * din.h
- *
- *  Created on: 29.8.2012
- *      Author: Michal Horn
- */
-
+/** @file din.h
+*   @brief Din port header file
+*   @date 29.August.2012
+*
+*  Aliases, constants and function prototype relevant for DIN port
+*
+*/
 #ifndef DIN_H_
 #define DIN_H_
-
+/* Include files */
 #include "gio.h"
 
+/** @brief Alias for getBit function */
 #define DINGetBit( port, bit ) gioGetBit(port, bit)
+/** @brief Alias for setBit function */
 #define DINSetBit( port, bit, value ) gioSetBit(port, bit, value)
 
+/** @brief Alias port address used by DIN port */
 #define DIN_PORT gioPORTA
 
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN8_BIT 0
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN9_BIT 1
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN10_BIT 2
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN11_BIT 3
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN12_BIT 4
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN13_BIT 5
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN14_BIT 6
+/** @brief Constant for DIN bit index in DOUT register */
 #define DIN15_BIT 7
 
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN8   DIN_PORT,DIN8_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN9   DIN_PORT,DIN9_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN10  DIN_PORT,DIN10_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN11  DIN_PORT,DIN11_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN12  DIN_PORT,DIN12_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN13  DIN_PORT,DIN13_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN14  DIN_PORT,DIN14_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define DIN15  DIN_PORT,DIN15_BIT
 
+/** @brief Set value to DIN port
+*   @param[in] value to write to port
+*                      - 0bit - 7bit equals to DIN8 - DIN15 value
+*                      - 8bit - 31bit does not matter
+*
+*   Set value of whole DIN port
+*/
 void dinSetPort(uint32_t value);
+
+/** @brief Read value from DIN port DIN
+*
+*   Reads a the current value from the DIN port
+*   @return Value of port
+*/
 uint32_t dinGetPort();
 
 
diff --git a/include/hout.h b/include/hout.h
new file mode 100644 (file)
index 0000000..8eed8f8
--- /dev/null
@@ -0,0 +1,110 @@
+/** @file hout.h
+*   @brief HOUT port header file
+*   @date 3.September.2012
+*
+*  Aliases, constants and function prototype relevant for HOUT port
+*
+*/
+
+#ifndef HOUT_H_
+#define HOUT_H_
+/* Include files */
+#include "gio.h"
+#include "het.h"
+
+/** @brief Alias for getBit function */
+#define HOUTGetBit( port, bit ) gioGetBit(port, bit)
+/** @brief Alias for setBit function */
+#define HOUTSetBit( port, bit, value ) gioSetBit(port, bit, value)
+
+/** @brief Alias port address used by HOUT port */
+#define HOUT_PORT      hetPORT1
+
+
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT6_DIAG_BIT PIN_HET_31
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT5_DIAG_BIT PIN_HET_27
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT6_IN_BIT   PIN_HET_29
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT5_IN_BIT   PIN_HET_25
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT4_DIAG_BIT PIN_HET_23
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT3_DIAG_BIT PIN_HET_21
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT4_IN_BIT   PIN_HET_22
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT3_IN_BIT   PIN_HET_20
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT2_DIAG_BIT PIN_HET_19
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT1_DIAG_BIT PIN_HET_17
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT2_IN_BIT   PIN_HET_18
+/** @brief Constant for HOUT bit index in DOUT register */
+#define HOUT1_IN_BIT   PIN_HET_16
+
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT6_DIAG     HOUT_PORT,HOUT6_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT5_DIAG     HOUT_PORT,HOUT5_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT6_IN       HOUT_PORT,HOUT6_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT5_IN       HOUT_PORT,HOUT5_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT4_DIAG     HOUT_PORT,HOUT4_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT3_DIAG     HOUT_PORT,HOUT3_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT4_IN       HOUT_PORT,HOUT4_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT3_IN       HOUT_PORT,HOUT3_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT2_DIAG     HOUT_PORT,HOUT2_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT1_DIAG     HOUT_PORT,HOUT1_DIAG_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT2_IN       HOUT_PORT,HOUT2_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
+#define HOUT1_IN       HOUT_PORT,HOUT1_IN_BIT
+
+/** Set value to ports connected to HOUT
+*   @param[in] value to write to port
+*                      - bit 0 - HOUT1_IN - defined as output port HETPORT1
+*                      - bit 1 - HOUT2_IN - defined as output port HETPORT1
+*                      - bit 2 - HOUT3_IN - defined as output port HETPORT1
+*                      - bit 3 - HOUT4_IN - defined as output port HETPORT1
+*                      - bit 4 - HOUT5_IN - defined as output port HETPORT1
+*                      - bit 5 - HOUT6_IN - defined as output port HETPORT1
+*                      - bit 6 - HOUT1_DIAG - defined as input port HETPORT1
+*                      - bit 7 - HOUT2_DIAG - defined as input port HETPORT1
+*                      - bit 8 - HOUT3_DIAG - defined as input port HETPORT1
+*                      - bit 9 - HOUT4_DIAG - defined as input port HETPORT1
+*                      - bit 10 - HOUT5_DIAG - defined as input port HETPORT1
+*                      - bit 11 - HOUT6_DIAG - defined as input port HETPORT1
+*   Set value to HOUT port. Setting values to bits connected with ports defined as output makes no effect.
+*/
+void houtSetPort(uint32_t value);
+
+/** Get value from ports connected to HOUT
+*              - bit 0 - HOUT1_IN - defined as output port HETPORT1
+*              - bit 1 - HOUT2_IN - defined as output port HETPORT1
+*              - bit 2 - HOUT3_IN - defined as output port HETPORT1
+*              - bit 3 - HOUT4_IN - defined as output port HETPORT1
+*              - bit 4 - HOUT5_IN - defined as output port HETPORT1
+*              - bit 5 - HOUT6_IN - defined as output port HETPORT1
+*              - bit 6 - HOUT1_DIAG - defined as input port HETPORT1
+*              - bit 7 - HOUT2_DIAG - defined as input port HETPORT1
+*              - bit 8 - HOUT3_DIAG - defined as input port HETPORT1
+*              - bit 9 - HOUT4_DIAG - defined as input port HETPORT1
+*              - bit 10 - HOUT5_DIAG - defined as input port HETPORT1
+*              - bit 11 - HOUT6_DIAG - defined as input port HETPORT1
+*   Get value from HOUT port. Getting values from ports defined as output returns values last asserted by Controller itself.
+*   @return Value from HOUT GPIO port
+*/
+uint32_t houtGetPort();
+
+#endif /* HOUT_H_ */
index 9ab5e9bd203ba904e15b2921ca34d2e0efaeb5d1..13329f6c8a909ae4ac16605a42459ba231ffd46d 100644 (file)
-/*
- * mout.h
- *
- *  Created on: 29.8.2012
- *      Author: Michal Horn
- */
+/** @file mout.h
+*   @brief MOUT port header file
+*   @date 29.August.2012
+*
+*  Aliases, constants and function prototype relevant for HOUT port
+*
+*/
 
 #ifndef MOUT_H_
 #define MOUT_H_
-
+/* Include files */
 #include "gio.h"
 #include "het.h"
 #include "mibspi.h"
 
+/** @brief Alias for getBit function */
 #define MOUTGetBit( port, bit ) gioGetBit(port, bit)
+/** @brief Alias for setBit function */
 #define MOUTSetBit( port, bit, value ) gioSetBit(port, bit, value)
 
-
+/** @brief Alias port address used by MOUT port */
 #define MOUT_PORT_GIO  gioPORTB
+/** @brief Alias port address used by MOUT port */
 #define MOUT_PORT_SPI  mibspiPORT5
+/** @brief Alias port address used by MOUT port */
 #define         MOUT_PORT_HET  hetPORT1
 
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT6_EN_BIT   0
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT5_EN_BIT   1
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT6_IN_BIT   2
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT5_IN_BIT   3
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT4_EN_BIT   4
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT3_EN_BIT   5
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT4_IN_BIT   6
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT3_IN_BIT   7
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT2_EN_BIT   PIN_SIMO_2
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT1_EN_BIT   PIN_SIMO_1
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT2_IN_BIT   PIN_HET_14
+/** @brief Constant for MOUT bit index in DOUT register */
 #define MOUT1_IN_BIT   PIN_HET_9
 
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT6_EN       MOUT_PORT_GIO,MOUT6_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT5_EN       MOUT_PORT_GIO,MOUT5_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT6_IN       MOUT_PORT_GIO,MOUT6_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT5_IN       MOUT_PORT_GIO,MOUT5_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT4_EN       MOUT_PORT_GIO,MOUT4_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT3_EN       MOUT_PORT_GIO,MOUT3_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT4_IN       MOUT_PORT_GIO,MOUT4_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT3_IN       MOUT_PORT_GIO,MOUT3_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT2_EN       MOUT_PORT_DMM,MOUT2_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT1_EN       MOUT_PORT_DMM,MOUT1_EN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT2_IN       MOUT_PORT_HET,MOUT2_IN_BIT
+/** @brief Alias for pair PORT, BIT which defines pin for access */
 #define MOUT1_IN       MOUT_PORT_HET,MOUT1_IN_BIT
 
+/** Set value to ports connected to MOUT
+*   @param[in] value to write to port
+*                      - bit 0 - MOUT1_IN - defined as output port HETPORT1
+*                      - bit 1 - MOUT2_IN - defined as output port HETPORT1
+*                      - bit 2 - MOUT3_IN - defined as output port GIOB
+*                      - bit 3 - MOUT4_IN - defined as output port GIOB
+*                      - bit 4 - MOUT5_IN - defined as output port GIOB
+*                      - bit 5 - MOUT6_IN - defined as output port GIOB
+*                      - bit 6 - MOUT1_EN - defined as input port SPIPORT
+*                      - bit 7 - MOUT2_EN - defined as input port SPIPORT
+*                      - bit 8 - MOUT3_EN - defined as input port GIOB
+*                      - bit 9 - MOUT4_EN - defined as input port GIOB
+*                      - bit 10 - MOUT5_EN - defined as input port GIOB
+*                      - bit 11 - MOUT6_EN - defined as input port GIOB
+*   Set value to whole MOUT port. Setting values to bits connected with ports defined as output makes no effect.
+*/
 void moutSetPort(uint32_t value);
+/** @brief Get value from ports connected to MOUT
+*                      - bit 0 - MOUT1_IN - defined as output port HETPORT1
+*                      - bit 1 - MOUT2_IN - defined as output port HETPORT1
+*                      - bit 2 - MOUT3_IN - defined as output port GIOB
+*                      - bit 3 - MOUT4_IN - defined as output port GIOB
+*                      - bit 4 - MOUT5_IN - defined as output port GIOB
+*                      - bit 5 - MOUT6_IN - defined as output port GIOB
+*                      - bit 6 - MOUT1_EN - defined as input port SPIPORT
+*                      - bit 7 - MOUT2_EN - defined as input port SPIPORT
+*                      - bit 8 - MOUT3_EN - defined as input port GIOB
+*                      - bit 9 - MOUT4_EN - defined as input port GIOB
+*                      - bit 10 - MOUT5_EN - defined as input port GIOB
+*                      - bit 11 - MOUT6_EN - defined as input port GIOB
+*   Get value from whole MOUT port. Getting values from ports defined as output returns values last asserted by Controller itself.
+*   @return Value of port
+*/
 uint32_t moutGetPort();
 
-
 #endif /* MOUT_H_ */
index 032a06db5e3599b28f27f3d0aaab395a6f8473ac..73fd386f7cbcc793b322ba38cd6a20732e645ef7 100644 (file)
@@ -50,6 +50,7 @@ extern void vPreemptiveTick(void);
 extern void adc1Group1Interrupt(void);\r
 extern void can1HighLevelInterrupt(void);\r
 extern void can2HighLevelInterrupt(void);\r
+extern void adc2Group1Interrupt(void);\r
 extern void sciHighLevelInterrupt(void);\r
 \r
 \r
index fce877e4962e2c02a8741dbe043dc05b5680a40d..71c2e6d59a289f9b663c1cf7fdba9306bcfe6124 100644 (file)
@@ -115,7 +115,7 @@ void adcInit(void)
      *     - Enable/Disable continuous conversion\r
      */\r
     adcREG1->GxMODECR[2U] = ADC_12_BIT\r
-                          | 0x00000000U\r
+                          | 0x00000020U\r
                           | 0x00000000U\r
                           | 0x00000000U;\r
 \r
@@ -146,6 +146,116 @@ void adcInit(void)
     adcREG1->PARCR = 0x00000005U;\r
 \r
 \r
+\r
+    /** @b Initialize @b ADC2: */\r
+\r
+    /** - Reset ADC module */\r
+    adcREG2->RSTCR = 1U;\r
+    adcREG2->RSTCR = 0U;\r
+       \r
+    /** - Enable 12-BIT ADC  */\r
+    adcREG2->OPMODECR |= 0x80000000U;\r
+       \r
+    /** - Setup prescaler */\r
+    adcREG2->CLOCKCR = 7U;\r
\r
+    /** - Setup memory boundaries */\r
+    adcREG2->BNDCR  =(8U << 16U)|(8U + 8U);\r
+    adcREG2->BNDEND = 2U;\r
\r
+    /** - Setup event group conversion mode\r
+       *     - Setup data format\r
+    *     - Enable/Disable channel id in conversion result\r
+    *     - Enable/Disable continuous conversion\r
+       */\r
+    adcREG2->GxMODECR[0U] = ADC_12_BIT\r
+                          | 0x00000000U\r
+                          | 0x00000000U;\r
+\r
+    /** - Setup event group hardware trigger\r
+       *     - Setup hardware trigger edge\r
+    *     - Setup hardware trigger source\r
+       */\r
+    adcREG2->G0SRC = 0x00000000U\r
+                   | ADC2_EVENT;\r
+\r
+    /** - Setup event group sample window */\r
+    adcREG2->G0SAMP = 0U;\r
+\r
+    /** - Setup event group sample discharge \r
+    *     - Setup discharge prescaler\r
+    *     - Enable/Disable discharge\r
+    */\r
+    adcREG2->G0SAMPDISEN = 0U << 8U\r
+                         | 0x00000000U;\r
+\r
+    /** - Setup group 1 conversion mode\r
+       *     - Setup data format\r
+    *     - Enable/Disable channel id in conversion result\r
+    *     - Enable/Disable continuous conversion\r
+       */\r
+    adcREG2->GxMODECR[1U] = ADC_12_BIT\r
+                          | 0x00000020U\r
+                          | 0x00000000U\r
+                          | 0x00000000U;\r
+\r
+    /** - Setup group 1 hardware trigger\r
+       *     - Setup hardware trigger edge\r
+    *     - Setup hardware trigger source\r
+       */\r
+    adcREG2->G1SRC = 0x00000000U\r
+                   | ADC2_EVENT;\r
+\r
+\r
+    /** - Setup group 1 sample window */\r
+    adcREG2->G1SAMP = 0U;\r
+\r
+    /** - Setup group 1 sample discharge \r
+    *     - Setup discharge prescaler\r
+    *     - Enable/Disable discharge\r
+    */\r
+    adcREG2->G1SAMPDISEN = 0U << 8U\r
+                         | 0x00000000U;\r
+\r
+    /** - Setup group 2 conversion mode\r
+       *     - Setup data format\r
+    *     - Enable/Disable channel id in conversion result\r
+    *     - Enable/Disable continuous conversion\r
+       */\r
+    adcREG2->GxMODECR[2U] = ADC_12_BIT\r
+                          | 0x00000000U\r
+                          | 0x00000000U\r
+                          | 0x00000000U;\r
+\r
+    /** - Setup group 2 hardware trigger\r
+       *     - Setup hardware trigger edge\r
+    *     - Setup hardware trigger source\r
+       */\r
+    adcREG2->G2SRC = 0x00000000U\r
+                   | ADC2_EVENT;\r
+\r
+    /** - Setup group 2 sample window */\r
+    adcREG2->G2SAMP = 0U;\r
+\r
+    /** - Setup group 2 sample discharge \r
+    *     - Setup discharge prescaler\r
+    *     - Enable/Disable discharge\r
+    */\r
+    adcREG2->G2SAMPDISEN = 0U << 8U\r
+                         | 0x00000000U;\r
+\r
+    /** - Enable ADC module */\r
+    adcREG2->OPMODECR |= 0x80140001U;\r
+\r
+    /** - Wait for buffer inialisation complete */\r
+    while ((adcREG2->BUFINIT) != 0) { /* Wait */ } \r
+    \r
+    /** - Setup parity */\r
+    adcREG2->PARCR = 0x00000005U;\r
+\r
+    /**   @note This function has to be called before the driver can be used.\n\r
+    *           This function has to be executed in priviledged mode.\n\r
+    */\r
 /* USER CODE BEGIN (4) */\r
 /* USER CODE END */\r
 }\r
@@ -261,12 +371,12 @@ static const uint32_t s_adcSelect[2U][3U] =
     0x00000000U ,\r
     0x00000000U |\r
     0x00000000U |\r
-    0x00000000U |\r
-    0x00000000U |\r
-    0x00000000U |\r
-    0x00000000U |\r
-    0x00000000U |\r
-    0x00000000U |\r
+    0x00000004U |\r
+    0x00000008U |\r
+    0x00000010U |\r
+    0x00000020U |\r
+    0x00000040U |\r
+    0x00000080U |\r
     0x00000000U |\r
     0x00000000U |\r
     0x00000000U |\r
@@ -870,7 +980,6 @@ void adc1Group1Interrupt(void)
        // Delete generated content after user code block!!!\r
     adcNotification(adcREG1, adcGROUP1);\r
 /* USER CODE END */\r
-\r
 /* USER CODE BEGIN (50) */\r
 /* USER CODE END */\r
 }\r
@@ -943,12 +1052,9 @@ void adc2Group0Interrupt(void)
 void adc2Group1Interrupt(void)\r
 {\r
 /* USER CODE BEGIN (61) */\r
-/* USER CODE END */\r
-    \r
-    adcREG2->GxINTFLG[1U] = 9U;\r
-\r
+       // Delete generated content after user code block!!!\r
     adcNotification(adcREG2, adcGROUP1);\r
-\r
+/* USER CODE END */\r
 /* USER CODE BEGIN (62) */\r
 /* USER CODE END */\r
 }\r
index 43ad5b9e944714f6549ba23cb29dde149f0121f9..cd18ea8d7dd7f0d4c3a6e795904008bc79058492 100644 (file)
@@ -1,18 +1,22 @@
-/*
- * cmd_proc_freertos_tms570.c
- *
- *  Created on: 1.8.2012
- *      Author: Michal Horn
- *
- *  Implementation of main task for processing commands.
- *
- */
+/** @file cmd_proc_freertos_tms570.c
+*   @brief Texas Instrument SCI FreeRTOS cmdProc implementation
+*   @date 1.August.2012
+*
+*  Implements main task of command processing.
+*
+*/
+
+/* Include files */
 #include "cmd_proc_freertos_tms570.h"
 
+/** cmdProc task handler */
 xTaskHandle processCmdHandler;
+/** string prompt */
 uint8_t* prompt;
-extern cmd_des_t const *cmd_list_main[];               // Main list of commands
-extern cmd_io_t cmd_io_std_line;               // IO stack
+/** Main list of commands */
+extern cmd_des_t const *cmd_list_main[];
+/** IO stack */
+extern cmd_io_t cmd_io_std_line;
 
 
 void initCmdProc(unsigned portBASE_TYPE priority, uint8_t * introText, uint8_t * promptText) {
index 1f39b6297e0a38d5ba28f47d3b76caddb72306bd..9daba0472851a202bac8427fe5ec1c6e57ca6e9a 100644 (file)
@@ -8,7 +8,7 @@ char ed_line_out_std[ED_LINE_CHARS+1];
 
 
 ed_line_buf_t ed_line_buf_in_std={
-       0,
+       FL_ELB_ECHO,
        0,
     sizeof(ed_line_in_std),
     0,
index 7c6a3953528900ef47d0296eb1d018935560f328..1c39cd3db3a845efa1b145926b8c77dddf7b68c3 100644 (file)
@@ -1,16 +1,17 @@
-/*
- * cmdio_buffer.c
- *
- *  Created on: 17.7.2012
- *      Author: Michal Horn
- *
- *  Definition of IO. This implementation uses queues as buffers, which are than used for input and output.
- *
- */
+/** @file cmdio_tisci.c
+*   @brief Texas Instrument SCI IO for cmdProc
+*   @date 17.July.2012
+*
+*  Definition of IO. This implementation uses queues as buffers, which are than used for input and output.
+*
+*/
 
+/* Include files */
 #include "cmdio_tisci.h"
 
+/** Buffer used for sending to sci */
 tBuffer outBuffer;
+/** Buffer used for receiving from sci */
 tBuffer inBuffer;
 
 void initIoBuffer() {
@@ -49,7 +50,7 @@ portBASE_TYPE genericPrint(tBuffer* buffer, const uint8_t * string) {
                                continue;
                }
                if ((ret = xQueueSend(buffer->buf, (void*)string++, portMAX_DELAY) )!= pdPASS) {
-                       break; // Some critical error occured
+                       break; // Some critical error occurred
                }
        }
        xSemaphoreGive(buffer->mutex);
index 5530a0535d848a8743466065e919f458acd229ce..404e5e62193214eb84fa189285c73a94203959e1 100644 (file)
@@ -1,13 +1,12 @@
-/*
- * commands.c
- *
- *  Created on: 31.7.2012
- *      Author: Michal Horn
- *
- *  Definition of commands for cmdProc library. Command are stored as lists.
- *
- */
-
+/** @file commands.c
+*   @brief Command definitions file
+*   @date 31.July.2012
+*
+*  Command is defined by its function. The function and others parameters are stored as list element.
+*  All commands represented as elements are stored in lists connected into one main list.
+*/
+
+/* Include files */
 #include "cmd_proc.h"
 #include "sys_common.h"
 #include "cmdio_tisci.h"
 #include "adc.h"
 #include "din.h"
 #include "mout.h"
+#include "hout.h"
 
+/** @brief Count of AD channels in ADC1
+*/
 #define ADC1_CHANNEL_COUNT     12
+/** @brief Count of AD channels in HOUT port
+*/
+#define HOUT_IFBK_CHANNEL_COUNT        6
+
 
+/** @brief List in which commands are stored */
 cmd_des_t const **cmd_list;
+/** @brief Semaphore blocking task when it waits for interrupt signaling message receive */
 xSemaphoreHandle canMsgReceived;
 
+/** @brief Semaphore blocking task when it waits for interrupt signaling end of the conversion */
 xSemaphoreHandle adcDataConverted;
-ADCData_t adc1Data;
+/** @brief Data structure containing converted data from ADC */
+ADCData_t adcData;
 
+/** @brief Set of port adresses for each din pin
+ *
+ * Defined in din.c */
 extern gioPORT_t * dinPorts[8];
+/** @brief Set of port adresses for each mout pin
+ *
+ * Defined in mout.c */
 extern gioPORT_t * moutPorts[12];
+/** @brief Set of port adresses for each hout pin
+ *
+ * Defined in hout.c */
+extern gioPORT_t * houtPorts[12];
+/** @brief Set of bit indexes for each din pin
+ *
+ * Each element stores index of a bit in register assigned to din pin.
+ * Defined in din.c */
 extern uint8_t dinBits[8];
+/** @brief Set of bit indexes for each mout pin
+ *
+ * Each element stores index of a bit in register assigned to mout pin.
+ * Defined in din.c */
 extern uint8_t moutBits[12];
+/** @brief Set of bit indexes for each hout pin
+ *
+ * Each element stores index of a bit in register assigned to hout pin.
+ * Defined in din.c */
+extern uint8_t houtBits[12];
 
 /* ------------------------------
  * User defined command functions
  * ------------------------------
  */
+
+/**    Reads values from MOUT_EN pins and prints them
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_readMOUTValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
-       print((uint8_t *)"\r\nValues from MOUT port:");
+       print((uint8_t *)"\r\nValues from MOUT_EN:");
        uint32_t portVal = moutGetPort();
        print((uint8_t *)"\r\npin\t|\tvalue");
        uint8_t i;
-       for (i = 6, portVal>>6; i < 12; i++, portVal>>1) {
+       for (i = 6, portVal = portVal>>6; i < 12; i++, portVal = portVal>>1) {
                uint8_t bit = portVal&1;
                char numBuf[2];
                i2str(numBuf, i-5, 1, 10);
@@ -56,12 +96,19 @@ int cmd_do_readMOUTValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *par
        }
        return 0;
 }
+
+/**    Reads values from DIN pins and prints them
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_readDINValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
-       print((uint8_t *)"\r\nValues from DIN port:");
+       print((uint8_t *)"\r\nValues from DIN:");
        uint32_t portVal = dinGetPort();
        print((uint8_t *)"\r\npin\t|\tvalue");
        uint8_t i;
-       for (i = 0; i < 8; i++,portVal>>1) {
+       for (i = 0; i < 8; i++,portVal = portVal>>1) {
                uint8_t bit = portVal&1;
                print((uint8_t *)"\r\n");
                char numBuf[1];
@@ -78,60 +125,151 @@ int cmd_do_readDINValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *para
        return 0;
 }
 
-int cmd_do_readADC1Values(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
-{
-       char numBuf[4];                                 // Buffer used for i2str conversion
-    uint32_t i;                                                // Cycle control variable
-
-    adcData_t adc_data_origin[ADC1_CHANNEL_COUNT];
-    adc1Data.adc_data = adc_data_origin;
-    adc1Data.ch_count = ADC1_CHANNEL_COUNT;
-
+/**    Reads values from HOUT_DIAG pins and prints them
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_read_HOUT_DIAG_Values(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
+       print((uint8_t *)"\r\nValues from HOUT_DIAG:");
+       uint32_t portVal = houtGetPort();
+       print((uint8_t *)"\r\npin\t|\tvalue");
+       uint8_t i;
+       for (i = 0, portVal = portVal>>6; i < 6; i++,portVal = portVal>>1) {
+               uint8_t bit = portVal&1;
+               print((uint8_t *)"\r\n");
+               char numBuf[1];
+               i2str(numBuf, i+1, 1, 10);
+               print((uint8_t *)numBuf);
+               print((uint8_t *)"\t|\t");
+               if (bit) {
+                       print((uint8_t *)"1");
+               }
+               else {
+                       print((uint8_t *)"0");
+               }
+       }
+       return 0;
+}
 
+/**    Reads values from ADC and stores them to ADCData structure defined as global.
+ * ADCData structure must be defined properly before this function is called.
+ * @param[in]  adc             Pointer to ADC base register
+ * @param[in]  group   ADC group selector
+ * @return     0 when OK or error code
+ */
+int readADC(adcBASE_t* adc, uint32_t group) {
+       if (adcData.adc_data == NULL) {
+               return 1;
+       }
        adcDataConverted = xSemaphoreCreateCounting(1, 0);
-    print((uint8_t *)"\r\nRead ADC1 values.");
-       adcEnableNotification(adcREG1, adcGROUP1);
-    adcCalibration(adcREG1);
-    adcMidPointCalibration(adcREG1);
-       print((uint8_t *)"\r\nNOTE: Calibration done.");
+       adcEnableNotification(adc, group);
+    adcCalibration(adc);
+    adcMidPointCalibration(adc);
 
-       adcStartConversion(adcREG1, adcGROUP1);
+       adcStartConversion(adc, group);
        xSemaphoreTake(adcDataConverted, portMAX_DELAY);
 
-    if (adc1Data.flags & BAD_CHANNELS_COUNT) {
+    if (adcData.flags & BAD_CHANNELS_COUNT) {
        print((uint8_t *)"\r\nERROR: Bad count of channels was read! Can not proceed.");
-       adc1Data.flags &= ~BAD_CHANNELS_COUNT;
+       adcData.flags &= ~BAD_CHANNELS_COUNT;
+       adcDisableNotification(adc, group);
+       vSemaphoreDelete(canMsgReceived);
        return 1;
     }
-    if (adc1Data.flags & MEM_OVERRUN) {
+    if (adcData.flags & MEM_OVERRUN) {
        print((uint8_t *)"\r\nWARNING: ADC Memory overrun detected. Values can be imprecise.");
-       adc1Data.flags &= ~MEM_OVERRUN;
+       adcData.flags &= ~MEM_OVERRUN;
     }
+       adcDisableNotification(adc, group);
+       vSemaphoreDelete(canMsgReceived);
+    return 0;
+}
+
+/**    Reads values from HOUT_IFBK pins (subset of ADC)
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_read_HOUT_IFBK_Values(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
+{
+       char numBuf[4];                                 // Buffer used for i2str conversion
+    uint32_t i;                                                // Cycle control variable
+
+    // ADCData structure initialization
+    adcData_t adc_data_origin[HOUT_IFBK_CHANNEL_COUNT];
+    adcData.adc_data = adc_data_origin;
+    adcData.ch_count = HOUT_IFBK_CHANNEL_COUNT;
+
+    print((uint8_t *)"\r\nRead HOUT_IFBK values.");
+    if (readADC(adcREG2, adcGROUP1) == 1)
+       return 1;
+    /* conversion results */
+    for (i = 0; i < adcData.ch_count; i++) {
+       print((uint8_t *)"\r\nHOUT: ");
+       i2str(numBuf, adcData.adc_data[i].id-1, 1, 10);
+       print((uint8_t *)numBuf);
+       print((uint8_t *)"\tvalue: ");
+       i2str(numBuf, adcData.adc_data[i].value, 1, 10);
+       print((uint8_t *)numBuf);
+       print((uint8_t *)" 0x");
+       i2str(numBuf, adcData.adc_data[i].value, 1, 16);
+       print((uint8_t *)numBuf);
+    }
+    adcData.adc_data = NULL;
+    return 0;
+}
+
+/**    Reads values from ADC1 pins
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_readADC1Values(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
+{
+       char numBuf[4];                                 // Buffer used for i2str conversion
+    uint32_t i;                                                // Cycle control variable
+
+    /* ADCData structure initialization */
+    adcData_t adc_data_origin[ADC1_CHANNEL_COUNT];
+    adcData.adc_data = adc_data_origin;
+    adcData.ch_count = ADC1_CHANNEL_COUNT;
+
+    print((uint8_t *)"\r\nADC1 values:");
+    if (readADC(adcREG1, adcGROUP1) == 1)
+       return 1;
 
     /* conversion results :                                       */
-    for (i = 0; i < adc1Data.ch_count; i++) {
+    for (i = 0; i < adcData.ch_count; i++) {
        print((uint8_t *)"\r\nChannel: ");
-       i2str(numBuf, adc1Data.adc_data[i].id, 1, 10);
+       i2str(numBuf, adcData.adc_data[i].id, 1, 10);
        print((uint8_t *)numBuf);
        print((uint8_t *)"\tvalue: ");
-       i2str(numBuf, adc1Data.adc_data[i].value, 1, 10);
+       i2str(numBuf, adcData.adc_data[i].value, 1, 10);
        print((uint8_t *)numBuf);
        print((uint8_t *)" 0x");
-       i2str(numBuf, adc1Data.adc_data[i].value, 1, 16);
+       i2str(numBuf, adcData.adc_data[i].value, 1, 16);
        print((uint8_t *)numBuf);
     }
-
-       adcDisableNotification(adcREG1, adcGROUP1);
-       vSemaphoreDelete(canMsgReceived);
-       return 0;
+    adcData.adc_data = NULL;
+    return 0;
 }
 
+/**    Read values general command function. According the suffix switch to appropriate reading procedure.
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_readValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
-       uint32_t suffix = 100;
+       uint32_t suffix = 0;
        int ret;
        char* token = NULL;
        if ((token = strtok(param[1], " ")) == NULL) {
-               print((uint8_t *)"ERROR: No suffix! MOUT Expected.");
+               print((uint8_t *)"ERROR: No suffix!");
                return 1;
        }
 
@@ -139,8 +277,12 @@ int cmd_do_readValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]
                suffix = 1;
        else if (!strcmp(token, "DIN"))
                suffix = 2;
-       else if (!strcmp(token, "MOUT"))
+       else if (!strcmp(token, "MOUTE"))
                suffix = 3;
+       else if (!strcmp(token, "HOUTD"))
+               suffix = 4;
+       else if (!strcmp(token, "HOUTF"))
+               suffix = 5;
        else {
                print((uint8_t *)"ERROR: Wrong suffix!");
                return 1;
@@ -155,11 +297,25 @@ int cmd_do_readValues(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]
        case 3:
                ret = cmd_do_readMOUTValues(cmd_io, des, param);
                break;
+       case 4:
+               ret = cmd_do_read_HOUT_DIAG_Values(cmd_io, des, param);
+               break;
+       case 5:
+               ret = cmd_do_read_HOUT_IFBK_Values(cmd_io, des, param);
+               break;
+       default:
+               ret = 1;
        }
 
        return ret;
 }
 
+/**    Set value general command function. According the suffix sets given bit to given value to appropriate port pin.
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_setPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
        void (*setBit)(gioPORT_t *, uint32_t, uint32_t) = NULL;
        gioPORT_t * port = NULL;
@@ -167,18 +323,23 @@ int cmd_do_setPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
        uint32_t pin;
        uint32_t bit;
        uint32_t value;
-       uint32_t postfix = 100;
+       uint32_t suffix = 0;
+
+       // Get suffix
        if ((token = strtok(param[1], " ")) == NULL) {
-               print((uint8_t *)"ERROR: No suffix! MOUT Expected.");
+               print((uint8_t *)"ERROR: No suffix!");
                return 1;
        }
-
-       if (!strcmp(token, "MOUT"))
-               postfix = 1;
+       if (!strcmp(token, "MOUTI"))
+               suffix = 1;
+       else if (!strcmp(token, "HOUTI")) {
+               suffix = 2;
+       }
        else {
                print((uint8_t *)"ERROR: Wrong suffix!");
                return 1;
        }
+       // Get index of the bit
        if ((token = strtok(param[2], " ")) == NULL) {
                print((uint8_t *)"ERROR: Parameter 1 expected.");
                return 1;
@@ -187,6 +348,7 @@ int cmd_do_setPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
                print((uint8_t *)"ERROR: unsigned number expected as param 1!");
                return 1;
        }
+       // Get value
        if ((token = strtok(NULL, " ")) == NULL) {
                print((uint8_t *)"ERROR: Parameter 2 expected.");
                return 1;
@@ -199,8 +361,9 @@ int cmd_do_setPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
                print((uint8_t *)"ERROR: More than 2 parameters detected!");
                return 1;
        }
-       switch(postfix) {
-       case 1 :
+
+       switch(suffix) {
+       case 1 :        // MOUTI
                setBit=&gioSetBit;
                if (pin < 1 || pin > 6) {
                        print((uint8_t *)"ERROR: 1st parameter out of range <1;6>!");
@@ -213,12 +376,136 @@ int cmd_do_setPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
                port = moutPorts[pin-1];
                bit = moutBits[pin-1];
                break;
+       case 2 :        // HOUTI
+               setBit=&gioSetBit;
+               if (pin < 1 || pin > 6) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <1;6>!");
+                       return 1;
+               }
+               if (value != 1 && value != 0) {
+                       print((uint8_t *)"ERROR: 2nd parameter out of range <0;1>!");
+                       return 1;
+               }
+               port = houtPorts[pin-1];
+               bit = houtBits[pin-1];
+               break;
        }
        setBit(port, bit, value);
        print((uint8_t *)"Bit has been set.");
        return 0;
 }
 
+/**    Get value general command function. According the suffix gets given bit of appropriate port pin.
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_getPin(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[]) {
+       char* token = NULL;
+       char numBuf[4];
+       uint32_t value;
+       uint32_t pin;
+       uint32_t suffix = 100;
+       // Get suffix
+       if ((token = strtok(param[1], " ")) == NULL) {
+               print((uint8_t *)"ERROR: No suffix!");
+               return 1;
+       }
+       if (!strcmp(token, "ADC1"))
+               suffix = 1;
+       else if (!strcmp(token, "DIN"))
+               suffix = 2;
+       else if (!strcmp(token, "MOUTE"))
+               suffix = 3;
+       else if (!strcmp(token, "HOUTD"))
+               suffix = 4;
+       else if (!strcmp(token, "HOUTF"))
+               suffix = 5;
+       else {
+               print((uint8_t *)"ERROR: Wrong suffix!");
+               return 1;
+       }
+       // Get pin
+       if ((token = strtok(param[2], " ")) == NULL) {
+               print((uint8_t *)"ERROR: Parameter 1 expected.");
+               return 1;
+       }
+       if (EOF == sscanf(token, "%d", &pin)){
+               print((uint8_t *)"ERROR: unsigned number expected as param 1!");
+               return 1;
+       }
+       if ((token = strtok(NULL, " ")) != NULL) {
+               print((uint8_t *)"ERROR: More than 1 parameters detected!");
+               return 1;
+       }
+
+       switch(suffix) {
+       case 1 :        // ADC1
+       {
+               if (pin > 11) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <0;11>!");
+                       return 1;
+               }
+
+               adcData_t adc_data_origin[ADC1_CHANNEL_COUNT];
+           adcData.adc_data = adc_data_origin;
+           adcData.ch_count = ADC1_CHANNEL_COUNT;
+           if (readADC(adcREG1, adcGROUP1) == 1)
+               return 1;
+           value = adcData.adc_data[pin].value;
+           adcData.adc_data = NULL;
+               break;
+       }
+       case 2 :        // DIN
+               pin -= 7;
+               if (pin < 1  || pin > 8) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <8;15>!");
+                       return 1;
+               }
+               value = gioGetBit(dinPorts[pin-1], dinBits[pin-1]);
+               break;
+       case 3 :        // MOUTE
+               if (pin < 1 || pin > 6) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <1;6>!");
+                       return 1;
+               }
+               value = gioGetBit(moutPorts[pin-1], moutBits[pin-1]);
+               break;
+       case 4 :        // HOUTD
+               if (pin < 1 || pin > 6) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <1;6>!");
+                       return 1;
+               }
+               value = gioGetBit(houtPorts[pin-1], houtBits[pin-1]);
+               break;
+       case 5 :        // HOUTF
+       {
+               if (pin < 1 || pin > 6) {
+                       print((uint8_t *)"ERROR: 1st parameter out of range <1;6>!");
+                       return 1;
+               }
+               adcData_t adc_data_origin[HOUT_IFBK_CHANNEL_COUNT];
+           adcData.adc_data = adc_data_origin;
+           adcData.ch_count = HOUT_IFBK_CHANNEL_COUNT;
+           if (readADC(adcREG2, adcGROUP1) == 1)
+               return 1;
+           value = adcData.adc_data[pin].value;
+           adcData.adc_data = NULL;
+               break;
+       }
+       }
+       i2str(numBuf, value, 1, 10);
+       print((uint8_t *)numBuf);
+       return 0;
+}
+
+/**    Runs test of ADC1. Test each channel if it is shorted to REFLO or REFHI
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_testADC1Connection(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
 {
        uint32_t Vn[ADC1_CHANNEL_COUNT];        // Nominal value, converted from ADC
@@ -229,19 +516,16 @@ int cmd_do_testADC1Connection(cmd_io_t *cmd_io, const struct cmd_des *des, char
        uint32_t i;                                                     // Cycle control variable
        char numBuf[2];                                         // Buffer used for i2str conversion
 
+       // Initialize ADCData structure
     adcData_t adc_data_origin[ADC1_CHANNEL_COUNT];
-    adc1Data.adc_data = adc_data_origin;
-    adc1Data.ch_count = ADC1_CHANNEL_COUNT;
+    adcData.adc_data = adc_data_origin;
+    adcData.ch_count = ADC1_CHANNEL_COUNT;
 
-
-       adcDataConverted = xSemaphoreCreateCounting(1, 0);
     print((uint8_t *)"\r\nTesting ADC1 connection.");
-       adcEnableNotification(adcREG1, adcGROUP1);
-    adcCalibration(adcREG1);
-    adcMidPointCalibration(adcREG1);
-       print((uint8_t *)"\r\nNOTE: Calibration done.");
 
-       for (j = 0; j < 3; j++) {
+    // Read and store Nominal voltage, Lowest voltage Highest voltage in that order
+    for (j = 0; j < 3; j++) {
+       // Choose voltage
                switch(j) {
                        case    0:
                                adcREG1->CALCR = 0;
@@ -257,39 +541,28 @@ int cmd_do_testADC1Connection(cmd_io_t *cmd_io, const struct cmd_des *des, char
                                Vptr = &Vu[0];
                                break;
                }
-
-               adcStartConversion(adcREG1,adcGROUP1);
-               // Wait until conversion done
-               xSemaphoreTake(adcDataConverted, portMAX_DELAY);
+               // Read
+           if (readADC(adcREG2, adcGROUP1) == 1)
+               return 1;
+           // Store
                for (i = 0; i < ADC1_CHANNEL_COUNT; i++) {
-                       if (adc1Data.flags & BAD_CHANNELS_COUNT) {
-                               print((uint8_t *)"\r\nERROR: Bad count of channels was read! Can not proceed.");
-                               adc1Data.flags &= ~BAD_CHANNELS_COUNT;
-                               return 1;
-                       }
-                       if (adc1Data.flags & MEM_OVERRUN) {
-                               print((uint8_t *)"\r\nWARNING: ADC Memory overrun detected. Values can be imprecise.");
-                               adc1Data.flags &= ~MEM_OVERRUN;
-                       }
-                       Vptr[i] = adc1Data.adc_data[i].value;
+                       Vptr[i] = adcData.adc_data[i].value;
                }
        }
 
        print((uint8_t *)"\r\n|\tChannel\t|\tStatus");
        for (i = 0; i < ADC1_CHANNEL_COUNT; i++) {
                i2str(numBuf, i, 2, 10);
-
                print((uint8_t *)"\r\n|\t");
                print((uint8_t *)numBuf);
                print((uint8_t *)"\t|\t");
+
                if(Vu[i] <= Vd[i]) {
                        if (Vn[i] == 0) {
                                print((uint8_t *)"shorted with REFLO");
-
                        }
                        else {
                                print((uint8_t *)"shorted with REFHI");
-
                        }
                }
                else {
@@ -297,28 +570,31 @@ int cmd_do_testADC1Connection(cmd_io_t *cmd_io, const struct cmd_des *des, char
                }
        }
     adcREG1->CALCR = 0;
-
-       adcDisableNotification(adcREG1, adcGROUP1);
-       vSemaphoreDelete(canMsgReceived);
+       adcData.adc_data = NULL;
        return 0;
 }
 
 
+/**    Runs test of CAN internal loopback. Send message from CAN1 and receive it on CAN2.
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
 int cmd_do_testcanloopback(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
 {
+    canEnableErrorNotification(canREG1);
+    canEnableErrorNotification(canREG2);
        canMsgReceived = xSemaphoreCreateCounting(1, 0);
        print((uint8_t *)"\r\nTesting CAN loopback\r\n");
-       print((uint8_t *)"Sending message...");
 
        uint32_t cnt=0, error =0;
        uint8_t tx_data[8] = {'T', 'E', 'S', 'T', ' ', 'C', 'A', 'N'};
        uint8_t rx_data[8];
 
        canTransmit(canREG1, canMESSAGE_BOX1, tx_data); /* transmitting 8 different chunks 1 by 1 */
-
        xSemaphoreTake(canMsgReceived, portMAX_DELAY);
        canGetData(canREG2, canMESSAGE_BOX1, rx_data); /* copy to RAM */
-
        for(cnt=0;cnt<8;cnt++)
      {
           if(tx_data[cnt] != rx_data[cnt])
@@ -326,231 +602,156 @@ int cmd_do_testcanloopback(cmd_io_t *cmd_io, const struct cmd_des *des, char *pa
                error++; /* data error */
           }
      }
-       print((uint8_t *)"message received\r\nErrors: ");
-       char errBuf[1];
-       i2str(errBuf, error, 1, 10);
-       print((uint8_t *)errBuf);
-       print((uint8_t *)"\r\n");
+       if (error == 0) {
+               print((uint8_t *)"OK\r\n");
+       }
+       else {
+               print((uint8_t *)"FAILED, errors: ");
+               char errBuf[1];
+               i2str(errBuf, error, 1, 10);
+               print((uint8_t *)errBuf);
+               print((uint8_t *)"\r\n");
+       }
        vSemaphoreDelete(canMsgReceived);
+    canDisableErrorNotification(canREG1);
+    canDisableErrorNotification(canREG2);
        return 0;
 }
 
-int cmd_do_testopchar(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
-{
-  int opchar;
-
-  opchar=cmd_opchar_check(cmd_io,des,param);
-  if(opchar<0) return opchar;
-  char str[] = {"\r\ncmd_do_testopchar called\r\nparam[0]="};
-
-  print((uint8_t *)str);
-  print((uint8_t *)param[0]);
-  print((uint8_t *)"\r\nparam[1]=");
-  print((uint8_t *)param[1]);
-  print((uint8_t *)"\r\nparam[2]=");
-  print((uint8_t *)param[2]);
-  print((uint8_t *)"\r\nparam[3]=");
-  print((uint8_t *)param[3]);
-  print((uint8_t *)"\r\nopchar=");
-  char opcharBuf[4];
-  i2str(opcharBuf, opchar, 1, 10);
-  print((uint8_t *)opcharBuf);
-  print((uint8_t *)"\r\n");
-  return 0;
-}
-
-int cmd_do_testparam(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
-{
-
-         char str[] = {"cmd_do_testparam called\r\nparam[0]="};
-
-         print((uint8_t *)str);
-         print((uint8_t *)param[0]);
-         print((uint8_t *)"\r\nparam[1]=");
-         print((uint8_t *)param[1]);
-         print((uint8_t *)"\r\nparam[2]=");
-         print((uint8_t *)param[2]);
-         print((uint8_t *)"\r\n");
-
-         return 0;
-}
-
-int cmd_do_testerror(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
-{
-  return -1234;
-}
-
-int cmd_do_test(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
+/**    Runs test of HOUT. Test, weather HOUT is in fault state, which means that HOUT_DIAG is shorted to ground
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_testhoutfault(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
 {
-       char str[] = {"This is the simplest command\r\n"};
-       print((uint8_t *)str);
-
-       return 0;
+       print((uint8_t *)"Testing fault state of HOUT port:");
+       uint8_t i;
+       for (i = 0; i < 6; i++) {
+               HOUTSetBit(houtPorts[i], houtBits[i], 1);
+               vTaskDelay(100/portTICK_RATE_MS);
+               if (HOUTGetBit(houtPorts[i+6], houtBits[i+6]) == 1) {
+                       print((uint8_t *)"\r\nOK");
+               }
+               else {
+                       print((uint8_t *)"\r\nFAIL");
+               }
+               HOUTSetBit(houtPorts[i], houtBits[i], 0);
+       }
+       return 0;
 }
 
-int cmd_do_testcmdio(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
+/**    Runs test of MOUT. Test, weather MOUT is in fault state, which means that MOUT_EN is shorted to ground
+ * @param[in]  cmd_io  Pointer to IO stack
+ * @param[in]  des             Pointer to command descriptor
+ * @param[in]  param   Parameters of command
+ * @return     0 when OK or error code
+ */
+int cmd_do_testmoutfault(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
 {
-    cmd_io_puts(cmd_io, "The first line of text\r\n");
-    cmd_io_puts(cmd_io, "The second line of text\r\n");
-    char str[1000];
-    int i;
-    for (i = 0; i < 1000; i++) {
-       str[i] = 'q';
-    }
-    str[999]='\0';
-    print((uint8_t *)str);
-    /* Only ED_LINE_CHARS character can be sent. */
-    return 0;
+       print((uint8_t *)"Testing fault state of MOUT port:");
+       uint8_t i;
+       for (i = 0; i < 6; i++) {
+               MOUTSetBit(moutPorts[i], moutBits[i], 1);
+               vTaskDelay(100/portTICK_RATE_MS);
+               if (MOUTGetBit(moutPorts[i+6], moutBits[i+6]) == 1) {
+                       print((uint8_t *)"\r\nOK");
+               }
+               else {
+                       print((uint8_t *)"\r\nFAIL");
+               }
+               MOUTSetBit(moutPorts[i], moutBits[i], 0);
+       }
+       return 0;
 }
 
-
 /* ------------------------------
  * User defined command variables
  * ------------------------------
  */
-int val;
 
 /* -------------------
  * Command definitions
  * -------------------
  */
+/** @brief command descriptor for get value of pin command */
+cmd_des_t const cmd_des_getPin={
+    0, 0,
+    "GETPIN*","Get value of pin at port given as suffix\r\n\t"
+                       "-suffix ADC1 pin<0;11>  - read value from ADC1[pin]\r\n\t"
+                       "-suffix DIN pin<8;15>   - read values from DIN[pin]\r\n\t"
+                       "-suffix HOUTD pin<1;6> - read values from HOUT_DIAG[pin]\r\n\t"
+                       "-suffix HOUTF pin<1;6> - read values from HOUT_IFBK[pin]\r\n\t"
+                       "-suffix MOUTE pin<1;6> - read values from MOUT_EN[pin]",
+    cmd_do_getPin, (void *)&cmd_list
+};
+/** @brief command descriptor for set value to pin command */
 cmd_des_t const cmd_des_setPin={
     0, 0,
-    "SETBIT*","Sets given value to defined pin of port in suffix\r\n\t"
-                       "-suffix: MOUT pin<1;6> value <0;1> - MOUT<pin>_IN <- value",
+    "SETPIN*","Set value to pin at port given as suffix\r\n\t"
+                       "-suffix: MOUTI pin<1;6> value <0;1> - MOUT[pin]_IN <- value\r\n\t"
+                       "-suffix: HOUTI pin<1;6> value <0;1> - HOUT[pin]_IN <- value",
     cmd_do_setPin, (void *)&cmd_list
 };
-
+/** @brief command descriptor for read values from port command */
 cmd_des_t const cmd_des_read={
     0, 0,
-    "READVAL*","Read values from channel\r\n\t"
-                       "-suffix ADC1 - read values from ADC1\r\n\t"
-                       "-suffix DIN  - read values from DIN\r\n\t"
-                       "-suffix MOUT - read values from MOUT",
+    "READVAL*","Read values from port\r\n\t"
+                       "-suffix ADC1  - read values from ADC1\r\n\t"
+                       "-suffix DIN   - read values from DIN\r\n\t"
+                               "-suffix HOUTD - read values from HOUT_DIAG\r\n\t"
+                       "-suffix HOUTF - read values from HOUT_IFBK\r\n\t"
+                       "-suffix MOUTE - read values from MOUT_EN",
     cmd_do_readValues, (void *)&cmd_list
 };
-
+/** @brief command descriptor for test ADC connection command */
 cmd_des_t const cmd_des_testadcconnetion={
     0, 0,
     "ADCCON","Test fitness of each ADC channel connection",
     cmd_do_testADC1Connection, (void *)&cmd_list
 };
+/** @brief command descriptor for test CAN internal loopback command */
 cmd_des_t const cmd_des_testcanloopback={
     0, 0,
-    "CANLOOPBACK","sends message from CAN1 to CAN2 in message box 1",
+    "CANLOOPBACK","Test CAN internal loopback",
     cmd_do_testcanloopback, (void *)&cmd_list
 };
+/** @brief command descriptor for test mout fault state command */
+cmd_des_t const cmd_des_testmoutfail={
+    0, 0,
+    "MOUTFAIL","Test if some MOUT port is in fault state",
+    cmd_do_testmoutfault, (void *)&cmd_list
+};
+/** @brief command descriptor for test hout fault state command */
+cmd_des_t const cmd_des_testhoutfail={
+    0, 0,
+    "HOUTFAIL","Test if some HOUT port is in fault state",
+    cmd_do_testhoutfault, (void *)&cmd_list
+};
+/** @brief command descriptor for show help command */
 cmd_des_t const cmd_des_help={
     0, 0,
     "HELP","prints help for commands\r\n",
     cmd_do_help, (void *)&cmd_list
 };
 
-cmd_des_t const cmd_des_val={
-    0, CDESM_OPCHR|CDESM_RW,
-    "VAL","use ':' or '?' to store/read value of an integer variable",
-    cmd_do_rw_int,  (void *)&val};
-
-cmd_des_t const cmd_des_valro={
-    0, CDESM_OPCHR|CDESM_RD,
-    "VALRO","read only access to an integer variable",
-    cmd_do_rw_int, (void *)&val};
-
-cmd_des_t const cmd_des_valwo={
-    0, CDESM_OPCHR|CDESM_WR,
-    "VALWO","write only access to an integer variable",
-    cmd_do_rw_int, (void *)&val};
-
-cmd_des_t const cmd_des_opchar_test={
-    0, CDESM_OPCHR|CDESM_RW,
-    "OPCHAR","opchar test (use ':' or '?' as suffix)",
-    cmd_do_testopchar};
-
-cmd_des_t const cmd_des_testio={
-    0, 0,
-    "TESTIO","test of cmd_io inside functions (universal way to print results)",
-    cmd_do_testcmdio};
-
-cmd_des_t const cmd_des_error={
-    0, 0,
-    "TESTERROR","should produce an error",
-    cmd_do_testerror};
-
-cmd_des_t const cmd_des_param={
-    0, 0,
-    "PARAM","test of parameters",
-    cmd_do_testparam};
-
-cmd_des_t const cmd_des_opchar_testro={
-    0, CDESM_OPCHR|CDESM_RD,
-    "OPCHARRO","opchar test (only '?' is allowed)",
-    cmd_do_testopchar};
-
-cmd_des_t const cmd_des_test={
-    0, 0,
-    "TEST","the simplest command",
-    cmd_do_test};
-
-cmd_des_t const cmd_des_prefix={
-    0, 0,
-    "PREFIX*","suffix of the command is supplied as a parametr",
-    cmd_do_testparam};
-
-cmd_des_t const cmd_des_num={
-    0, 0,
-    "NUM##","suffix of the command (two digits) is supplied as a parametr",
-    cmd_do_testparam};
-
-cmd_des_t const cmd_des_char={
-    0, 0,
-    "CHAR?","suffix of the command (one character) is supplied as a parametr",
-    cmd_do_testparam};
-
-cmd_des_t const cmd_des_charmid={
-    0, 0,
-    "CHAR?MID","middle character of the command is supplied as a parametr",
-    cmd_do_testparam};
-
-cmd_des_t const cmd_des_hiddedn={
-    0, 0,
-    "HIDDEN","should not be available",
-    cmd_do_test};
-
 /*  ------------------------
  *  Command lists definitons
  *  ------------------------
  */
-cmd_des_t const *cmd_list_1[]={
-    &cmd_des_val,
-    &cmd_des_valro,
-    &cmd_des_valwo,
-    &cmd_des_opchar_test,
-    &cmd_des_opchar_testro,
-    NULL
-    };
-
-cmd_des_t const *cmd_list_2[]={
-    &cmd_des_test,
-    &cmd_des_testio,
-    &cmd_des_param,
-    &cmd_des_prefix,
-    &cmd_des_num,
-    &cmd_des_char,
-    &cmd_des_charmid,
-    NULL
-    };
-
+/** @brief Main list of commands */
 cmd_des_t const *cmd_list_main[]={
   &cmd_des_help,
-  &cmd_des_error,
   &cmd_des_testcanloopback,
   &cmd_des_testadcconnetion,
+  &cmd_des_testmoutfail,
+  &cmd_des_testhoutfail,
   &cmd_des_read,
   &cmd_des_setPin,
-  CMD_DES_INCLUDE_SUBLIST(cmd_list_1),
-  CMD_DES_CONTINUE_AT(cmd_list_2),
-  &cmd_des_hiddedn,
+  &cmd_des_getPin,
   NULL
 };
 
+/** @brief pointer to the main list */
 cmd_des_t const **cmd_list = cmd_list_main;
index c98db12d8f8f0bffc4246a4890bf68b08abcf5ff..0b4fe28972c343ebbe2a33483382a56a170561cc 100644 (file)
@@ -1,36 +1,26 @@
-/*
- * din.c
- *
- *  Created on: 29.8.2012
- *      Author: michal
- */
+/** @file din.c
+*   @brief Din port
+*   @date 28.August.2012
+*
+*  Set of din port adresses, din bit adresses, methods for getting and setting port values
+*
+*/
+
+/* Include files */
 #include "din.h"
 
+/** Set of port adresses for each pin of DIN port */
 gioPORT_t * dinPorts[8] = {    DIN_PORT, DIN_PORT, DIN_PORT, DIN_PORT,
                                                        DIN_PORT, DIN_PORT, DIN_PORT, DIN_PORT
                                                  };
+/** Set of bit indexes for each pin of DIN port */
 uint8_t dinBits[8] ={  DIN8_BIT, DIN9_BIT, DIN10_BIT, DIN11_BIT,
                                                DIN12_BIT, DIN13_BIT, DIN14_BIT, DIN15_BIT
                                        };
 
-
-/** @fn void dinSetPort(uint32_t value)
-*   @brief Set value to port connected to DIN
-*   @param[in] value to write to port
-*                      - 0bit - 7bit equals to DIN8 - DIN15 value
-*                      - 8bit - 31bit does not matter
-*
-*   Set value of whole DIN port
-*/
 void dinSetPort(uint32_t value) {
        gioSetPort(DIN_PORT, value);
 }
-
-/** @fn uint32_t dinGetPort()
-*   @brief Read value from port connected to DIN
-*
-*   Reads a the current value from the DIN port
-*/
 uint32_t dinGetPort() {
        return gioGetPort(DIN_PORT);
 }
index 42ab803e0a8f438a3464f174e3ccc24184efe62a..f77f8244968f006efaed97becbfe6f8c6e972726 100644 (file)
@@ -961,20 +961,20 @@ void hetInit(void)
     /** - Set HET pins direction */\r
     hetREG1->DIR = 0x00000000U \r
                 | 0x00000000U \r
+                | 0x20000000U \r
                 | 0x00000000U \r
                 | 0x00000000U \r
                 | 0x00000000U \r
+                | 0x02000000U \r
                 | 0x00000000U \r
                 | 0x00000000U \r
+                | 0x00400000U \r
                 | 0x00000000U \r
+                | 0x00100000U \r
                 | 0x00000000U \r
+                | 0x00040000U \r
                 | 0x00000000U \r
-                | 0x00000000U \r
-                | 0x00000000U \r
-                | 0x00000000U \r
-                | 0x00000000U \r
-                | 0x00000000U \r
-                | 0x00000000U \r
+                | 0x00010000U \r
                 | 0x00000000U \r
                 | 0x00004000U \r
                 | 0x00000000U \r
diff --git a/source/hout.c b/source/hout.c
new file mode 100644 (file)
index 0000000..b1b2e97
--- /dev/null
@@ -0,0 +1,38 @@
+/** @file hout.c
+*   @brief Hout port
+*   @date 3.September.2012
+*
+*  Set of hout port adresses, hout bit adresses, methods for getting and setting port values
+*
+*/
+
+/* Include files */
+#include "hout.h"
+
+/** Set of port adresses for each pin of HOUT port */
+gioPORT_t * houtPorts[12] = {  HOUT_PORT, HOUT_PORT, HOUT_PORT,
+                                                               HOUT_PORT, HOUT_PORT, HOUT_PORT,
+                                                               HOUT_PORT, HOUT_PORT, HOUT_PORT,
+                                                               HOUT_PORT, HOUT_PORT, HOUT_PORT
+};
+/** Set of bit indexes for each pin of HOUT port */
+uint8_t houtBits[12] ={        HOUT1_IN_BIT, HOUT2_IN_BIT, HOUT3_IN_BIT,
+                                               HOUT4_IN_BIT, HOUT5_IN_BIT, HOUT6_IN_BIT,
+                                               HOUT1_DIAG_BIT, HOUT2_DIAG_BIT, HOUT3_DIAG_BIT,
+                                               HOUT4_DIAG_BIT, HOUT5_DIAG_BIT, HOUT6_DIAG_BIT
+                                       };
+
+void houtSetPort(uint32_t value) {
+       uint8_t i;
+       for (i = 0; i < 12; i++) {
+               gioSetBit(houtPorts[i], houtBits[i], value&(1<<i));
+       }
+}
+uint32_t houtGetPort() {
+       uint8_t i;
+       uint32_t value = 0;
+       for (i = 0; i < 12; i++) {
+               value |= (gioGetBit(houtPorts[i], houtBits[i])<<i);
+       }
+       return value;
+}
index a7eff2cf018bfa2d42368eccc22e85537d80329e..49ed51e26c90c88db47d52f750346940b03c4ce1 100644 (file)
@@ -1,40 +1,27 @@
-/*
- * mout.c
- *
- *  Created on: 29.8.2012
- *      Author: michal
- */
+/** @file mout.c
+*   @brief Mout port
+*   @date 29.August.2012
+*
+*  Set of mout port adresses, mout bit adresses, methods for getting and setting port values
+*
+*/
 
+/* Include files */
 #include "mout.h"
 
+/** Set of port adresses for each pin of MOUT port */
 gioPORT_t * moutPorts[12] = {  MOUT_PORT_HET, MOUT_PORT_HET, MOUT_PORT_GIO,
                                                        MOUT_PORT_GIO, MOUT_PORT_GIO, MOUT_PORT_GIO,
                                                        MOUT_PORT_SPI, MOUT_PORT_SPI, MOUT_PORT_GIO,
                                                        MOUT_PORT_GIO, MOUT_PORT_GIO, MOUT_PORT_GIO
                                                  };
+/** Set of bit indexes for each pin of MOUT port */
 uint8_t moutBits[12] ={        MOUT1_IN_BIT, MOUT2_IN_BIT, MOUT3_IN_BIT,
                                                MOUT4_IN_BIT, MOUT5_IN_BIT, MOUT6_IN_BIT,
                                                MOUT1_EN_BIT, MOUT2_EN_BIT, MOUT3_EN_BIT,
                                                MOUT4_EN_BIT, MOUT5_EN_BIT, MOUT6_EN_BIT
                                        };
 
-/** @fn void moutSetPort(uint32_t value)
-*   @brief Set value to ports connected to MOUT
-*   @param[in] value to write to port
-*                      - bit 0 - MOUT1_IN - defined as output port HETPORT1
-*                      - bit 1 - MOUT2_IN - defined as output port HETPORT1
-*                      - bit 2 - MOUT3_IN - defined as output port GIOB
-*                      - bit 3 - MOUT4_IN - defined as output port GIOB
-*                      - bit 4 - MOUT5_IN - defined as output port GIOB
-*                      - bit 5 - MOUT6_IN - defined as output port GIOB
-*                      - bit 6 - MOUT1_EN - defined as input port SPIPORT
-*                      - bit 7 - MOUT2_EN - defined as input port SPIPORT
-*                      - bit 8 - MOUT3_EN - defined as input port GIOB
-*                      - bit 9 - MOUT4_EN - defined as input port GIOB
-*                      - bit 10 - MOUT5_EN - defined as input port GIOB
-*                      - bit 11 - MOUT6_EN - defined as input port GIOB
-*   Set value to whole MOUT port. Setting values to bits connected with ports defined as output makes no effect.
-*/
 void moutSetPort(uint32_t value) {
        uint8_t i;
        for (i = 0; i < 12; i++) {
@@ -42,22 +29,7 @@ void moutSetPort(uint32_t value) {
        }
 }
 
-/** @fn void moutGetPort()
-*   @brief Get value from ports connected to MOUT
-*                      - bit 0 - MOUT1_IN - defined as output port HETPORT1
-*                      - bit 1 - MOUT2_IN - defined as output port HETPORT1
-*                      - bit 2 - MOUT3_IN - defined as output port GIOB
-*                      - bit 3 - MOUT4_IN - defined as output port GIOB
-*                      - bit 4 - MOUT5_IN - defined as output port GIOB
-*                      - bit 5 - MOUT6_IN - defined as output port GIOB
-*                      - bit 6 - MOUT1_EN - defined as input port SPIPORT
-*                      - bit 7 - MOUT2_EN - defined as input port SPIPORT
-*                      - bit 8 - MOUT3_EN - defined as input port GIOB
-*                      - bit 9 - MOUT4_EN - defined as input port GIOB
-*                      - bit 10 - MOUT5_EN - defined as input port GIOB
-*                      - bit 11 - MOUT6_EN - defined as input port GIOB
-*   Get value from whole MOUT port. Getting values from ports defined as output returns values last asserted by Controller itself.
-*/
+
 uint32_t moutGetPort() {
        uint8_t i;
        uint32_t value = 0;
index a7e33ca42e9a29806ce3c2f7eeaa4657c1e64ed1..4fd62ce48f95afbee51e973d861dde758a741b61 100644 (file)
 #include "os_semphr.h"\r
 #include "os_task.h"\r
 \r
-extern xQueueHandle inputCharacterQueue;\r
-extern uint8_t character;\r
+/** @brief Semaphore blocking task when it waits for interrupt signaling message receive\r
+ *\r
+ * Defined in commands.c */\r
 extern xSemaphoreHandle canMsgReceived;\r
-\r
+/** @brief Semaphore blocking task when it waits for interrupt signaling end of the conversion\r
+ *\r
+ * Defined in commands.c */\r
 extern xSemaphoreHandle adcDataConverted;\r
-extern ADCData_t adc1Data;\r
-\r
+/** @brief Data structure containing converted data from ADC\r
+ *\r
+ *     Defined in commands.c */\r
+extern ADCData_t adcData;\r
 /* USER CODE END */\r
 \r
 void esmGroup1Notification(uint32_t channel)\r
@@ -82,29 +87,28 @@ void memoryPort1TestFailNotification(uint32_t groupSelect, uint32_t dataSelect,
 /* USER CODE END */\r
 void adcNotification(adcBASE_t *adc, uint32_t group)\r
 {\r
-\r
 /* USER CODE BEGIN (11) */\r
-       if (adc->GxINTFLG[group] & 8) { // Group has been read\r
+       // Group selected by group selector has been read\r
+       if (adc->GxINTFLG[group] & 8) {\r
                uint32_t ch_count;\r
-               ch_count = adcGetData(adc, group, &adc1Data.adc_data[0]);\r
-               adc1Data.flags |= (ch_count == adc1Data.ch_count) ? 0 : BAD_CHANNELS_COUNT;\r
+               ch_count = adcGetData(adc, group, &adcData.adc_data[0]);\r
+               adcData.flags |= (ch_count == adcData.ch_count) ? 0 : BAD_CHANNELS_COUNT;\r
                xSemaphoreGiveFromISR(adcDataConverted, NULL);\r
        }\r
-       if (adc->GxINTFLG[group] & 2) { // Memory overrun detected\r
-               adc1Data.flags |= MEM_OVERRUN;\r
+       // Memory overrun detected - set flag\r
+       if (adc->GxINTFLG[group] & 2) {\r
+               adcData.flags |= MEM_OVERRUN;\r
                adc->GxFIFORESETCR[1] = 1;\r
        }\r
        /* USER CODE END */\r
-\r
 }\r
 \r
 /* USER CODE BEGIN (12) */\r
 /* USER CODE END */\r
 void canErrorNotification(canBASE_t *node, uint32_t notification)\r
 {\r
-\r
 /* USER CODE BEGIN (13) */\r
-       if (notification != canERROR_OK) while(1) ;\r
+       if (notification != canERROR_OK) while(1) ;             // Critical error during CAN transaction\r
 /* USER CODE END */\r
 \r
 }\r
@@ -114,7 +118,6 @@ void canErrorNotification(canBASE_t *node, uint32_t notification)
 \r
 void canMessageNotification(canBASE_t *node, uint32_t messageBox)  \r
 {\r
-\r
 /* USER CODE BEGIN (15) */\r
     if(node==canREG2)\r
     {\r
@@ -127,7 +130,6 @@ void canMessageNotification(canBASE_t *node, uint32_t messageBox)
     }\r
 \r
 /* USER CODE END */\r
-\r
 }\r
 \r
 /* USER CODE BEGIN (16) */\r
@@ -171,11 +173,10 @@ void sciNotification(sciBASE_t *sci, uint32_t flags)
 /* USER CODE BEGIN (29) */\r
        if (sci == sciREG) {\r
                if (flags & SCI_RX_INT) {\r
-                       sciReceive(sci, 1, NULL);\r
+                       sciReceive(sci, 1, NULL);       // Restart receiving\r
                }\r
        }\r
 /* USER CODE END */\r
-\r
 }\r
 \r
 /* USER CODE BEGIN (30) */\r
index 7841f965607d8113fd24c518a67759a0db85f3ee..79217611a8e2b2f123bcee82bacf615ec59246a2 100644 (file)
@@ -356,6 +356,7 @@ void sciReceive(sciBASE_t *sci, uint32_t length, uint8_t *data)
         }\r
     }\r
 /* USER CODE END */\r
+\r
 /* USER CODE BEGIN (17) */\r
 /* USER CODE END */\r
 }\r
@@ -512,6 +513,7 @@ void sciHighLevelInterrupt(void)
         break;\r
     }\r
 /* USER CODE END */\r
+\r
 /* USER CODE BEGIN (27) */\r
 /* USER CODE END */\r
 }\r
index 3a9acb1346ba457b23128f13ee68f554b5454cb2..e2992ee6032d11d55f9c8f1e366a7061dd298fc8 100644 (file)
@@ -51,17 +51,13 @@ void main(void)
        sciInit();\r
        canInit();\r
     adcInit();\r
-    canEnableErrorNotification(canREG1);\r
-    canEnableErrorNotification(canREG2);\r
-\r
-\r
        _enable_IRQ();\r
-       initCmdProc(1, (uint8_t*)"\r\nType commands\r\n", (uint8_t *)"\r\n--> ");\r
 \r
+       initCmdProc(1, (uint8_t*)"\r\nType commands\r\n", (uint8_t *)"\r\n--> ");\r
        vTaskStartScheduler();\r
+\r
        //We should never get here\r
        while(1) ;\r
-\r
 /* USER CODE END */\r
 }\r
 \r
index 5319374baa16afa817ce3b4403269ccbfa837d77..9bcff5dc8a859e42a5ea1b32702ba41bfd9e2b34 100644 (file)
@@ -137,7 +137,7 @@ static const t_isrFuncPTR s_vim_init[] =
     &phantomInterrupt,\r
     &phantomInterrupt,\r
     &phantomInterrupt,\r
-    &phantomInterrupt,\r
+    &adc2Group1Interrupt,\r
     &phantomInterrupt,\r
     &phantomInterrupt,\r
     &phantomInterrupt,\r
@@ -885,7 +885,7 @@ void _c_int00()
                         | (0U << 16U)\r
                         | (0U << 17U)\r
                         | (0U << 18U)\r
-                        | (0U << 19U)\r
+                        | (1U << 19U)\r
                         | (0U << 20U)\r
                         | (0U << 21U)\r
                         | (0U << 22U)\r