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