Monitor program only for mbed GR-PEACH
main.cpp@5:1d465d550109, 2014-12-28 (annotated)
- Committer:
- kenjiArai
- Date:
- Sun Dec 28 11:51:59 2014 +0000
- Revision:
- 5:1d465d550109
- Parent:
- 4:76b3113c79ff
monitor program for only for mbed GR-PEACH
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kenjiArai | 1:a399a743d109 | 1 | /* |
kenjiArai | 1:a399a743d109 | 2 | * mbed Application program for the mbed |
kenjiArai | 1:a399a743d109 | 3 | * Test program for GR-PEACH |
kenjiArai | 1:a399a743d109 | 4 | * |
kenjiArai | 1:a399a743d109 | 5 | * Copyright (c) 2014 Kenji Arai / JH1PJL |
kenjiArai | 1:a399a743d109 | 6 | * http://www.page.sannet.ne.jp/kenjia/index.html |
kenjiArai | 1:a399a743d109 | 7 | * http://mbed.org/users/kenjiArai/ |
kenjiArai | 5:1d465d550109 | 8 | * Created: December 27th, 2014 |
kenjiArai | 5:1d465d550109 | 9 | * Revised: December 28th, 2014 |
kenjiArai | 1:a399a743d109 | 10 | * |
kenjiArai | 1:a399a743d109 | 11 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, |
kenjiArai | 1:a399a743d109 | 12 | * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE |
kenjiArai | 1:a399a743d109 | 13 | * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, |
kenjiArai | 1:a399a743d109 | 14 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
kenjiArai | 1:a399a743d109 | 15 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
kenjiArai | 1:a399a743d109 | 16 | */ |
kenjiArai | 1:a399a743d109 | 17 | |
kenjiArai | 4:76b3113c79ff | 18 | // Include --------------------------------------------------------------------------------------- |
kenjiArai | 4:76b3113c79ff | 19 | #include "mbed.h" |
kenjiArai | 5:1d465d550109 | 20 | // Object ---------------------------------------------------------------------------------------- |
kenjiArai | 5:1d465d550109 | 21 | extern Serial pc(USBTX, USBRX); |
kenjiArai | 2:3747397a1618 | 22 | |
kenjiArai | 4:76b3113c79ff | 23 | // Definition ------------------------------------------------------------------------------------ |
kenjiArai | 5:1d465d550109 | 24 | #define BAUD_RATE 9600 |
kenjiArai | 0:a17b3cf2f466 | 25 | |
kenjiArai | 5:1d465d550109 | 26 | #define BAUD(x) pc.baud(x) |
kenjiArai | 5:1d465d550109 | 27 | #define GETC(x) pc.getc(x) |
kenjiArai | 5:1d465d550109 | 28 | #define PUTC(x) pc.putc(x) |
kenjiArai | 5:1d465d550109 | 29 | #define PRINTF(...) pc.printf(__VA_ARGS__) |
kenjiArai | 5:1d465d550109 | 30 | #define READABLE(x) pc.readable(x) |
kenjiArai | 4:76b3113c79ff | 31 | |
kenjiArai | 5:1d465d550109 | 32 | #define BUF_SIZE (128 * 1024) // 128KB |
kenjiArai | 5:1d465d550109 | 33 | #define BUF_SIZE_SMALL (40 * 1024) |
kenjiArai | 4:76b3113c79ff | 34 | |
kenjiArai | 4:76b3113c79ff | 35 | // Object ---------------------------------------------------------------------------------------- |
kenjiArai | 0:a17b3cf2f466 | 36 | |
kenjiArai | 4:76b3113c79ff | 37 | // RAM ------------------------------------------------------------------------------------------- |
kenjiArai | 5:1d465d550109 | 38 | uint8_t data_buf0[BUF_SIZE]; |
kenjiArai | 5:1d465d550109 | 39 | uint8_t data_buf1[BUF_SIZE]; |
kenjiArai | 5:1d465d550109 | 40 | uint8_t data_buf2[BUF_SIZE]; |
kenjiArai | 5:1d465d550109 | 41 | uint8_t data_buf3[BUF_SIZE_SMALL]; |
kenjiArai | 5:1d465d550109 | 42 | //uint8_t data_buf2[BUF_SIZE] __attribute__ ((RW_DATA)); |
kenjiArai | 4:76b3113c79ff | 43 | |
kenjiArai | 4:76b3113c79ff | 44 | // ROM / Constant data --------------------------------------------------------------------------- |
kenjiArai | 4:76b3113c79ff | 45 | |
kenjiArai | 4:76b3113c79ff | 46 | // Function prototypes --------------------------------------------------------------------------- |
kenjiArai | 4:76b3113c79ff | 47 | |
kenjiArai | 4:76b3113c79ff | 48 | // Function prototypes --------------------------------------------------------------------------- |
kenjiArai | 5:1d465d550109 | 49 | extern int mon_mem(void); |
kenjiArai | 4:76b3113c79ff | 50 | |
kenjiArai | 4:76b3113c79ff | 51 | //------------------------------------------------------------------------------------------------- |
kenjiArai | 4:76b3113c79ff | 52 | // Control Program |
kenjiArai | 4:76b3113c79ff | 53 | //------------------------------------------------------------------------------------------------- |
kenjiArai | 5:1d465d550109 | 54 | void print_data_address(void) |
kenjiArai | 5:1d465d550109 | 55 | { |
kenjiArai | 5:1d465d550109 | 56 | PRINTF("data_buf0 addr top: 0x%8x\r\n", &data_buf0); |
kenjiArai | 5:1d465d550109 | 57 | PRINTF("data_buf1 addr top: 0x%8x\r\n", &data_buf1); |
kenjiArai | 5:1d465d550109 | 58 | PRINTF("data_buf2 addr top: 0x%8x\r\n", &data_buf2); |
kenjiArai | 5:1d465d550109 | 59 | PRINTF("data_buf3 addr top: 0x%8x\r\n", &data_buf3); |
kenjiArai | 4:76b3113c79ff | 60 | } |
kenjiArai | 4:76b3113c79ff | 61 | |
kenjiArai | 5:1d465d550109 | 62 | int main() |
kenjiArai | 5:1d465d550109 | 63 | { |
kenjiArai | 5:1d465d550109 | 64 | uint32_t n; |
kenjiArai | 5:1d465d550109 | 65 | |
kenjiArai | 5:1d465d550109 | 66 | PRINTF("\r\nSet data into data_buf0[]\r\n"); |
kenjiArai | 5:1d465d550109 | 67 | for (n = 0; n < BUF_SIZE; n++) { |
kenjiArai | 5:1d465d550109 | 68 | data_buf0[n] = n & 0xff; |
kenjiArai | 5:1d465d550109 | 69 | } |
kenjiArai | 5:1d465d550109 | 70 | PRINTF("Set data into data_buf1[]\r\n"); |
kenjiArai | 5:1d465d550109 | 71 | for (n = 0; n < BUF_SIZE; n++) { |
kenjiArai | 5:1d465d550109 | 72 | data_buf1[BUF_SIZE - n] = n & 0xff; |
kenjiArai | 5:1d465d550109 | 73 | } |
kenjiArai | 5:1d465d550109 | 74 | PRINTF("Set data into data_buf2[]\r\n"); |
kenjiArai | 5:1d465d550109 | 75 | for (n = 0; n < BUF_SIZE; n++) { |
kenjiArai | 5:1d465d550109 | 76 | data_buf2[n] = n & 0xff; |
kenjiArai | 5:1d465d550109 | 77 | } |
kenjiArai | 5:1d465d550109 | 78 | PRINTF("Set data into data_buf3[]\r\n"); |
kenjiArai | 5:1d465d550109 | 79 | for (n = 0; n < BUF_SIZE_SMALL; n++) { |
kenjiArai | 5:1d465d550109 | 80 | data_buf3[n] = n & 0xff; |
kenjiArai | 5:1d465d550109 | 81 | } |
kenjiArai | 5:1d465d550109 | 82 | print_data_address(); |
kenjiArai | 4:76b3113c79ff | 83 | while (true) { |
kenjiArai | 5:1d465d550109 | 84 | mon_mem(); |
kenjiArai | 4:76b3113c79ff | 85 | } |
kenjiArai | 4:76b3113c79ff | 86 | } |