Merge pull request #55 from jtanx/master
[matches/MCTX3420.git] / testing / MCTXWeb / public_html / pintest.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3   <head>
4     <title>MCTX3420 Web Interface</title>
5     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6     <script type="text/javascript" src="static/jquery-1.10.1.min.js"></script>
7     <script type="text/javascript" src="static/mctx.gui.js"></script>
8     <script type="text/javascript" src="static/mctx.pintest.js"></script>
9     
10     <link rel="stylesheet" type="text/css" href="static/style.css">
11     <link rel="stylesheet" type="text/css" href="static/nav-menu.css">
12     <script type="text/javascript">
13       runBeforeLoad().done(function () {
14         //Ensure stuff is unloaded before leaving the page
15         $(window).unload(function(){
16           $("#adc-controls").find("input[type='checkbox']")
17           .each(function () {
18             if ($(this).is(":checked")) {
19               $(this).trigger("click");
20             }
21           });
22           $("#gpio-container").find("input[name='unexport']")
23           .each(function () {
24             $(this).trigger("click");
25           });
26           $("#pwm-container").find("input[name='unexport']")
27           .each(function () {
28             $(this).trigger("click");
29           });
30         });
31         
32         $(document).ready(function () {
33          //Set the welcome bar
34          var name = " " + (mctx.friendlyName ? mctx.friendlyName : "");
35          $("#welcome-container").text("Welcome"+ name + "!");
36          $("#content").css("display", "block");
37
38          $("#logout").click(function () {
39            $("#logout").logout();
40          });
41
42          $("#gpio-menu").populateDropdown(mctx.pintest.gpios, "GPIO ");
43          $("#pwm-menu").populateDropdown(mctx.pintest.pwms, "PWM ");
44
45          $("#gpio-go").click(function () {
46            if ($("#gpio-menu").val()) {
47              $(this).attr("disabled", true);
48              $("#gpio-container").exportGPIO($("#gpio-menu")).always(function () {
49                $("#gpio-go").attr("disabled", false);
50              });
51            }
52          });
53          $("#pwm-go").click(function () {
54            if ($("#pwm-menu").val()) {
55              $(this).attr("disabled", true);
56              $("#pwm-container").exportPWM($("#pwm-menu")).always(function () {
57                $("#pwm-go").attr("disabled", false);
58              });
59            }
60          });
61          $("#adc-controls").trigger("reset").setADCControl();
62
63          $("#errorlog").setErrorLog();
64        });
65       })
66
67     </script>
68   </head>
69   
70   <body>
71     <div id="header">
72       <div id="leftnav">
73         <a href="http://www.uwa.edu.au/" target="_blank">
74           <img alt = "The University of Western Australia"
75           src="static/uwacrest-text.png">
76         </a>
77         <span id="title">BBB Pin test (debug only)</span>
78       </div>
79       <div id="rightnav">
80         <span id="welcome-container">
81         </span>
82         <span id="date">
83           <script type="text/javascript">getDate();</script>
84         </span>
85         <div id="logout-container">
86           <form action="#">
87             <div>
88               <input type="button" id="logout" value="Logout">
89             </div>
90           </form>
91         </div>
92       </div>
93       <div class="clear"></div>
94     </div>
95     <!-- End header -->
96     
97     <div id="content">
98       <div id="sidebar">
99         <div class="widget">
100           <div class="title">Info</div>
101           <p>This test page gives control over the BBB's pins.
102           Select a pin that you wish to use from the relevant drop-down
103           menu and click 'Go'.</p>
104           <p>A new widget will appear with controls relevant to that pin.</p>
105           <p>Make sure to check the error log to see if something goes wrong.</p>
106         </div>
107         <div class="widget">
108           <div class="title">Pin out diagram</div>
109           <p>To see the pin out diagram of the BBB, click <a href="pinout-table.pdf" target="_blank">here</a>.</p>
110         </div>
111         <div class="widget">
112           <div class="title">Export/Unexport?</div>
113           <p>
114             To export/unexport a pin means to enable/disable it. Apart from the obvious
115             use case, sometimes this can be required if you use two PWM channels
116             that share the same frequency base.
117           </p>
118           <p>
119             You won't be able to change
120             the frequency until you unexport one of them.
121           </p>
122         </div>
123         <div class="widget">
124           <div class="title">PWM explained</div>
125           <p>The frequency must be a decimal number greater than 0.</p>
126           <p>
127             The duty cycle describes the proportion of off/on time per period.
128             This number is specified as a ratio, with values ranging from 0 to 1.
129           </p>
130           <p>
131             The polarity determines if the duty represents the 'active
132             high' or 'active low' portion. By default, the duty cycle
133             represents the 'active high' portion.
134           </p>
135         </div>
136       </div>
137       <!-- End sidebar -->
138
139       <div id="main">
140         <div class="widget">
141           <div class="title">Dashboard</div>
142           <table>
143             <tr>
144               <td>
145                 GPIO <select id="gpio-menu"></select>
146                 <input type="button" id="gpio-go" value="Go">
147               </td>
148               <td>
149                 PWM <select id="pwm-menu"></select>
150                 <input type="button" id="pwm-go" value="Go">
151               </td>
152             </tr>
153           </table>
154             
155           <div class="sub-title">Error log</div>
156           <textarea id="errorlog" wrap="off" rows="4" cols="30" readonly></textarea>
157         </div>
158
159         <div class="widget">
160           <div class="title">Analogue input (ADC)</div>
161           <form class="controls" action="#" id="adc-controls">
162             <table class="centre">
163               <tr>
164                 <td>AIN</td><th>0</th><th>1</th><th>2</th><th>3</th>
165                 <th>4</th><th>5</th><th>6</th><th>7</th>
166               </tr>
167               <tr>
168                 <td>Value</td>
169                 <td><input name="0" type="text" readonly></td>
170                 <td><input name="1" type="text" readonly></td>
171                 <td><input name="2" type="text" readonly></td>
172                 <td><input name="3" type="text" readonly></td>
173                 <td><input name="4" type="text" readonly></td>
174                 <td><input name="5" type="text" readonly></td>
175                 <td><input name="6" type="text" readonly></td>
176                 <td><input name="7" type="text" readonly></td>
177               </tr>
178               <tr>
179                 <td>Export</td>
180                 <td><input name="0" type="checkbox"></td>
181                 <td><input name="1" type="checkbox"></td>
182                 <td><input name="2" type="checkbox"></td>
183                 <td><input name="3" type="checkbox"></td>
184                 <td><input name="4" type="checkbox"></td>
185                 <td><input name="5" type="checkbox"></td>
186                 <td><input name="6" type="checkbox"></td>
187                 <td><input name="7" type="checkbox"></td>
188               </tr>
189             </table>
190           </form>
191         </div>
192         
193         <div class="widget" id="gpio-container">
194           <div class="title">GPIO controls</div>
195         </div>
196         
197         <div class="widget" id="pwm-container">
198           <div class="title">PWM controls</div>
199         </div>
200       </div>
201       <!-- End main content -->
202     </div>
203   </body>
204 </html>

UCC git Repository :: git.ucc.asn.au