multi-access lock andrew hall. general system requirements mcu: mc9s12c128 bus frequency: 24mhz...

13
Multi-Access Lock Andrew Hall

Upload: hubert-barton

Post on 18-Jan-2018

214 views

Category:

Documents


0 download

DESCRIPTION

Task Priorities 4)Start Task 5)Mag. Reader Task 6)User Interface Task 7)Keypad Task

TRANSCRIPT

Page 1: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Multi-Access Lock

Andrew Hall

Page 2: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

General System Requirements

• MCU: MC9S12C128• Bus Frequency: 24MHz• Memory Requirements:

• 11k bytes Flash EEPROM• 3k bytes RAM

• Kernel: MicroC/OS-II• Tick Period: 1ms

Page 3: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Task Priorities

4) Start Task5) Mag. Reader Task 6) User Interface Task7) Keypad Task

Page 4: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Start Task

• Initializes the system• Creates the other tasks• Priority: 4• Period: once (at start-up) • Execution Time: ~ 1 sec

Page 5: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Mag. Reader Task

• Reads the card data • Priority: 5• Period: 200 ms (sporadic)• Execution Time: 2ms (max)

Page 6: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

User Interface Task

• Displays user prompt• Receives and tests user

inputs • Saves user name and pin#• Controls locking mechanism • Priority: 6• Period: 20ms(sporadic)• Execution Time: 2ms(max)

Page 7: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Keypad

• Scans keypad• Priority: 7• Period: 10ms(sporadic) • Execution Time:~2.2us(max)

Page 8: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

CPU Load

Lmax = 2ms + 2ms + 2.2us 200ms 20ms 10msLmax = .11Lavg = .017

Page 9: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Modules

Tasks Public Functions

MultiAccessLock.cOriginal

Start TaskUser Interface

Task

OSTickInit(), KeyInit(), LcdInit4Bit(), sci_open(), LcdClrDisp(), LcdMoveCursor(), LcdDispStrg(), getstrg(), OSTimeDly(), LcdBSpace(), OSTaskResume(), OSTaskSuspend(), OSTaskDel(), OSTaskCreate(), MagReadPend(), EESectErase(), EESectModify(), ConfigECLKDIV()

MagReader.cOriginal

Mag. Reader Task OSTaskCreate(), OSTimeDly(), OSSemPost(), getstrg()

KeyUcos.cWritten by:Todd Morton, modified

Keypad Task OSSemPend() OSTaskCreate(), OSSemPost(), OSTimeDly()

Page 10: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Data Flow Diagrams

MultiAccessLock.c

LCD4Bit I/O

User prompts

Unlock door

Store Memory(user name & pin)

Test data

User inputProgEeprom.c

EE

WordW

rite()

Page 11: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Data Flow Diagrams

Magnetic Strip Reader ModuleMultiAccessLock

MagReadInit()

MagReadPost()

MagReader I/O

MagReadTask()

MagKey

MagFlag

Page 12: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Data Flow Diagrams

Keypad Driver ModuleMultiAccessLock

KeyInit()

KeyPend()

Keypad I/O

KeyTask()

key

KeyFlag

Page 13: Multi-Access Lock Andrew Hall. General System Requirements MCU: MC9S12C128 Bus Frequency: 24MHz Memory Requirements: 11k bytes Flash EEPROM 3k bytes RAM

Questions or

Comments?