Skip to content

ipruning/EEE228

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EEE228 Lock Project

0. Table of Contents

1. Background

1.0 Install

  • Clone GitHub Repository git clone https://github.com/Spehhhhh/EEE228.git
  • Switch to the directory cd EEE228

1.1 Usage

You can build the project with all supported Mbed OS build tools.

$ cd EEE228/lock
$ mbed deploy
$ mbed compile -m <TARGET> -t <TOOLCHAIN> --flash
$ mbed compile -m KL46Z -t GCC_ARM

1.2 Name Convention

  • Class Naming Convention: CapWords
  • Class Member Convention: lower_with_under_
  • Function Naming Convention: CapWords()
  • Variables Naming Convention: lower_with_under

2. Architecture

2.0 Overall

Module Location Function Location
config.h /lock/config.h Environment variables 🔗
bsp.h /lock/bsp.h Board support package 🔗
bsp.cpp /lock/bsp.cpp The board support package is used to store the code required for the initialisation of the board. 🔗
event.h /lock/event.h Event 🔗
event.cpp /lock/event.cpp Store the functions that will be called as Event. 🔗
handle.h /lock/handle.h Store PW Class 🔗
main.h /lock/main.h Main program 🔗
main.cpp /lock/main.cpp Main program 🔗
tests /lock/tests Storing unit tests 🔗
drivers /lock/drivers Storing all drivers 🔗

2.1 Class

Class Diagram

2.2 Flowchart of Software

Flowchart

2.3 Interface

Peripheral Interface Type
Relay control PTA0 Digital IO
Buzzer control PTA6 PWM
Exit button green LED PTA13 Digital IO
Exit button red LED PTA14 Digital IO
Exit button COM_TX PTE1 USART1
Exit button COM_RX PTE0 USART1
ESP8266 COM_TX PTE23 USART2
ESP8266 COM_RX PTE22 USART2
Keypad Micro D6 PTA12 Digital IO
Keypad Micro D5 PTA4 Digital IO
Keypad Micro D4 PTA5 Digital IO
Keypad Micro D3 PTC8 Digital IO
Keypad Micro D2 PTD3 Digital IO
Keypad Micro D1 PTA2 Digital IO
Keypad Micro D0 PTA1 Digital IO
LCD_P40 PTD0 Digital IO
LCD_P52 PTE4 Digital IO
LCD_P19 PTB23 Digital IO
LCD_P18 PTB22 Digital IO
LCD_P37 PTC17 Digital IO
LCD_P17 PTB21 Digital IO
LCD_P7 PTB7 Digital IO
LCD_P8 PTB8 Digital IO
LCD_P53 PTE5 Digital IO
LCD_P38 PTC18 Digital IO
LCD_P10 PTB10 Digital IO
LCD_P11 PTB11 Digital IO

3. License

GNU General Public License v3.0

4. External Link

5. ChangeLog

  • 210513 fix Usage
  • 210420 init

Releases

No releases published

Packages

No packages published