This program is done as an Lab assignment for ECE2036.
Dependencies: 4DGL-uLCD-SE PinDetect SDFileSystem mbed
Fork of mythermostat by
This program is a lab assignment to ECE 2036. It uses uLCD, pushputtons and SDCard via sdFileSystem. This is designed as a concept to train animal that could be used by biologist to determine if lemurs have a concept of numbers. uLCD is divided into two different rectangle. In each rectangle, program generate random shapes of different color. Pushbutton is used to select which side has smaller number of shapes. Each trial, result is stored in sdCard as datalogging.
Speaker.h@5:e3916a6d72b8, 2017-03-18 (annotated)
- Committer:
- pkoirala3
- Date:
- Sat Mar 18 14:36:05 2017 +0000
- Revision:
- 5:e3916a6d72b8
- Parent:
- 2:58d85409f7ff
Formatted ECE 2036 Lab3 MBED
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
4180_1 | 2:58d85409f7ff | 1 | #include "mbed.h" |
4180_1 | 2:58d85409f7ff | 2 | // new class to play a note on Speaker based on PwmOut class |
4180_1 | 2:58d85409f7ff | 3 | class Speaker |
4180_1 | 2:58d85409f7ff | 4 | { |
4180_1 | 2:58d85409f7ff | 5 | public: |
4180_1 | 2:58d85409f7ff | 6 | Speaker(PinName pin) : _pin(pin) { |
4180_1 | 2:58d85409f7ff | 7 | // _pin(pin) means pass pin to the Speaker Constructor |
4180_1 | 2:58d85409f7ff | 8 | } |
4180_1 | 2:58d85409f7ff | 9 | // class method to play a note based on PwmOut class |
4180_1 | 2:58d85409f7ff | 10 | void PlayNote(float frequency, float duration, float volume) { |
4180_1 | 2:58d85409f7ff | 11 | _pin.period(1.0/frequency); |
4180_1 | 2:58d85409f7ff | 12 | _pin = volume/2.0; |
4180_1 | 2:58d85409f7ff | 13 | wait(duration); |
4180_1 | 2:58d85409f7ff | 14 | _pin = 0.0; |
4180_1 | 2:58d85409f7ff | 15 | } |
4180_1 | 2:58d85409f7ff | 16 | |
4180_1 | 2:58d85409f7ff | 17 | private: |
4180_1 | 2:58d85409f7ff | 18 | PwmOut _pin; |
4180_1 | 2:58d85409f7ff | 19 | }; |