Thermal Printer Basic Print Operations
APSEPM207LV.h@0:ddb341bbd487, 2018-05-21 (annotated)
- Committer:
- shivanandgowdakr
- Date:
- Mon May 21 07:27:19 2018 +0000
- Revision:
- 0:ddb341bbd487
- Child:
- 1:8372894bfc19
Thermal Printer APSEPM207LV Basic Print Operations ;
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| shivanandgowdakr | 0:ddb341bbd487 | 1 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 2 | ****************************************************************************** |
| shivanandgowdakr | 0:ddb341bbd487 | 3 | * @file APSEPM207LV.h |
| shivanandgowdakr | 0:ddb341bbd487 | 4 | * @author Shivanand Gowda |
| shivanandgowdakr | 0:ddb341bbd487 | 5 | * @version V1.0.0 |
| shivanandgowdakr | 0:ddb341bbd487 | 6 | * @date 11 March 2017 |
| shivanandgowdakr | 0:ddb341bbd487 | 7 | * @brief This file contains the class of a APSEPM207LV thermal control component |
| shivanandgowdakr | 0:ddb341bbd487 | 8 | ****************************************************************************** |
| shivanandgowdakr | 0:ddb341bbd487 | 9 | * @attention |
| shivanandgowdakr | 0:ddb341bbd487 | 10 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 11 | * Permission is hereby granted, free of charge, to any person obtaining a copy |
| shivanandgowdakr | 0:ddb341bbd487 | 12 | * of this software and associated documentation files (the "Software"), to deal |
| shivanandgowdakr | 0:ddb341bbd487 | 13 | * in the Software without restriction, including without limitation the rights |
| shivanandgowdakr | 0:ddb341bbd487 | 14 | * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
| shivanandgowdakr | 0:ddb341bbd487 | 15 | * copies of the Software, and to permit persons to whom the Software is |
| shivanandgowdakr | 0:ddb341bbd487 | 16 | * furnished to do so, subject to the following conditions: |
| shivanandgowdakr | 0:ddb341bbd487 | 17 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 18 | * The above copyright notice and this permission notice shall be included in |
| shivanandgowdakr | 0:ddb341bbd487 | 19 | * all copies or substantial portions of the Software. |
| shivanandgowdakr | 0:ddb341bbd487 | 20 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 21 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| shivanandgowdakr | 0:ddb341bbd487 | 22 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| shivanandgowdakr | 0:ddb341bbd487 | 23 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
| shivanandgowdakr | 0:ddb341bbd487 | 24 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| shivanandgowdakr | 0:ddb341bbd487 | 25 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
| shivanandgowdakr | 0:ddb341bbd487 | 26 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |
| shivanandgowdakr | 0:ddb341bbd487 | 27 | * THE SOFTWARE. |
| shivanandgowdakr | 0:ddb341bbd487 | 28 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 29 | |
| shivanandgowdakr | 0:ddb341bbd487 | 30 | #ifndef MBED_APSEPM207LV_H |
| shivanandgowdakr | 0:ddb341bbd487 | 31 | #define MBED_APSEPM207LV_H |
| shivanandgowdakr | 0:ddb341bbd487 | 32 | |
| shivanandgowdakr | 0:ddb341bbd487 | 33 | #include "mbed.h" |
| shivanandgowdakr | 0:ddb341bbd487 | 34 | |
| shivanandgowdakr | 0:ddb341bbd487 | 35 | #if defined(__CC_ARM) |
| shivanandgowdakr | 0:ddb341bbd487 | 36 | // To avoid "invalid multibyte character sequence" warning |
| shivanandgowdakr | 0:ddb341bbd487 | 37 | #pragma diag_suppress 870 |
| shivanandgowdakr | 0:ddb341bbd487 | 38 | #endif |
| shivanandgowdakr | 0:ddb341bbd487 | 39 | |
| shivanandgowdakr | 0:ddb341bbd487 | 40 | /** A printer interface for driving AS-289R2 thermal printer shield of NADA Electronics, Ltd. |
| shivanandgowdakr | 0:ddb341bbd487 | 41 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 42 | * @code |
| shivanandgowdakr | 0:ddb341bbd487 | 43 | * #include "mbed.h" |
| shivanandgowdakr | 0:ddb341bbd487 | 44 | * #include "AS829R2.h" |
| shivanandgowdakr | 0:ddb341bbd487 | 45 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 46 | * Serial pc(USBTX, USBRX); |
| shivanandgowdakr | 0:ddb341bbd487 | 47 | * AS829R2 tp(D1); // tx, 9600bps |
| shivanandgowdakr | 0:ddb341bbd487 | 48 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 49 | * int main() |
| shivanandgowdakr | 0:ddb341bbd487 | 50 | * { |
| shivanandgowdakr | 0:ddb341bbd487 | 51 | * tp.initialize(); |
| shivanandgowdakr | 0:ddb341bbd487 | 52 | * tp.putLineFeed(2); |
| shivanandgowdakr | 0:ddb341bbd487 | 53 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 54 | * tp.printf("** Thermal Printer Shield **\r\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 55 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 56 | * tp.setDoubleSizeWidth(); |
| shivanandgowdakr | 0:ddb341bbd487 | 57 | * tp.printf(" AS-289R2\r\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 58 | * tp.clearDoubleSizeWidth(); |
| shivanandgowdakr | 0:ddb341bbd487 | 59 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 60 | * tp.printf("日本語文字列の印字テスト:24x24\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 61 | * tp.setKanjiFont(APSEPM207LV::KANJI_16x16); |
| shivanandgowdakr | 0:ddb341bbd487 | 62 | * tp.setANKFont(APSEPM207LV::ANK_8x16); |
| shivanandgowdakr | 0:ddb341bbd487 | 63 | * tp.printf("日本語文字列の印字テスト:16x16\r\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 64 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 65 | * tp.setKanjiFont(APSEPM207LV::KANJI_DEFAULT); |
| shivanandgowdakr | 0:ddb341bbd487 | 66 | * tp.setANKFont(APSEPM207LV::ANK_DEFAULT); |
| shivanandgowdakr | 0:ddb341bbd487 | 67 | * tp.setDoubleSizeWidth(); |
| shivanandgowdakr | 0:ddb341bbd487 | 68 | * tp.printf("ABCDEFG 0123456789\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 69 | * tp.clearDoubleSizeWidth(); |
| shivanandgowdakr | 0:ddb341bbd487 | 70 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 71 | * tp.setDoubleSizeHeight(); |
| shivanandgowdakr | 0:ddb341bbd487 | 72 | * tp.printf("ABCDEFG 0123456789\r"); |
| shivanandgowdakr | 0:ddb341bbd487 | 73 | * tp.clearDoubleSizeHeight(); |
| shivanandgowdakr | 0:ddb341bbd487 | 74 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 75 | * pc.printf("AS-289R2 thermal printer shield test\n\n"); |
| shivanandgowdakr | 0:ddb341bbd487 | 76 | * while(1) { |
| shivanandgowdakr | 0:ddb341bbd487 | 77 | * if (pc.readable()) { |
| shivanandgowdakr | 0:ddb341bbd487 | 78 | * int c = pc.getc(); |
| shivanandgowdakr | 0:ddb341bbd487 | 79 | * pc.putc(c); |
| shivanandgowdakr | 0:ddb341bbd487 | 80 | * tp.putc(c); |
| shivanandgowdakr | 0:ddb341bbd487 | 81 | * } |
| shivanandgowdakr | 0:ddb341bbd487 | 82 | * } |
| shivanandgowdakr | 0:ddb341bbd487 | 83 | * } |
| shivanandgowdakr | 0:ddb341bbd487 | 84 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 85 | * @endcode |
| shivanandgowdakr | 0:ddb341bbd487 | 86 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 87 | class APSEPM207LV : public Stream |
| shivanandgowdakr | 0:ddb341bbd487 | 88 | { |
| shivanandgowdakr | 0:ddb341bbd487 | 89 | public: |
| shivanandgowdakr | 0:ddb341bbd487 | 90 | |
| shivanandgowdakr | 0:ddb341bbd487 | 91 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 92 | * @enum Kanji_font_size |
| shivanandgowdakr | 0:ddb341bbd487 | 93 | * Value of Japanese Kanji font size |
| shivanandgowdakr | 0:ddb341bbd487 | 94 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 95 | enum Kanji_font_size { |
| shivanandgowdakr | 0:ddb341bbd487 | 96 | //! 24x24 dot font |
| shivanandgowdakr | 0:ddb341bbd487 | 97 | KANJI_24x24 = 0x30, |
| shivanandgowdakr | 0:ddb341bbd487 | 98 | //! 16x16 dot font |
| shivanandgowdakr | 0:ddb341bbd487 | 99 | KANJI_16x16, |
| shivanandgowdakr | 0:ddb341bbd487 | 100 | //! Defalut font size |
| shivanandgowdakr | 0:ddb341bbd487 | 101 | KANJI_DEFAULT = KANJI_24x24 |
| shivanandgowdakr | 0:ddb341bbd487 | 102 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 103 | |
| shivanandgowdakr | 0:ddb341bbd487 | 104 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 105 | * @enum ANK_font_size |
| shivanandgowdakr | 0:ddb341bbd487 | 106 | * Value of ANK font size |
| shivanandgowdakr | 0:ddb341bbd487 | 107 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 108 | enum ANK_font_size { |
| shivanandgowdakr | 0:ddb341bbd487 | 109 | //! 8x16 dot font |
| shivanandgowdakr | 0:ddb341bbd487 | 110 | ANK_8x16 = 0x30, |
| shivanandgowdakr | 0:ddb341bbd487 | 111 | //! 12x24 dot font |
| shivanandgowdakr | 0:ddb341bbd487 | 112 | ANK_12x24, |
| shivanandgowdakr | 0:ddb341bbd487 | 113 | //! 16x16 dot font |
| shivanandgowdakr | 0:ddb341bbd487 | 114 | ANK_16x16, |
| shivanandgowdakr | 0:ddb341bbd487 | 115 | //! 24x24 dot fot |
| shivanandgowdakr | 0:ddb341bbd487 | 116 | ANK_24x24, |
| shivanandgowdakr | 0:ddb341bbd487 | 117 | //! Defalut font size |
| shivanandgowdakr | 0:ddb341bbd487 | 118 | ANK_DEFAULT = ANK_12x24 |
| shivanandgowdakr | 0:ddb341bbd487 | 119 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 120 | |
| shivanandgowdakr | 0:ddb341bbd487 | 121 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 122 | * @enum QRcode_error_level |
| shivanandgowdakr | 0:ddb341bbd487 | 123 | * Value of CQ code error correction level |
| shivanandgowdakr | 0:ddb341bbd487 | 124 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 125 | enum QRcode_error_level { |
| shivanandgowdakr | 0:ddb341bbd487 | 126 | //! Error correction level L (7%) |
| shivanandgowdakr | 0:ddb341bbd487 | 127 | QR_ERR_LVL_L = 0x4C, |
| shivanandgowdakr | 0:ddb341bbd487 | 128 | //! Error correction level M (15%) |
| shivanandgowdakr | 0:ddb341bbd487 | 129 | QR_ERR_LVL_M = 0x4D, |
| shivanandgowdakr | 0:ddb341bbd487 | 130 | //! Error correction level Q (25%) |
| shivanandgowdakr | 0:ddb341bbd487 | 131 | QR_ERR_LVL_Q = 0x51, |
| shivanandgowdakr | 0:ddb341bbd487 | 132 | //! Error correction level H (30%) |
| shivanandgowdakr | 0:ddb341bbd487 | 133 | QR_ERR_LVL_H = 0x48 |
| shivanandgowdakr | 0:ddb341bbd487 | 134 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 135 | |
| shivanandgowdakr | 0:ddb341bbd487 | 136 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 137 | * @enum barcode_mode |
| shivanandgowdakr | 0:ddb341bbd487 | 138 | * Value of barcode mode |
| shivanandgowdakr | 0:ddb341bbd487 | 139 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 140 | enum barcode_mode { |
| shivanandgowdakr | 0:ddb341bbd487 | 141 | //! UPC-A : 11-digit, d1-d11, C/D |
| shivanandgowdakr | 0:ddb341bbd487 | 142 | BCODE_UPC_A = 0x30, |
| shivanandgowdakr | 0:ddb341bbd487 | 143 | //! JAN13 : 12-digit, d1-d12, C/D |
| shivanandgowdakr | 0:ddb341bbd487 | 144 | BCODE_JAN13 = 0x32, |
| shivanandgowdakr | 0:ddb341bbd487 | 145 | //! JAN8 : 7-digit, d1-d7, C/D |
| shivanandgowdakr | 0:ddb341bbd487 | 146 | BCODE_JAN8, |
| shivanandgowdakr | 0:ddb341bbd487 | 147 | //! CODE39 : variable, d1-d20, C/D |
| shivanandgowdakr | 0:ddb341bbd487 | 148 | BCODE_CODE39, |
| shivanandgowdakr | 0:ddb341bbd487 | 149 | //! ITF : variable, d1-d20 |
| shivanandgowdakr | 0:ddb341bbd487 | 150 | BCODE_ITF, |
| shivanandgowdakr | 0:ddb341bbd487 | 151 | //! CODABAR (NW7) : variable, d1-d20 |
| shivanandgowdakr | 0:ddb341bbd487 | 152 | BCODE_CODABAR |
| shivanandgowdakr | 0:ddb341bbd487 | 153 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 154 | |
| shivanandgowdakr | 0:ddb341bbd487 | 155 | /** |
| shivanandgowdakr | 0:ddb341bbd487 | 156 | * @enum script_mode |
| shivanandgowdakr | 0:ddb341bbd487 | 157 | * Value of script mode |
| shivanandgowdakr | 0:ddb341bbd487 | 158 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 159 | enum script_mode { |
| shivanandgowdakr | 0:ddb341bbd487 | 160 | //! Cancel script mode |
| shivanandgowdakr | 0:ddb341bbd487 | 161 | SCRIPT_CANCEL = 0, |
| shivanandgowdakr | 0:ddb341bbd487 | 162 | //! Super script |
| shivanandgowdakr | 0:ddb341bbd487 | 163 | SCRIPT_SUPER, |
| shivanandgowdakr | 0:ddb341bbd487 | 164 | //! Sub script |
| shivanandgowdakr | 0:ddb341bbd487 | 165 | SCRIPT_SUB |
| shivanandgowdakr | 0:ddb341bbd487 | 166 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 167 | |
| shivanandgowdakr | 0:ddb341bbd487 | 168 | /** Create a APSEPM207LV instance |
| shivanandgowdakr | 0:ddb341bbd487 | 169 | * which is connected to specified Serial pin with specified baud rate |
| shivanandgowdakr | 0:ddb341bbd487 | 170 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 171 | * @param tx Serial TX pin |
| shivanandgowdakr | 0:ddb341bbd487 | 172 | * @param baud (option) serial baud rate (default: 9600bps) |
| shivanandgowdakr | 0:ddb341bbd487 | 173 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 174 | APSEPM207LV(PinName tx,PinName rx, uint32_t baud = 9600); |
| shivanandgowdakr | 0:ddb341bbd487 | 175 | |
| shivanandgowdakr | 0:ddb341bbd487 | 176 | /** Create a APSEPM207LV instance |
| shivanandgowdakr | 0:ddb341bbd487 | 177 | * which is connected to specified Serial instance with specified baud rate |
| shivanandgowdakr | 0:ddb341bbd487 | 178 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 179 | * @param serial_obj Serial object (instance) |
| shivanandgowdakr | 0:ddb341bbd487 | 180 | * @param baud (option) serial baud rate (default: 9600bps) |
| shivanandgowdakr | 0:ddb341bbd487 | 181 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 182 | APSEPM207LV(Serial &serial_obj, uint32_t baud = 9600); |
| shivanandgowdakr | 0:ddb341bbd487 | 183 | |
| shivanandgowdakr | 0:ddb341bbd487 | 184 | /** Destructor of APSEPM207LV |
| shivanandgowdakr | 0:ddb341bbd487 | 185 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 186 | virtual ~APSEPM207LV(); |
| shivanandgowdakr | 0:ddb341bbd487 | 187 | |
| shivanandgowdakr | 0:ddb341bbd487 | 188 | /** Initializa APSEPM207LV |
| shivanandgowdakr | 0:ddb341bbd487 | 189 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 190 | * Issues initialize command for AS-289R2 |
| shivanandgowdakr | 0:ddb341bbd487 | 191 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 192 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 193 | void initialize(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 194 | |
| shivanandgowdakr | 0:ddb341bbd487 | 195 | /** Send line feed code |
| shivanandgowdakr | 0:ddb341bbd487 | 196 | * which is connected to specified Serial pin with specified baud rate |
| shivanandgowdakr | 0:ddb341bbd487 | 197 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 198 | * @param lines Number of line feed |
| shivanandgowdakr | 0:ddb341bbd487 | 199 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 200 | void printTest(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 201 | void printnputLineFeed(uint8_t lines); |
| shivanandgowdakr | 0:ddb341bbd487 | 202 | void lineFeed(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 203 | void putHorizontaltab(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 204 | |
| shivanandgowdakr | 0:ddb341bbd487 | 205 | void setdefaultLinespacing(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 206 | void setLinespacing(uint8_t lines); |
| shivanandgowdakr | 0:ddb341bbd487 | 207 | void setleftMargin(uint8_t n1, uint8_t n2); |
| shivanandgowdakr | 0:ddb341bbd487 | 208 | void absoluteprintPosition(uint8_t n1, uint8_t n2); |
| shivanandgowdakr | 0:ddb341bbd487 | 209 | void whiteblack(uint8_t n1); |
| shivanandgowdakr | 0:ddb341bbd487 | 210 | void papersensorstatus(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 211 | void carriageReturn(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 212 | /** pur Horizontal Tab |
| shivanandgowdakr | 0:ddb341bbd487 | 213 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 214 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 215 | |
| shivanandgowdakr | 0:ddb341bbd487 | 216 | void putLineFeed(uint8_t lines); |
| shivanandgowdakr | 0:ddb341bbd487 | 217 | |
| shivanandgowdakr | 0:ddb341bbd487 | 218 | /** Clear image buffer of the AS-289R2 |
| shivanandgowdakr | 0:ddb341bbd487 | 219 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 220 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 221 | void clearBuffer(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 222 | |
| shivanandgowdakr | 0:ddb341bbd487 | 223 | /** Set double height size font |
| shivanandgowdakr | 0:ddb341bbd487 | 224 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 225 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 226 | void setDoubleSizeHeight(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 227 | |
| shivanandgowdakr | 0:ddb341bbd487 | 228 | /** Set normal height size font |
| shivanandgowdakr | 0:ddb341bbd487 | 229 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 230 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 231 | void clearDoubleSizeHeight(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 232 | |
| shivanandgowdakr | 0:ddb341bbd487 | 233 | /** Set double width size font |
| shivanandgowdakr | 0:ddb341bbd487 | 234 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 235 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 236 | void setDoubleSizeWidth(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 237 | |
| shivanandgowdakr | 0:ddb341bbd487 | 238 | /** Set normal width size font |
| shivanandgowdakr | 0:ddb341bbd487 | 239 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 240 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 241 | void clearDoubleSizeWidth(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 242 | |
| shivanandgowdakr | 0:ddb341bbd487 | 243 | /** Set large size font (48x96) |
| shivanandgowdakr | 0:ddb341bbd487 | 244 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 245 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 246 | void setLargeFont(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 247 | |
| shivanandgowdakr | 0:ddb341bbd487 | 248 | /** Set normal size font |
| shivanandgowdakr | 0:ddb341bbd487 | 249 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 250 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 251 | void clearLargeFont(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 252 | |
| shivanandgowdakr | 0:ddb341bbd487 | 253 | /** Set ANK font |
| shivanandgowdakr | 0:ddb341bbd487 | 254 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 255 | * @param font ANK font e.g. APSEPM207LV::ANK_8x16 |
| shivanandgowdakr | 0:ddb341bbd487 | 256 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 257 | void setANKFont(uint32_t font); |
| shivanandgowdakr | 0:ddb341bbd487 | 258 | |
| shivanandgowdakr | 0:ddb341bbd487 | 259 | /** Set Kanji font size |
| shivanandgowdakr | 0:ddb341bbd487 | 260 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 261 | * @param font Kanji font e.g. APSEPM207LV::KANJI_16x16 |
| shivanandgowdakr | 0:ddb341bbd487 | 262 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 263 | void setKanjiFont(uint32_t font); |
| shivanandgowdakr | 0:ddb341bbd487 | 264 | |
| shivanandgowdakr | 0:ddb341bbd487 | 265 | /** Print QR code |
| shivanandgowdakr | 0:ddb341bbd487 | 266 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 267 | * @param err QR code error correction level e.g. APSEPM207LV::QR_ERR_LVL_M |
| shivanandgowdakr | 0:ddb341bbd487 | 268 | * @param buf Data to be printed |
| shivanandgowdakr | 0:ddb341bbd487 | 269 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 270 | void printQRCode(uint32_t err, const char* buf); |
| shivanandgowdakr | 0:ddb341bbd487 | 271 | |
| shivanandgowdakr | 0:ddb341bbd487 | 272 | /** Print Bar code |
| shivanandgowdakr | 0:ddb341bbd487 | 273 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 274 | * @param code Type of Bar code e.g. APSEPM207LV::JAN13 |
| shivanandgowdakr | 0:ddb341bbd487 | 275 | * @param buf Data to be printed |
| shivanandgowdakr | 0:ddb341bbd487 | 276 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 277 | void printBarCode(uint32_t code, const char* param); |
| shivanandgowdakr | 0:ddb341bbd487 | 278 | |
| shivanandgowdakr | 0:ddb341bbd487 | 279 | /** Print bitmap image |
| shivanandgowdakr | 0:ddb341bbd487 | 280 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 281 | * @param cmd Type of operation mode, 0x61: print image buffer, 0x62: register image buffer, 0x63: register -> print, 0x64: print -> register, 0x65: line print |
| shivanandgowdakr | 0:ddb341bbd487 | 282 | * @param lines Number of print line |
| shivanandgowdakr | 0:ddb341bbd487 | 283 | * @param image Data to be printed |
| shivanandgowdakr | 0:ddb341bbd487 | 284 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 285 | void printBitmapImage(uint32_t cmd, uint16_t lines, const uint8_t * image); |
| shivanandgowdakr | 0:ddb341bbd487 | 286 | |
| shivanandgowdakr | 0:ddb341bbd487 | 287 | /** Set Line Spaceing |
| shivanandgowdakr | 0:ddb341bbd487 | 288 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 289 | * @param space line spacing |
| shivanandgowdakr | 0:ddb341bbd487 | 290 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 291 | void setLineSpaceing(uint32_t space); |
| shivanandgowdakr | 0:ddb341bbd487 | 292 | |
| shivanandgowdakr | 0:ddb341bbd487 | 293 | /** Set as default Line Spaceing |
| shivanandgowdakr | 0:ddb341bbd487 | 294 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 295 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 296 | void defaultLineSpaceing(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 297 | |
| shivanandgowdakr | 0:ddb341bbd487 | 298 | /** Set Print Direction |
| shivanandgowdakr | 0:ddb341bbd487 | 299 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 300 | * @param direction Print direction, 0: lister, 1: texter |
| shivanandgowdakr | 0:ddb341bbd487 | 301 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 302 | void setPrintDirection(uint32_t direction); |
| shivanandgowdakr | 0:ddb341bbd487 | 303 | |
| shivanandgowdakr | 0:ddb341bbd487 | 304 | /** Send feed code |
| shivanandgowdakr | 0:ddb341bbd487 | 305 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 306 | * @param space Paper feed |
| shivanandgowdakr | 0:ddb341bbd487 | 307 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 308 | void putPaperFeed(uint32_t space); |
| shivanandgowdakr | 0:ddb341bbd487 | 309 | |
| shivanandgowdakr | 0:ddb341bbd487 | 310 | /** Set Inter Character Space |
| shivanandgowdakr | 0:ddb341bbd487 | 311 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 312 | * @param space inter-character space |
| shivanandgowdakr | 0:ddb341bbd487 | 313 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 314 | void setInterCharacterSpace(uint32_t space); |
| shivanandgowdakr | 0:ddb341bbd487 | 315 | |
| shivanandgowdakr | 0:ddb341bbd487 | 316 | /** Set as default Inter Character Space |
| shivanandgowdakr | 0:ddb341bbd487 | 317 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 318 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 319 | void defaultInterCharacterSpace(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 320 | |
| shivanandgowdakr | 0:ddb341bbd487 | 321 | /** Send Print Position |
| shivanandgowdakr | 0:ddb341bbd487 | 322 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 323 | * @param position Print position |
| shivanandgowdakr | 0:ddb341bbd487 | 324 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 325 | void putPrintPosition(uint32_t position); |
| shivanandgowdakr | 0:ddb341bbd487 | 326 | |
| shivanandgowdakr | 0:ddb341bbd487 | 327 | /** Set Script |
| shivanandgowdakr | 0:ddb341bbd487 | 328 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 329 | * @param script mode e.g. APSEPM207LV::SCRIPT_SUPER |
| shivanandgowdakr | 0:ddb341bbd487 | 330 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 331 | void setScript(script_mode script); |
| shivanandgowdakr | 0:ddb341bbd487 | 332 | |
| shivanandgowdakr | 0:ddb341bbd487 | 333 | /** Clear Script |
| shivanandgowdakr | 0:ddb341bbd487 | 334 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 335 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 336 | void clearScript(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 337 | |
| shivanandgowdakr | 0:ddb341bbd487 | 338 | /** Set Quadruple size |
| shivanandgowdakr | 0:ddb341bbd487 | 339 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 340 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 341 | void setQuadrupleSize(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 342 | |
| shivanandgowdakr | 0:ddb341bbd487 | 343 | /** Clear Quadruple size |
| shivanandgowdakr | 0:ddb341bbd487 | 344 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 345 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 346 | void clearQuadrupleSize(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 347 | |
| shivanandgowdakr | 0:ddb341bbd487 | 348 | /** Set Enlargement size |
| shivanandgowdakr | 0:ddb341bbd487 | 349 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 350 | * @param width enlargement |
| shivanandgowdakr | 0:ddb341bbd487 | 351 | * @param height enlargement |
| shivanandgowdakr | 0:ddb341bbd487 | 352 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 353 | void setEnlargement(uint32_t width, uint32_t height); |
| shivanandgowdakr | 0:ddb341bbd487 | 354 | |
| shivanandgowdakr | 0:ddb341bbd487 | 355 | /** Clear Enlargement size |
| shivanandgowdakr | 0:ddb341bbd487 | 356 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 357 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 358 | void clearEnlargement(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 359 | |
| shivanandgowdakr | 0:ddb341bbd487 | 360 | /** Set BarCode Height size |
| shivanandgowdakr | 0:ddb341bbd487 | 361 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 362 | * @param height Bar height |
| shivanandgowdakr | 0:ddb341bbd487 | 363 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 364 | void setBarCodeHeight(uint32_t height); |
| shivanandgowdakr | 0:ddb341bbd487 | 365 | |
| shivanandgowdakr | 0:ddb341bbd487 | 366 | /** Set as default BarCode Height size |
| shivanandgowdakr | 0:ddb341bbd487 | 367 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 368 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 369 | void defaultBarCodeHeight(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 370 | |
| shivanandgowdakr | 0:ddb341bbd487 | 371 | /** Set BarCode Bar size |
| shivanandgowdakr | 0:ddb341bbd487 | 372 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 373 | * @param narrowbar narrow bars size |
| shivanandgowdakr | 0:ddb341bbd487 | 374 | * @param widebar wide bars size |
| shivanandgowdakr | 0:ddb341bbd487 | 375 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 376 | void setBarCodeBarSize(uint32_t narrowbar, uint32_t widebar); |
| shivanandgowdakr | 0:ddb341bbd487 | 377 | |
| shivanandgowdakr | 0:ddb341bbd487 | 378 | /** Set as default BarCode Bar size |
| shivanandgowdakr | 0:ddb341bbd487 | 379 | * |
| shivanandgowdakr | 0:ddb341bbd487 | 380 | */ |
| shivanandgowdakr | 0:ddb341bbd487 | 381 | void defaultBarCodeBarSize(void); |
| shivanandgowdakr | 0:ddb341bbd487 | 382 | |
| shivanandgowdakr | 0:ddb341bbd487 | 383 | private: |
| shivanandgowdakr | 0:ddb341bbd487 | 384 | Serial *_serial_p; |
| shivanandgowdakr | 0:ddb341bbd487 | 385 | Serial &_serial; |
| shivanandgowdakr | 0:ddb341bbd487 | 386 | |
| shivanandgowdakr | 0:ddb341bbd487 | 387 | protected: |
| shivanandgowdakr | 0:ddb341bbd487 | 388 | // Stream implementation functions |
| shivanandgowdakr | 0:ddb341bbd487 | 389 | virtual int _putc(int value); |
| shivanandgowdakr | 0:ddb341bbd487 | 390 | virtual int _getc(); |
| shivanandgowdakr | 0:ddb341bbd487 | 391 | }; |
| shivanandgowdakr | 0:ddb341bbd487 | 392 | |
| shivanandgowdakr | 0:ddb341bbd487 | 393 | #endif |
| shivanandgowdakr | 0:ddb341bbd487 | 394 | |
| shivanandgowdakr | 0:ddb341bbd487 | 395 |