Team 5 Software Design
-
Upload
kamilia-sawicki -
Category
Documents
-
view
35 -
download
4
description
Transcript of Team 5 Software Design
![Page 1: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/1.jpg)
Madalina VintilaDavid WilkinsonMichelle ZhangZac Greenawalt
![Page 2: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/2.jpg)
Flowchart
![Page 3: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/3.jpg)
Pseudo Code for the PenInitialization;While true{
If pb flag set { Clear pb flag 2 channel conversion; Store sample in memory locationSet data ready flag
}else { if prev_press flag set { transmit end of character } }
If data ready flag set {
clear data ready flagTake sample from memory & add to buffer for transmitterTake battery count add to transmitter buffer Transmit (when buffer full)
}
If CC > max value {add CC value to transmitter stacktransmit
}}
![Page 4: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/4.jpg)
SubroutinesTimer interrupt service subroutine (120Hz) {If PB pressed { Set flag to do conversion
set previous press flag }Else { clear previous press flag }}
CC interrupt {Increment cc value++ }
Transmit subroutine {Clear CCTransmit buffer data
}
![Page 5: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/5.jpg)
Flowchart
![Page 6: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/6.jpg)
Pseudo Code for the BaseInitialization;While true {
If receiver flag {clear receiver flagread from SPI; parse datacheck for end of character info – set flag if presentelse { store ATD into buffer }increment battery status variable with CC received
}
If end of character flag set {clear flagattempt character match with buffer dataif match, display on LCDelse display error mark (?)clear data stack
}
}
![Page 7: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/7.jpg)
SubroutinesCC interrupt {
if discharging { Increment cc value++ }else { Decrement cc value -- }
}
Timer interrupt { update base & pen battery status on LCD}
Transceiver interrupt { set receiver flag }
![Page 8: Team 5 Software Design](https://reader036.fdocuments.net/reader036/viewer/2022062408/5681332e550346895d9a2b99/html5/thumbnails/8.jpg)
Questions? Comments?