#FIG 3.2 Landscape Center Metric A4 100.00 Single -2 1200 2 6 7560 5265 7830 5535 1 3 0 1 0 7 50 0 -1 0.000 1 0.0000 7695 5400 101 101 7695 5400 7796 5400 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 7695 5400 45 45 7695 5400 7740 5400 -6 6 6930 6660 8100 7110 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 6930 6660 8100 6660 8100 7110 6930 7110 6930 6660 4 0 0 50 0 0 12 0.0000 4 135 885 7020 6840 Sends Data\001 4 0 0 50 0 0 12 0.0000 4 135 960 7020 7065 out via DOA\001 -6 6 6930 8460 8100 8910 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 6930 8460 8100 8460 8100 8910 6930 8910 6930 8460 4 0 0 50 0 0 12 0.0000 4 135 885 7020 8640 Sends Data\001 4 0 0 50 0 0 12 0.0000 4 135 945 7020 8865 out via DOB\001 -6 6 5040 10440 6210 10890 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 5040 10440 6210 10440 6210 10890 5040 10890 5040 10440 4 0 0 50 0 0 12 0.0000 4 135 885 5130 10620 Sends Data\001 4 0 0 50 0 0 12 0.0000 4 135 825 5130 10845 out via I2C\001 -6 6 0 135 4230 765 4 0 0 50 0 12 12 0.0000 4 180 3990 0 270 The Host-to-PHCC Protocol is parsed by\001 4 0 0 50 0 12 12 0.0000 4 135 4200 0 480 a State Machine in the PIC and therefore\001 4 0 0 50 0 12 12 0.0000 4 180 2730 0 690 light and easy to process.\001 -6 6 0 810 4725 1215 4 0 0 50 0 12 12 0.0000 4 135 4725 0 1185 state the other 'main' states can be reached.\001 4 0 0 50 0 12 12 0.0000 4 135 4305 0 975 The initial State is 'IDLE' and from this\001 -6 6 0 1305 4230 1935 4 0 0 50 0 12 12 0.0000 4 180 4095 0 1470 Keyboard scanning and analog-to-digital\001 4 0 0 50 0 12 12 0.0000 4 180 4200 0 1680 conversion for the analog-in channels is\001 4 0 0 50 0 12 12 0.0000 4 180 2625 0 1890 done on timer interrupts.\001 -6 6 0 2115 4230 2745 4 0 0 50 0 12 12 0.0000 4 180 4200 0 2250 Start/Stop Talking enables/disables the \001 4 0 0 50 0 12 12 0.0000 4 180 4200 0 2460 notification on changes in the keymatrix\001 4 0 0 50 0 12 12 0.0000 4 180 4095 0 2670 inputs or changes of the analog values.\001 -6 6 0 2835 7875 3465 4 0 0 50 0 12 12 0.0000 4 180 7455 0 2985 Analog Map and Keymatrix Map allows the Host to inquire PHCC about the \001 4 0 0 50 0 12 12 0.0000 4 180 7875 0 3195 current state of all analog/keymatrix inputs respectively. PHCC will send a\001 4 0 0 50 0 12 12 0.0000 4 180 5040 0 3405 full 'map' of analog channel or keymatrix input.\001 -6 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3870 5355 630 270 3870 5355 4500 5355 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 5490 5355 630 270 5490 5355 6120 5355 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4725 5400 1710 630 4725 5400 6435 6030 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4635 7065 1935 855 4635 7065 6570 7920 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3915 7380 630 270 3915 7380 4545 7380 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4664 6611 630 270 4664 6611 5294 6611 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 5535 7425 630 270 5535 7425 6165 7425 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3465 8775 630 270 3465 8775 4095 8775 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 5130 8775 630 270 5130 8775 5760 8775 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 4320 8775 2115 630 4320 8775 6435 9405 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 2790 10575 1845 900 2790 10575 4635 11475 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 3600 10890 630 270 3600 10890 4230 10890 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 1935 10890 630 270 1935 10890 2565 10890 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 2813 10058 630 270 2813 10058 3443 10058 1 3 0 1 0 0 50 0 20 0.000 1 0.0000 315 3780 101 101 315 3780 416 3780 1 1 0 1 0 7 50 0 -1 0.000 1 0.0000 945 5130 630 270 945 5130 1575 5130 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 5445 405 5445 2655 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2 5040 765 7380 765 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 4860 360 7425 360 7425 2700 4860 2700 4860 360 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 6120 5355 6840 5265 7605 5400 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 1575 5085 2385 5040 3240 5310 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 4365 5175 4725 5040 5130 5130 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 3240 5400 2115 5445 1575 5130 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 5490 5625 3330 5985 1575 5220 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 855 4905 585 4275 855 4275 855 4905 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 1035 4860 990 4275 1260 4410 1035 4905 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 1260 4905 1395 4455 1620 4590 1215 4950 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 1440 4995 1800 4590 1980 4815 1440 4995 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 1305 5355 1755 6300 2700 7020 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 3870 7110 3825 6840 4005 6615 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 5310 6615 5895 6795 5940 7200 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 6930 6705 6075 6165 2790 6030 1485 5265 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 6165 7425 6795 7470 6930 7065 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 3870 8550 4275 8325 4815 8550 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 1170 5400 1260 7380 2205 8775 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 5670 8910 6660 9225 6930 8865 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 585 5355 360 8415 945 10530 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 2700 7020 3240 6840 3645 7155 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 2205 8775 2565 8865 2835 8775 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 6930 8505 6075 8235 2430 7605 1260 5355 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 945 10530 1350 10485 1620 10665 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 1980 10620 1890 10305 2205 10035 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 3420 10080 3825 10260 3645 10620 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 4050 11070 4725 11340 5040 10845 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 5040 10485 3915 9630 1215 8730 900 5355 0.000 -1.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3 1 1 1.00 60.00 120.00 315 3870 405 4365 765 4905 0.000 -1.000 0.000 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 4 1 1 1.00 60.00 120.00 315 5130 90 4905 225 4680 540 4950 0.000 -1.000 -1.000 0.000 4 0 0 50 0 18 18 0.0000 4 210 3105 2385 -90 Host-to-PHCC Protocol\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 1155 0x01\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 1365 0x02\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 1575 0x03\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 1785 0x04\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 1995 0x05\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 2205 0x06\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 2415 0x07\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 2610 0x08\001 4 0 0 50 0 12 12 0.0000 4 120 420 5625 945 IDLE\001 4 0 0 50 0 12 12 0.0000 4 120 525 5625 1155 RESET\001 4 0 0 50 0 12 12 0.0000 4 180 1365 5625 1365 Start Talking\001 4 0 0 50 0 12 12 0.0000 4 180 1260 5625 1575 Stop Talking\001 4 0 0 50 0 12 12 0.0000 4 180 1365 5625 1785 Keymatrix Map\001 4 0 0 50 0 12 12 0.0000 4 180 1050 5625 1995 Analog Map\001 4 0 0 50 0 12 12 0.0000 4 135 840 5625 2205 I2C Send\001 4 0 0 50 0 12 12 0.0000 4 135 840 5625 2415 DOA Send\001 4 0 0 50 0 12 12 0.0000 4 135 840 5625 2625 DOB Send\001 4 0 0 50 0 20 14 0.0000 4 195 2880 4995 315 Table of Commands (or 'main' States):\001 4 0 0 50 0 20 14 0.0000 4 195 645 5625 675 Meaning\001 4 0 0 50 0 20 14 0.0000 4 150 330 4995 540 cmd\001 4 0 0 50 0 12 12 0.0000 4 135 420 4995 945 0x00\001 4 0 0 50 0 20 14 0.0000 4 195 315 4995 720 byte\001 4 0 0 50 0 0 12 0.0000 4 135 660 3600 5400 RESET1\001 4 0 0 50 0 0 12 0.0000 4 135 660 5175 5400 RESET2\001 4 0 0 50 0 0 12 0.0000 4 135 360 2430 5040 0x01\001 4 0 0 50 0 0 12 0.0000 4 135 360 4545 4995 0x01\001 4 0 0 50 0 0 12 0.0000 4 135 360 6750 5220 0x01\001 4 0 0 50 0 0 12 0.0000 4 135 1005 7245 5670 PIC software\001 4 0 0 50 0 0 12 0.0000 4 105 390 7245 5850 reset\001 4 0 0 50 0 0 12 0.0000 4 135 360 495 4095 0x02\001 4 0 0 50 0 0 12 0.0000 4 135 360 1935 4590 0x05\001 4 0 0 50 0 0 12 0.0000 4 135 360 1440 4365 0x04\001 4 0 0 50 0 0 12 0.0000 4 135 360 990 4185 0x03\001 4 0 0 50 0 0 12 0.0000 4 135 990 4230 6660 DOASEND2\001 4 0 0 50 0 0 12 0.0000 4 135 990 3465 7425 DOASEND1\001 4 0 0 50 0 0 12 0.0000 4 135 990 5040 7470 DOASEND3\001 4 0 0 50 0 0 12 0.0000 4 135 360 1935 6390 0x07\001 4 0 0 50 0 0 12 0.0000 4 135 975 2970 8820 DOBSEND1\001 4 0 0 50 0 0 12 0.0000 4 135 975 4635 8820 DOBSEND2\001 4 0 0 50 0 0 12 0.0000 4 135 360 2070 8055 0x08\001 4 0 0 50 0 0 12 0.0000 4 180 975 3870 7065 subaddr byte\001 4 0 0 50 0 0 12 0.0000 4 180 705 5220 6975 data byte\001 4 0 0 50 0 0 12 0.0000 4 135 330 2340 8775 addr\001 4 0 0 50 0 0 12 0.0000 4 135 330 4140 8550 data\001 4 0 0 50 0 0 12 0.0000 4 135 855 3195 10935 I2CSEND3\001 4 0 0 50 0 0 12 0.0000 4 135 855 1530 10980 I2CSEND1\001 4 0 0 50 0 0 12 0.0000 4 135 330 1170 10440 addr\001 4 0 0 50 0 0 12 0.0000 4 135 855 2430 10125 I2CSEND2\001 4 0 0 50 0 0 12 0.0000 4 135 600 1935 10485 subaddr\001 4 0 0 50 0 0 12 0.0000 4 135 330 3870 10485 data\001 4 0 0 50 0 0 12 0.0000 4 135 360 450 8775 0x06\001 4 0 0 50 0 0 12 0.0000 4 135 420 720 5175 IDLE\001 4 0 0 50 0 0 12 0.0000 4 180 705 2790 7110 addr byte\001