summaryrefslogtreecommitdiff
path: root/CanNodeFirmwareImu.mdwn
blob: 017da5913ea369f86fb9588e9bc360af9d7a173b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
## <a name="LV2 IMU CAN Node Firmware"></a> LV2 IMU CAN Node Firmware

### <a name="IMU CAN Node Hardware Stuff:"></a> IMU CAN Node Hardware Stuff:

The IMU CAN node is a PIC16F877+SJA1000 PCB (from 6/2001) modified to use a PIC18F458 with, of course, an [[IMU|InertialMeasurementUnit]].

Schematic is attached below.

Hardware interface:

> <table border=1 cellpadding=0 cellspacing=0>
>   <tr>
>     <th bgcolor="#99CCCC"><strong> PIC Pin No: </strong></th>
>     <th bgcolor="#99CCCC"><strong> ..which is IMU function: </strong></th>
>   </tr>
>   <tr>
>     <td> RD0 - RD7 (see schem.) </td>
>     <td> MAX197 ADC Pins D0 - D7 </td>
>   </tr>
>   <tr>
>     <td> RC1 (pin 35) </td>
>     <td> MAX197 ADC /WR (pin 3) </td>
>   </tr>
>   <tr>
>     <td> RC0 (pin 32) </td>
>     <td> MAX197 ADC /RD (pin 4) </td>
>   </tr>
>   <tr>
>     <td> RE0 (pin 25) </td>
>     <td> MAX197 ADC /CS (pin 2) </td>
>   </tr>
>   <tr>
>     <td> RB0 (INT0) (pin 8) </td>
>     <td> MAX197 ADC /INT (pin 24) </td>
>   </tr>
>   <tr>
>     <td> RE2 (pin 27) </td>
>     <td> MAX197 ADC HBEN (pin 5) </td>
>   </tr>
>   <tr>
>     <td> RC2 (pin 36) </td>
>     <td> ADXLxxx Accelerometer test </td>
>   </tr>
>   <tr>
>     <td> RA0/AN0 (pin 19) </td>
>     <td> Thermister on IMU board </td>
>   </tr>
> </table>

----

### <a name="IMU CAN node Firmware notes:"></a> IMU CAN node Firmware notes:

----

Attached below is firmware from the IMU calibration project which used a PIC16F877 to sample the the ADC and stream the data over a serial line. It should be a great place to start for writing the IMU interface code.

- [[imu_firmware.ZIP]]: send/recv can mesg needs more work

- [[imu.zip]]: gnu-ish style; new dir struct added; recv can mes

----
Attachments:

- [[imu_calibration_controller.zip]]
- [[imu_can_node_schematic.pdf]]