Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: 4DGL-uLCD-SE PinDetect SDFileSystem Speaker TextLCD mbed wave_player
Fork of musicplayer by
EasyVR.cpp@2:84f06fb95343, 2016-03-14 (annotated)
- Committer:
- ychang79
- Date:
- Mon Mar 14 23:31:18 2016 +0000
- Revision:
- 2:84f06fb95343
hello
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| ychang79 | 2:84f06fb95343 | 1 | #pragma once |
| ychang79 | 2:84f06fb95343 | 2 | #include "EasyVR.h" |
| ychang79 | 2:84f06fb95343 | 3 | |
| ychang79 | 2:84f06fb95343 | 4 | EasyVR::EasyVR(PinName tx,PinName rx):_easyVR(tx,rx) |
| ychang79 | 2:84f06fb95343 | 5 | { |
| ychang79 | 2:84f06fb95343 | 6 | } |
| ychang79 | 2:84f06fb95343 | 7 | |
| ychang79 | 2:84f06fb95343 | 8 | EasyVR::~EasyVR() |
| ychang79 | 2:84f06fb95343 | 9 | { |
| ychang79 | 2:84f06fb95343 | 10 | } |
| ychang79 | 2:84f06fb95343 | 11 | |
| ychang79 | 2:84f06fb95343 | 12 | void EasyVR::sendCmd(uint8_t c) |
| ychang79 | 2:84f06fb95343 | 13 | { |
| ychang79 | 2:84f06fb95343 | 14 | _easyVR.putc(c); |
| ychang79 | 2:84f06fb95343 | 15 | wait(0.001); |
| ychang79 | 2:84f06fb95343 | 16 | } |
| ychang79 | 2:84f06fb95343 | 17 | |
| ychang79 | 2:84f06fb95343 | 18 | void EasyVR::sendArg(int8_t c) |
| ychang79 | 2:84f06fb95343 | 19 | { |
| ychang79 | 2:84f06fb95343 | 20 | _easyVR.putc(c + ARG_ZERO); |
| ychang79 | 2:84f06fb95343 | 21 | wait(0.001); |
| ychang79 | 2:84f06fb95343 | 22 | } |
| ychang79 | 2:84f06fb95343 | 23 | |
| ychang79 | 2:84f06fb95343 | 24 | int8_t EasyVR::recv(int8_t time) |
| ychang79 | 2:84f06fb95343 | 25 | { |
| ychang79 | 2:84f06fb95343 | 26 | while(!_easyVR.readable() && time != 0) |
| ychang79 | 2:84f06fb95343 | 27 | { |
| ychang79 | 2:84f06fb95343 | 28 | if(time>0) |
| ychang79 | 2:84f06fb95343 | 29 | time--; |
| ychang79 | 2:84f06fb95343 | 30 | wait(0.001); |
| ychang79 | 2:84f06fb95343 | 31 | } |
| ychang79 | 2:84f06fb95343 | 32 | return _easyVR.getc(); |
| ychang79 | 2:84f06fb95343 | 33 | } |
| ychang79 | 2:84f06fb95343 | 34 | |
| ychang79 | 2:84f06fb95343 | 35 | void EasyVR::decrypt(char* arg) |
| ychang79 | 2:84f06fb95343 | 36 | { |
| ychang79 | 2:84f06fb95343 | 37 | *arg = *arg - ARG_ZERO; |
| ychang79 | 2:84f06fb95343 | 38 | } |
| ychang79 | 2:84f06fb95343 | 39 | |
| ychang79 | 2:84f06fb95343 | 40 | bool EasyVR::awake(int timeOut) |
| ychang79 | 2:84f06fb95343 | 41 | { |
| ychang79 | 2:84f06fb95343 | 42 | bool isAwake=0; |
| ychang79 | 2:84f06fb95343 | 43 | |
| ychang79 | 2:84f06fb95343 | 44 | while (timeOut>0) |
| ychang79 | 2:84f06fb95343 | 45 | { |
| ychang79 | 2:84f06fb95343 | 46 | _easyVR.putc(CMD_BREAK); |
| ychang79 | 2:84f06fb95343 | 47 | if(_easyVR.getc()==CMD_TIMEOUT) |
| ychang79 | 2:84f06fb95343 | 48 | { |
| ychang79 | 2:84f06fb95343 | 49 | isAwake = 1; |
| ychang79 | 2:84f06fb95343 | 50 | } |
| ychang79 | 2:84f06fb95343 | 51 | |
| ychang79 | 2:84f06fb95343 | 52 | if(timeOut>0) |
| ychang79 | 2:84f06fb95343 | 53 | { |
| ychang79 | 2:84f06fb95343 | 54 | timeOut--; |
| ychang79 | 2:84f06fb95343 | 55 | } |
| ychang79 | 2:84f06fb95343 | 56 | wait(0.001); |
| ychang79 | 2:84f06fb95343 | 57 | } |
| ychang79 | 2:84f06fb95343 | 58 | return isAwake; |
| ychang79 | 2:84f06fb95343 | 59 | } |
