Add CAN communication and GPIO control functionality

- Created HAL configuration file for STM32F1xx (stm32f1xx_hal_conf.h).
- Added interrupt handler definitions in stm32f1xx_it.h.
- Implemented CAN initialization and configuration in can.c.
- Configured GPIO pins for output and external interrupts in gpio.c.
- Developed main application logic in main.c for toggling an LED and sending CAN messages.
- Implemented MSP initialization and de-initialization for CAN in stm32f1xx_hal_msp.c.
- Defined interrupt service routines in stm32f1xx_it.c for CAN and EXTI interrupts.
- Added README for project-specific libraries and PlatformIO configuration.
- Created platformio.ini for project build settings.
- Added stm32pio.ini for CubeMX integration with PlatformIO.
- Included README for testing directory to guide unit testing setup.
This commit is contained in:
2025-06-25 15:18:25 -07:00
parent f05e4aa006
commit 2d7a1ff4d0
22 changed files with 0 additions and 161 deletions

View File

@@ -0,0 +1,46 @@
This directory is intended for project specific (private) libraries.
PlatformIO will compile them to static libraries and link into the executable file.
The source code of each library should be placed in a separate directory
("lib/your_library_name/[Code]").
For example, see the structure of the following example libraries `Foo` and `Bar`:
|--lib
| |
| |--Bar
| | |--docs
| | |--examples
| | |--src
| | |- Bar.c
| | |- Bar.h
| | |- library.json (optional. for custom build options, etc) https://docs.platformio.org/page/librarymanager/config.html
| |
| |--Foo
| | |- Foo.c
| | |- Foo.h
| |
| |- README --> THIS FILE
|
|- platformio.ini
|--src
|- main.c
Example contents of `src/main.c` using Foo and Bar:
```
#include <Foo.h>
#include <Bar.h>
int main (void)
{
...
}
```
The PlatformIO Library Dependency Finder will find automatically dependent
libraries by scanning project source files.
More information about PlatformIO Library Dependency Finder
- https://docs.platformio.org/page/librarymanager/ldf.html