The out-of-the-box demo application flashed on all display modules before they are shipped.

Dependencies:   DMBasicGUI DMSupport

This is the software that is flashed on the LPC4088 Display Modules before they are shipped from Embedded Artists.

Information

This project works on both the 4.3" and 5" display modules but requires different file systems to handle the different display resolutions.

For the 4.3" displays first drag-n-drop the media/fs_480_raw.fs5 (if you are using the new DAPLINK firmware use fs_480_raw.hex) file to the MBED drive and then drag-n-drop the demo itself. This way both the file system and software are up to date.

For the 5" displays first drag-n-drop the media/fs_800_raw.fsF (if you are using the new DAPLINK firmware use fs_800_raw.hex) file to the MBED drive and then drag-n-drop the demo itself. This way both the file system and software are up to date.

There is a prebuilt version of the demo binary here.

This is what it looks like on a 4.3" display:

/media/uploads/embeddedartists/demo480_cap_000.png /media/uploads/embeddedartists/demo480_cap_001.png /media/uploads/embeddedartists/demo480_cap_002.png /media/uploads/embeddedartists/demo480_cap_004.png /media/uploads/embeddedartists/demo480_cap_006.png /media/uploads/embeddedartists/demo480_cap_007.png /media/uploads/embeddedartists/demo480_cap_008.png
The first slide from the Slideshow:
/media/uploads/embeddedartists/demo480_cap_003.png
A couple of images from the Image Viewer
/media/uploads/embeddedartists/demo480_cap_009.png /media/uploads/embeddedartists/demo480_cap_010.png

