typedef struct FSM_State_s {
unsigned PC5 : 1;
unsigned PC4 : 1;
unsigned PC3 : 1;
unsigned PC2 : 1;
unsigned PD4 : 1;
unsigned PD5 : 1;
unsigned PD6 : 1;
unsigned PD7 : 1;
} FSM_State_t;
typedef unsigned int PTRType;
typedef struct stateEntry_s {
PTRType next;
FSM_State_t state;
} stateEntry_t;
//----------| PC5 |----------
#define on 0
#define off 1
//----------| PC4 |----------
#define on 0
#define off 1
//----------| PC3 |----------
#define on 0
#define off 1
//----------| PC2 |----------
#define on 0
#define off 1
//----------| PD4 |----------
#define on 0
#define off 1
//----------| PD5 |----------
#define on 0
#define off 1
//----------| PD6 |----------
#define on 0
#define off 1
//----------| PD7 |----------
#define on 0
#define off 1
//------------
// PD7 , PD6 , PD5 , PD4 , PC2 , PC3 , PC4 , PC5 ,
stateEntry_t stateTable[] = {
{ 0, { on , on , on , on , on , on , on , on , }}, /* index: 0 */
{ 1, { on , on , on , on , on , on , on , off , }}, /* index: 1 */
{ 2, { on , on , on , on , on , on , off , on , }}, /* index: 2 */
{ 3, { on , on , on , on , on , on , off , off , }}, /* index: 3 */
{ 4, { on , on , on , on , on , off , on , on , }}, /* index: 4 */
{ 5, { on , on , on , on , on , off , on , off , }}, /* index: 5 */
{ 6, { on , on , on , on , on , off , off , on , }}, /* index: 6 */
{ 7, { on , on , on , on , on , off , off , off , }}, /* index: 7 */
{ 8, { on , on , on , on , off , on , on , on , }}, /* index: 8 */
{ 9, { on , on , on , on , off , on , on , off , }}, /* index: 9 */
{ 10, { on , on , on , on , off , on , off , on , }}, /* index: 10 */
{ 11, { on , on , on , on , off , on , off , off , }}, /* index: 11 */
{ 12, { on , on , on , on , off , off , on , on , }}, /* index: 12 */
{ 13, { on , on , on , on , off , off , on , off , }}, /* index: 13 */
{ 14, { on , on , on , on , off , off , off , on , }}, /* index: 14 */
{ 15, { on , on , on , on , off , off , off , off , }}, /* index: 15 */
{ 16, { on , on , on , off , on , on , on , on , }}, /* index: 16 */
{ 17, { on , on , on , off , on , on , on , off , }}, /* index: 17 */
{ 18, { on , on , on , off , on , on , off , on , }}, /* index: 18 */
{ 19, { on , on , on , off , on , on , off , off , }}, /* index: 19 */
{ 20, { on , on , on , off , on , off , on , on , }}, /* index: 20 */
{ 21, { on , on , on , off , on , off , on , off , }}, /* index: 21 */
{ 22, { on , on , on , off , on , off , off , on , }}, /* index: 22 */
{ 23, { on , on , on , off , on , off , off , off , }}, /* index: 23 */
{ 24, { on , on , on , off , off , on , on , on , }}, /* index: 24 */
{ 25, { on , on , on , off , off , on , on , off , }}, /* index: 25 */
{ 26, { on , on , on , off , off , on , off , on , }}, /* index: 26 */
{ 27, { on , on , on , off , off , on , off , off , }}, /* index: 27 */
{ 28, { on , on , on , off , off , off , on , on , }}, /* index: 28 */
{ 29, { on , on , on , off , off , off , on , off , }}, /* index: 29 */
{ 30, { on , on , on , off , off , off , off , on , }}, /* index: 30 */
{ 31, { on , on , on , off , off , off , off , off , }}, /* index: 31 */
{ 32, { on , on , off , on , on , on , on , on , }}, /* index: 32 */
{ 33, { on , on , off , on , on , on , on , off , }}, /* index: 33 */
{ 34, { on , on , off , on , on , on , off , on , }}, /* index: 34 */
{ 35, { on , on , off , on , on , on , off , off , }}, /* index: 35 */
{ 36, { on , on , off , on , on , off , on , on , }}, /* index: 36 */
{ 37, { on , on , off , on , on , off , on , off , }}, /* index: 37 */
{ 38, { on , on , off , on , on , off , off , on , }}, /* index: 38 */
{ 39, { on , on , off , on , on , off , off , off , }}, /* index: 39 */
{ 40, { on , on , off , on , off , on , on , on , }}, /* index: 40 */
{ 41, { on , on , off , on , off , on , on , off , }}, /* index: 41 */
{ 42, { on , on , off , on , off , on , off , on , }}, /* index: 42 */
{ 43, { on , on , off , on , off , on , off , off , }}, /* index: 43 */
{ 44, { on , on , off , on , off , off , on , on , }}, /* index: 44 */
{ 45, { on , on , off , on , off , off , on , off , }}, /* index: 45 */
{ 46, { on , on , off , on , off , off , off , on , }}, /* index: 46 */
{ 47, { on , on , off , on , off , off , off , off , }}, /* index: 47 */
{ 48, { on , on , off , off , on , on , on , on , }}, /* index: 48 */
{ 49, { on , on , off , off , on , on , on , off , }}, /* index: 49 */
{ 50, { on , on , off , off , on , on , off , on , }}, /* index: 50 */
{ 51, { on , on , off , off , on , on , off , off , }}, /* index: 51 */
{ 52, { on , on , off , off , on , off , on , on , }}, /* index: 52 */
{ 53, { on , on , off , off , on , off , on , off , }}, /* index: 53 */
{ 54, { on , on , off , off , on , off , off , on , }}, /* index: 54 */
{ 55, { on , on , off , off , on , off , off , off , }}, /* index: 55 */
{ 56, { on , on , off , off , off , on , on , on , }}, /* index: 56 */
{ 57, { on , on , off , off , off , on , on , off , }}, /* index: 57 */
{ 58, { on , on , off , off , off , on , off , on , }}, /* index: 58 */
{ 59, { on , on , off , off , off , on , off , off , }}, /* index: 59 */
{ 60, { on , on , off , off , off , off , on , on , }}, /* index: 60 */
{ 61, { on , on , off , off , off , off , on , off , }}, /* index: 61 */
{ 62, { on , on , off , off , off , off , off , on , }}, /* index: 62 */
{ 63, { on , on , off , off , off , off , off , off , }}, /* index: 63 */
{ 64, { on , off , on , on , on , on , on , on , }}, /* index: 64 */
{ 65, { on , off , on , on , on , on , on , off , }}, /* index: 65 */
{ 66, { on , off , on , on , on , on , off , on , }}, /* index: 66 */
{ 67, { on , off , on , on , on , on , off , off , }}, /* index: 67 */
{ 68, { on , off , on , on , on , off , on , on , }}, /* index: 68 */
{ 69, { on , off , on , on , on , off , on , off , }}, /* index: 69 */
{ 70, { on , off , on , on , on , off , off , on , }}, /* index: 70 */
{ 71, { on , off , on , on , on , off , off , off , }}, /* index: 71 */
{ 72, { on , off , on , on , off , on , on , on , }}, /* index: 72 */
{ 73, { on , off , on , on , off , on , on , off , }}, /* index: 73 */
{ 74, { on , off , on , on , off , on , off , on , }}, /* index: 74 */
{ 75, { on , off , on , on , off , on , off , off , }}, /* index: 75 */
{ 76, { on , off , on , on , off , off , on , on , }}, /* index: 76 */
{ 77, { on , off , on , on , off , off , on , off , }}, /* index: 77 */
{ 78, { on , off , on , on , off , off , off , on , }}, /* index: 78 */
{ 79, { on , off , on , on , off , off , off , off , }}, /* index: 79 */
{ 80, { on , off , on , off , on , on , on , on , }}, /* index: 80 */
{ 81, { on , off , on , off , on , on , on , off , }}, /* index: 81 */
{ 82, { on , off , on , off , on , on , off , on , }}, /* index: 82 */
{ 83, { on , off , on , off , on , on , off , off , }}, /* index: 83 */
{ 84, { on , off , on , off , on , off , on , on , }}, /* index: 84 */
{ 85, { on , off , on , off , on , off , on , off , }}, /* index: 85 */
{ 86, { on , off , on , off , on , off , off , on , }}, /* index: 86 */
{ 87, { on , off , on , off , on , off , off , off , }}, /* index: 87 */
{ 88, { on , off , on , off , off , on , on , on , }}, /* index: 88 */
{ 89, { on , off , on , off , off , on , on , off , }}, /* index: 89 */
{ 90, { on , off , on , off , off , on , off , on , }}, /* index: 90 */
{ 91, { on , off , on , off , off , on , off , off , }}, /* index: 91 */
{ 92, { on , off , on , off , off , off , on , on , }}, /* index: 92 */
{ 93, { on , off , on , off , off , off , on , off , }}, /* index: 93 */
{ 94, { on , off , on , off , off , off , off , on , }}, /* index: 94 */
{ 95, { on , off , on , off , off , off , off , off , }}, /* index: 95 */
{ 96, { on , off , off , on , on , on , on , on , }}, /* index: 96 */
{ 97, { on , off , off , on , on , on , on , off , }}, /* index: 97 */
{ 98, { on , off , off , on , on , on , off , on , }}, /* index: 98 */
{ 99, { on , off , off , on , on , on , off , off , }}, /* index: 99 */
{ 100, { on , off , off , on , on , off , on , on , }}, /* index: 100 */
{ 101, { on , off , off , on , on , off , on , off , }}, /* index: 101 */
{ 102, { on , off , off , on , on , off , off , on , }}, /* index: 102 */
{ 103, { on , off , off , on , on , off , off , off , }}, /* index: 103 */
{ 104, { on , off , off , on , off , on , on , on , }}, /* index: 104 */
{ 105, { on , off , off , on , off , on , on , off , }}, /* index: 105 */
{ 106, { on , off , off , on , off , on , off , on , }}, /* index: 106 */
{ 107, { on , off , off , on , off , on , off , off , }}, /* index: 107 */
{ 108, { on , off , off , on , off , off , on , on , }}, /* index: 108 */
{ 109, { on , off , off , on , off , off , on , off , }}, /* index: 109 */
{ 110, { on , off , off , on , off , off , off , on , }}, /* index: 110 */
{ 111, { on , off , off , on , off , off , off , off , }}, /* index: 111 */
{ 112, { on , off , off , off , on , on , on , on , }}, /* index: 112 */
{ 113, { on , off , off , off , on , on , on , off , }}, /* index: 113 */
{ 114, { on , off , off , off , on , on , off , on , }}, /* index: 114 */
{ 115, { on , off , off , off , on , on , off , off , }}, /* index: 115 */
{ 116, { on , off , off , off , on , off , on , on , }}, /* index: 116 */
{ 117, { on , off , off , off , on , off , on , off , }}, /* index: 117 */
{ 118, { on , off , off , off , on , off , off , on , }}, /* index: 118 */
{ 119, { on , off , off , off , on , off , off , off , }}, /* index: 119 */
{ 120, { on , off , off , off , off , on , on , on , }}, /* index: 120 */
{ 121, { on , off , off , off , off , on , on , off , }}, /* index: 121 */
{ 122, { on , off , off , off , off , on , off , on , }}, /* index: 122 */
{ 123, { on , off , off , off , off , on , off , off , }}, /* index: 123 */
{ 124, { on , off , off , off , off , off , on , on , }}, /* index: 124 */
{ 125, { on , off , off , off , off , off , on , off , }}, /* index: 125 */
{ 126, { on , off , off , off , off , off , off , on , }}, /* index: 126 */
{ 127, { on , off , off , off , off , off , off , off , }}, /* index: 127 */
{ 128, { off , on , on , on , on , on , on , on , }}, /* index: 128 */
{ 129, { off , on , on , on , on , on , on , off , }}, /* index: 129 */
{ 130, { off , on , on , on , on , on , off , on , }}, /* index: 130 */
{ 131, { off , on , on , on , on , on , off , off , }}, /* index: 131 */
{ 132, { off , on , on , on , on , off , on , on , }}, /* index: 132 */
{ 133, { off , on , on , on , on , off , on , off , }}, /* index: 133 */
{ 134, { off , on , on , on , on , off , off , on , }}, /* index: 134 */
{ 135, { off , on , on , on , on , off , off , off , }}, /* index: 135 */
{ 136, { off , on , on , on , off , on , on , on , }}, /* index: 136 */
{ 137, { off , on , on , on , off , on , on , off , }}, /* index: 137 */
{ 138, { off , on , on , on , off , on , off , on , }}, /* index: 138 */
{ 139, { off , on , on , on , off , on , off , off , }}, /* index: 139 */
{ 140, { off , on , on , on , off , off , on , on , }}, /* index: 140 */
{ 141, { off , on , on , on , off , off , on , off , }}, /* index: 141 */
{ 142, { off , on , on , on , off , off , off , on , }}, /* index: 142 */
{ 143, { off , on , on , on , off , off , off , off , }}, /* index: 143 */
{ 144, { off , on , on , off , on , on , on , on , }}, /* index: 144 */
{ 145, { off , on , on , off , on , on , on , off , }}, /* index: 145 */
{ 146, { off , on , on , off , on , on , off , on , }}, /* index: 146 */
{ 147, { off , on , on , off , on , on , off , off , }}, /* index: 147 */
{ 148, { off , on , on , off , on , off , on , on , }}, /* index: 148 */
{ 149, { off , on , on , off , on , off , on , off , }}, /* index: 149 */
{ 150, { off , on , on , off , on , off , off , on , }}, /* index: 150 */
{ 151, { off , on , on , off , on , off , off , off , }}, /* index: 151 */
{ 152, { off , on , on , off , off , on , on , on , }}, /* index: 152 */
{ 153, { off , on , on , off , off , on , on , off , }}, /* index: 153 */
{ 154, { off , on , on , off , off , on , off , on , }}, /* index: 154 */
{ 155, { off , on , on , off , off , on , off , off , }}, /* index: 155 */
{ 156, { off , on , on , off , off , off , on , on , }}, /* index: 156 */
{ 157, { off , on , on , off , off , off , on , off , }}, /* index: 157 */
{ 158, { off , on , on , off , off , off , off , on , }}, /* index: 158 */
{ 159, { off , on , on , off , off , off , off , off , }}, /* index: 159 */
{ 160, { off , on , off , on , on , on , on , on , }}, /* index: 160 */
{ 161, { off , on , off , on , on , on , on , off , }}, /* index: 161 */
{ 162, { off , on , off , on , on , on , off , on , }}, /* index: 162 */
{ 163, { off , on , off , on , on , on , off , off , }}, /* index: 163 */
{ 164, { off , on , off , on , on , off , on , on , }}, /* index: 164 */
{ 165, { off , on , off , on , on , off , on , off , }}, /* index: 165 */
{ 166, { off , on , off , on , on , off , off , on , }}, /* index: 166 */
{ 167, { off , on , off , on , on , off , off , off , }}, /* index: 167 */
{ 168, { off , on , off , on , off , on , on , on , }}, /* index: 168 */
{ 169, { off , on , off , on , off , on , on , off , }}, /* index: 169 */
{ 170, { off , on , off , on , off , on , off , on , }}, /* index: 170 */
{ 171, { off , on , off , on , off , on , off , off , }}, /* index: 171 */
{ 172, { off , on , off , on , off , off , on , on , }}, /* index: 172 */
{ 173, { off , on , off , on , off , off , on , off , }}, /* index: 173 */
{ 174, { off , on , off , on , off , off , off , on , }}, /* index: 174 */
{ 175, { off , on , off , on , off , off , off , off , }}, /* index: 175 */
{ 176, { off , on , off , off , on , on , on , on , }}, /* index: 176 */
{ 177, { off , on , off , off , on , on , on , off , }}, /* index: 177 */
{ 178, { off , on , off , off , on , on , off , on , }}, /* index: 178 */
{ 179, { off , on , off , off , on , on , off , off , }}, /* index: 179 */
{ 180, { off , on , off , off , on , off , on , on , }}, /* index: 180 */
{ 181, { off , on , off , off , on , off , on , off , }}, /* index: 181 */
{ 182, { off , on , off , off , on , off , off , on , }}, /* index: 182 */
{ 183, { off , on , off , off , on , off , off , off , }}, /* index: 183 */
{ 184, { off , on , off , off , off , on , on , on , }}, /* index: 184 */
{ 185, { off , on , off , off , off , on , on , off , }}, /* index: 185 */
{ 186, { off , on , off , off , off , on , off , on , }}, /* index: 186 */
{ 187, { off , on , off , off , off , on , off , off , }}, /* index: 187 */
{ 188, { off , on , off , off , off , off , on , on , }}, /* index: 188 */
{ 189, { off , on , off , off , off , off , on , off , }}, /* index: 189 */
{ 190, { off , on , off , off , off , off , off , on , }}, /* index: 190 */
{ 191, { off , on , off , off , off , off , off , off , }}, /* index: 191 */
{ 192, { off , off , on , on , on , on , on , on , }}, /* index: 192 */
{ 193, { off , off , on , on , on , on , on , off , }}, /* index: 193 */
{ 194, { off , off , on , on , on , on , off , on , }}, /* index: 194 */
{ 195, { off , off , on , on , on , on , off , off , }}, /* index: 195 */
{ 196, { off , off , on , on , on , off , on , on , }}, /* index: 196 */
{ 197, { off , off , on , on , on , off , on , off , }}, /* index: 197 */
{ 198, { off , off , on , on , on , off , off , on , }}, /* index: 198 */
{ 199, { off , off , on , on , on , off , off , off , }}, /* index: 199 */
{ 200, { off , off , on , on , off , on , on , on , }}, /* index: 200 */
{ 201, { off , off , on , on , off , on , on , off , }}, /* index: 201 */
{ 202, { off , off , on , on , off , on , off , on , }}, /* index: 202 */
{ 203, { off , off , on , on , off , on , off , off , }}, /* index: 203 */
{ 204, { off , off , on , on , off , off , on , on , }}, /* index: 204 */
{ 205, { off , off , on , on , off , off , on , off , }}, /* index: 205 */
{ 206, { off , off , on , on , off , off , off , on , }}, /* index: 206 */
{ 207, { off , off , on , on , off , off , off , off , }}, /* index: 207 */
{ 208, { off , off , on , off , on , on , on , on , }}, /* index: 208 */
{ 209, { off , off , on , off , on , on , on , off , }}, /* index: 209 */
{ 210, { off , off , on , off , on , on , off , on , }}, /* index: 210 */
{ 211, { off , off , on , off , on , on , off , off , }}, /* index: 211 */
{ 212, { off , off , on , off , on , off , on , on , }}, /* index: 212 */
{ 213, { off , off , on , off , on , off , on , off , }}, /* index: 213 */
{ 214, { off , off , on , off , on , off , off , on , }}, /* index: 214 */
{ 215, { off , off , on , off , on , off , off , off , }}, /* index: 215 */
{ 216, { off , off , on , off , off , on , on , on , }}, /* index: 216 */
{ 217, { off , off , on , off , off , on , on , off , }}, /* index: 217 */
{ 218, { off , off , on , off , off , on , off , on , }}, /* index: 218 */
{ 219, { off , off , on , off , off , on , off , off , }}, /* index: 219 */
{ 220, { off , off , on , off , off , off , on , on , }}, /* index: 220 */
{ 221, { off , off , on , off , off , off , on , off , }}, /* index: 221 */
{ 222, { off , off , on , off , off , off , off , on , }}, /* index: 222 */
{ 223, { off , off , on , off , off , off , off , off , }}, /* index: 223 */
{ 224, { off , off , off , on , on , on , on , on , }}, /* index: 224 */
{ 225, { off , off , off , on , on , on , on , off , }}, /* index: 225 */
{ 226, { off , off , off , on , on , on , off , on , }}, /* index: 226 */
{ 227, { off , off , off , on , on , on , off , off , }}, /* index: 227 */
{ 228, { off , off , off , on , on , off , on , on , }}, /* index: 228 */
{ 229, { off , off , off , on , on , off , on , off , }}, /* index: 229 */
{ 230, { off , off , off , on , on , off , off , on , }}, /* index: 230 */
{ 231, { off , off , off , on , on , off , off , off , }}, /* index: 231 */
{ 232, { off , off , off , on , off , on , on , on , }}, /* index: 232 */
{ 233, { off , off , off , on , off , on , on , off , }}, /* index: 233 */
{ 234, { off , off , off , on , off , on , off , on , }}, /* index: 234 */
{ 235, { off , off , off , on , off , on , off , off , }}, /* index: 235 */
{ 236, { off , off , off , on , off , off , on , on , }}, /* index: 236 */
{ 237, { off , off , off , on , off , off , on , off , }}, /* index: 237 */
{ 238, { off , off , off , on , off , off , off , on , }}, /* index: 238 */
{ 239, { off , off , off , on , off , off , off , off , }}, /* index: 239 */
{ 240, { off , off , off , off , on , on , on , on , }}, /* index: 240 */
{ 241, { off , off , off , off , on , on , on , off , }}, /* index: 241 */
{ 242, { off , off , off , off , on , on , off , on , }}, /* index: 242 */
{ 243, { off , off , off , off , on , on , off , off , }}, /* index: 243 */
{ 244, { off , off , off , off , on , off , on , on , }}, /* index: 244 */
{ 245, { off , off , off , off , on , off , on , off , }}, /* index: 245 */
{ 246, { off , off , off , off , on , off , off , on , }}, /* index: 246 */
{ 247, { off , off , off , off , on , off , off , off , }}, /* index: 247 */
{ 248, { off , off , off , off , off , on , on , on , }}, /* index: 248 */
{ 249, { off , off , off , off , off , on , on , off , }}, /* index: 249 */
{ 250, { off , off , off , off , off , on , off , on , }}, /* index: 250 */
{ 251, { off , off , off , off , off , on , off , off , }}, /* index: 251 */
{ 252, { off , off , off , off , off , off , on , on , }}, /* index: 252 */
{ 253, { off , off , off , off , off , off , on , off , }}, /* index: 253 */
{ 254, { off , off , off , off , off , off , off , on , }}, /* index: 254 */
{ 255, { off , off , off , off , off , off , off , off , }}, /* index: 255 */
};