diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2025-10-13 13:37:27 -0400 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2025-10-13 13:37:27 -0400 |
| commit | ccf2d029feb19c5c976807d29cc78fcb9d06e981 (patch) | |
| tree | ab809ffc0cc2df29be8e65d3675d62a89584cfac /midterm_report | |
| parent | 98c0e2281060f9fea3f82f4c28223a2fd3b983dd (diff) | |
| download | can-gauge-interface-ccf2d029feb19c5c976807d29cc78fcb9d06e981.zip | |
midterm report: firmware
Diffstat (limited to 'midterm_report')
| -rw-r--r-- | midterm_report/midterm_report.tex | 16 | ||||
| -rw-r--r-- | midterm_report/references.bib | 6 |
2 files changed, 21 insertions, 1 deletions
diff --git a/midterm_report/midterm_report.tex b/midterm_report/midterm_report.tex index 8c7e3f0..1e358f1 100644 --- a/midterm_report/midterm_report.tex +++ b/midterm_report/midterm_report.tex @@ -203,7 +203,21 @@ TODO \section{Firmware} -TODO +Firmware is the program that runs on the PIC microcontroller. +It is responsible for interacting with the peripherals and transforming data from the CAN bus into output signals for the gauges. + +The firmware is written in C for Microchip's XC8 compiler. + +Each peripheral---MCP2515, 25LC160C, and MCP4912---has a corresponding translation unit. +So far, I have written and tested the MCP4912 DAC unit. +The 25LC160C and MCP2515 units are mostly written but still require more testing. + +The firmware must also communicate with a PC via USB. +The Microchip MLA USB library is employed for this purpose \cite{mla_usb}. +However, the USB code uses a lot of the PIC's flash memory. +Some system test builds already fail to link due to lack of space. +As a result, USB may have to be dropped from the project, and another method will have to be devised for programming the user configuration into the EEPROM. +This is a major disappointment, but I will have to work around it seeing as the hardware has already been finalized. \section{Software} diff --git a/midterm_report/references.bib b/midterm_report/references.bib index 6a019a9..04defbe 100644 --- a/midterm_report/references.bib +++ b/midterm_report/references.bib @@ -57,3 +57,9 @@ author = {Sam Anthony}, url = {power_supply.ods}, }, +@online{mla_usb, + title = {MLA USB}, + organization = {Microchip Inc.}, + publisher = {Github}, + url = {https://github.com/MicrochipTech/mla_usb}, +}, |