Committer:
alindvall
Date:
Tue Apr 28 12:21:14 2015 +0000
Revision:
4:a7cbb22e4348
Parent:
0:b94e330c98ac
Updated to latest version of the DMSupport and DMBasicGUI libraries

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alindvall 0:b94e330c98ac 1 /*
alindvall 0:b94e330c98ac 2 * Copyright 2014 Embedded Artists AB
alindvall 0:b94e330c98ac 3 *
alindvall 0:b94e330c98ac 4 * Licensed under the Apache License, Version 2.0 (the "License");
alindvall 0:b94e330c98ac 5 * you may not use this file except in compliance with the License.
alindvall 0:b94e330c98ac 6 * You may obtain a copy of the License at
alindvall 0:b94e330c98ac 7 *
alindvall 0:b94e330c98ac 8 * http://www.apache.org/licenses/LICENSE-2.0
alindvall 0:b94e330c98ac 9 *
alindvall 0:b94e330c98ac 10 * Unless required by applicable law or agreed to in writing, software
alindvall 0:b94e330c98ac 11 * distributed under the License is distributed on an "AS IS" BASIS,
alindvall 0:b94e330c98ac 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
alindvall 0:b94e330c98ac 13 * See the License for the specific language governing permissions and
alindvall 0:b94e330c98ac 14 * limitations under the License.
alindvall 0:b94e330c98ac 15 */
alindvall 0:b94e330c98ac 16
alindvall 0:b94e330c98ac 17 #ifndef APP_NETWORK_SETTINGS_H
alindvall 0:b94e330c98ac 18 #define APP_NETWORK_SETTINGS_H
alindvall 0:b94e330c98ac 19
alindvall 0:b94e330c98ac 20 #include "App.h"
alindvall 0:b94e330c98ac 21 #include "DMBoard.h"
alindvall 0:b94e330c98ac 22 #include "lpc_swim.h"
alindvall 0:b94e330c98ac 23 #include "Button.h"
alindvall 0:b94e330c98ac 24 #include "ImageButton.h"
alindvall 0:b94e330c98ac 25 #include "DigitButton.h"
alindvall 0:b94e330c98ac 26 #include "Resource.h"
alindvall 0:b94e330c98ac 27
alindvall 0:b94e330c98ac 28 /**
alindvall 0:b94e330c98ac 29 * An App example. Allows changing IP Address, Netmask and Gateway.
alindvall 0:b94e330c98ac 30 *
alindvall 0:b94e330c98ac 31 * The purpose of this example is to show some of the graphics primitives in
alindvall 0:b94e330c98ac 32 * the SWIM library.
alindvall 0:b94e330c98ac 33 */
alindvall 0:b94e330c98ac 34 class AppNetworkSettings : public App {
alindvall 0:b94e330c98ac 35 public:
alindvall 0:b94e330c98ac 36
alindvall 0:b94e330c98ac 37 AppNetworkSettings();
alindvall 0:b94e330c98ac 38 virtual ~AppNetworkSettings();
alindvall 0:b94e330c98ac 39
alindvall 0:b94e330c98ac 40 virtual bool setup();
alindvall 0:b94e330c98ac 41 virtual void runToCompletion();
alindvall 0:b94e330c98ac 42 virtual bool teardown();
alindvall 0:b94e330c98ac 43
alindvall 0:b94e330c98ac 44 void modifyValue(int mod);
alindvall 0:b94e330c98ac 45 void changeActiveField(bool next);
alindvall 0:b94e330c98ac 46 void setActiveField(uint32_t newField);
alindvall 0:b94e330c98ac 47
alindvall 0:b94e330c98ac 48 enum Resources {
alindvall 0:b94e330c98ac 49 Resource_Ok_button,
alindvall 0:b94e330c98ac 50 Resource_Cancel_button,
alindvall 0:b94e330c98ac 51 Resource_ArrowUp_button,
alindvall 0:b94e330c98ac 52 Resource_ArrowDown_button,
alindvall 0:b94e330c98ac 53 Resource_ArrowLeft_button,
alindvall 0:b94e330c98ac 54 Resource_ArrowRight_button,
alindvall 0:b94e330c98ac 55 Resource_Digits,
alindvall 0:b94e330c98ac 56 NumResources,
alindvall 0:b94e330c98ac 57 };
alindvall 0:b94e330c98ac 58
alindvall 0:b94e330c98ac 59 /** Specifies the resource to use
alindvall 0:b94e330c98ac 60 *
alindvall 0:b94e330c98ac 61 * Adds a resource for a specific id. This allows the
alindvall 0:b94e330c98ac 62 * user program to select e.g. which image to use and
alindvall 0:b94e330c98ac 63 * if it should be loaded from a file or an array.
alindvall 0:b94e330c98ac 64 *
alindvall 0:b94e330c98ac 65 * @param id the identifier
alindvall 0:b94e330c98ac 66 * @param res the resource
alindvall 0:b94e330c98ac 67 */
alindvall 0:b94e330c98ac 68 void addResource(Resources id, Resource* res);
alindvall 0:b94e330c98ac 69
alindvall 0:b94e330c98ac 70 private:
alindvall 0:b94e330c98ac 71 enum Buttons {
alindvall 0:b94e330c98ac 72 ButtonIp0,
alindvall 0:b94e330c98ac 73 ButtonIp1,
alindvall 0:b94e330c98ac 74 ButtonIp2,
alindvall 0:b94e330c98ac 75 ButtonIp3,
alindvall 0:b94e330c98ac 76 ButtonMask0,
alindvall 0:b94e330c98ac 77 ButtonMask1,
alindvall 0:b94e330c98ac 78 ButtonMask2,
alindvall 0:b94e330c98ac 79 ButtonMask3,
alindvall 0:b94e330c98ac 80 ButtonGw0,
alindvall 0:b94e330c98ac 81 ButtonGw1,
alindvall 0:b94e330c98ac 82 ButtonGw2,
alindvall 0:b94e330c98ac 83 ButtonGw3,
alindvall 0:b94e330c98ac 84 ButtonOk,
alindvall 0:b94e330c98ac 85 ButtonCancel,
alindvall 0:b94e330c98ac 86 ButtonUp,
alindvall 0:b94e330c98ac 87 ButtonDown,
alindvall 0:b94e330c98ac 88 ButtonLeft,
alindvall 0:b94e330c98ac 89 ButtonRight,
alindvall 0:b94e330c98ac 90 NumButtons,
alindvall 0:b94e330c98ac 91 NumFields = ButtonOk,
alindvall 0:b94e330c98ac 92 };
alindvall 0:b94e330c98ac 93
alindvall 0:b94e330c98ac 94 Display* _disp;
alindvall 0:b94e330c98ac 95 SWIM_WINDOW_T* _win;
alindvall 0:b94e330c98ac 96 void* _fb;
alindvall 0:b94e330c98ac 97
alindvall 0:b94e330c98ac 98 Clickable* _buttons[NumButtons];
alindvall 0:b94e330c98ac 99
alindvall 0:b94e330c98ac 100 uint32_t _activeField;
alindvall 0:b94e330c98ac 101 uint32_t _values[NumFields];
alindvall 0:b94e330c98ac 102
alindvall 0:b94e330c98ac 103 Image::ImageData_t _digitImage;
alindvall 0:b94e330c98ac 104
alindvall 0:b94e330c98ac 105 Resource* _res[NumResources];
alindvall 0:b94e330c98ac 106
alindvall 0:b94e330c98ac 107 void draw();
alindvall 0:b94e330c98ac 108 void markField(int field, bool active);
alindvall 0:b94e330c98ac 109 void addIPField(int y, int idx, const char* lbl);
alindvall 0:b94e330c98ac 110 };
alindvall 0:b94e330c98ac 111
alindvall 0:b94e330c98ac 112 #endif
alindvall 0:b94e330c98ac 113
alindvall 0:b94e330c98ac 114