|
1 | 1 | import { customElement, html, LitElement, property, css, svg } from 'lit-element';
|
2 | 2 | import { fontA00 } from './lcd1602-font-a00';
|
| 3 | +import { ElementPin, i2c } from './pin'; |
3 | 4 |
|
4 | 5 | const ROWS = 2;
|
5 | 6 | const COLS = 16;
|
@@ -48,6 +49,39 @@ export class LCD1602Element extends LitElement {
|
48 | 49 | `;
|
49 | 50 | }
|
50 | 51 |
|
| 52 | + get pinInfo(): ElementPin[] { |
| 53 | + switch (this.pins) { |
| 54 | + case 'i2c': |
| 55 | + return [ |
| 56 | + { name: 'GND', x: 4, y: 32, number: 1, signals: [{ type: 'power', signal: 'GND' }] }, |
| 57 | + { name: 'VCC', x: 4, y: 41.5, number: 2, signals: [{ type: 'power', signal: 'VCC' }] }, |
| 58 | + { name: 'SDA', x: 4, y: 51, number: 3, signals: [i2c('SDA')] }, |
| 59 | + { name: 'SCL', x: 4, y: 60.5, number: 4, signals: [i2c('SCL')] }, |
| 60 | + ]; |
| 61 | + |
| 62 | + case 'full': |
| 63 | + default: |
| 64 | + return [ |
| 65 | + { name: 'VSS', x: 32, y: 131, number: 1, signals: [{ type: 'power', signal: 'GND' }] }, |
| 66 | + { name: 'VDD', x: 41.5, y: 131, number: 2, signals: [{ type: 'power', signal: 'VCC' }] }, |
| 67 | + { name: 'V0', x: 51.5, y: 131, number: 3, signals: [] }, |
| 68 | + { name: 'RS', x: 60.5, y: 131, number: 4, signals: [] }, |
| 69 | + { name: 'RW', x: 70.5, y: 131, number: 5, signals: [] }, |
| 70 | + { name: 'E', x: 80, y: 131, number: 6, signals: [] }, |
| 71 | + { name: 'D0', x: 89.5, y: 131, number: 7, signals: [] }, |
| 72 | + { name: 'D1', x: 99.5, y: 131, number: 8, signals: [] }, |
| 73 | + { name: 'D2', x: 109, y: 131, number: 9, signals: [] }, |
| 74 | + { name: 'D3', x: 118.5, y: 131, number: 10, signals: [] }, |
| 75 | + { name: 'D4', x: 128, y: 131, number: 11, signals: [] }, |
| 76 | + { name: 'D5', x: 137.5, y: 131, number: 12, signals: [] }, |
| 77 | + { name: 'D6', x: 147, y: 131, number: 13, signals: [] }, |
| 78 | + { name: 'D7', x: 156.5, y: 131, number: 14, signals: [] }, |
| 79 | + { name: 'A', x: 166.5, y: 131, number: 15, signals: [] }, |
| 80 | + { name: 'K', x: 176, y: 131, number: 16, signals: [] }, |
| 81 | + ]; |
| 82 | + } |
| 83 | + } |
| 84 | + |
51 | 85 | path(characters: Uint8Array | number[]) {
|
52 | 86 | const xSpacing = 0.6;
|
53 | 87 | const ySpacing = 0.7;
|
|
0 commit comments