MicroTerminale

From ciapini
Jump to navigation Jump to search

Un terminale fisico implementato su microcontrollore.

periferiche:

  • display: lcd a caratteri. controller hd44780, 4 righe x 16 o 20 colonne
  • tastiera: usb HID

terminal mode:

  • vt100 ? sembra che le features corrispondano piu o meno con quel che si puo fare su hd44780
  • vt102 ?
  • vt220 ?

uscita: UART rs232 con livelli TTL

il codice https://github.com/74hc595/Terminalscope/blob/master/terminal.c sembra agevolmente sciacallabile e ben fatto.

vanno reimplementate le funzioni lato uart e lato display.

https://github.com/74hc595/Terminalscope/blob/master/video.c

un primo problema e' che i display hd44780 non supportano il testo in negativo. non sembrano esistere controller diffusi che lo permettano. o lo si rende graficamente in un'altro modo o lo si visualizza come testo normale.


Tastiera

http://ww1.microchip.com/downloads/en/AppNotes/01212a.pdf

Tastiere compatte


keypad

16 tasti: da 0 a 9 e A/su B/giu C/sinistra D/destra E/enter F/exit

  • microswitch in matrice di 4x4: costoso, bisogno di bucare box
  • touch capacitivo: complesso lato SW, tocco meno confortevole

http://www.microchip.com/stellent/groups/SiteComm_sg/documents/DeviceDoc/en542792.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/39743a.pdf

Connettore keypad

Pin Funzione Nome
1 KBD_ROW1
2 KBD_ROW2
3 KBD_ROW3
4 KBD_ROW4
5 KBD_COL1
6 KBD_COL2
7 KBD_COL3
8 KBD_COL4

lcd

un fet controlla l'accensione della backlight


Connettore display

Pin Funzione Nome
1 LCD_DATA1
2 LCD_DATA2
3 LCD_DATA3
4 LCD_DATA4
5 LCD_EN
6 LCD_RS
7 V+
8 GND

uC

PIC24FJ64GB002 http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en536121

USB host mode:


Pin Funzione Nome porta sul uC
1 MCLR
2 Uart TX PGED3/AN0/C3INC/VREF+/ASDA1(2)/RP5/PMD7/CTED1/VBUSVLD/VCMPST1/CN2/RA0
3 Uart Rx PGEC3/AN1/C3IND/VREF-/ASCL1(2)/RP6/PMD6/CTED2/SESSVLD/VCMPST2/CN3/RA1
4 Dati Programmazione PGED1/AN2/C2INB/DPH/RP0/PMD0/CN4/RB0
5 Clock Programmazione PGEC1/AN3/C2INA/DMH/RP1/PMD1/CN5/RB1
6 LCD bit 5 AN4/C1INB/DPLN/SDA2/RP2/PMD2/CN6/RB2
7 LCD bit 6 AN5/C1INA/DMLN/RTCC/SCL2/RP3/PMWR/CN7/RB3
8 V- VSS
9 Xtal OSCI/CLKI/C1IND/PMCS1/CN30/RA2
10 Xtal OSCO/CLKO/PMA0/CN29/RA3
11 LCD bit 7 SOSCI/C2IND/RP4/PMBE/CN1/RB4
12 Cicalino SOSCO/SCLKI/T1CK/C2INC/PMA1/CN0/RA4
13 V+ VDD
14 LCD bit 8 TMS/USBID/CN27/RB5
15 VBUS
16 LCD Enable TDI/RP7/PMD5/INT0/CN23/RB7
17 LCD RS TCK/USBOEN/SCL1/RP8/PMD4/CN22/RB8
18 TDO/SDA1/RP9/PMD3/RCV/CN21/RB9
19 VSS (regolatore on) DISVREG
20 Cap verso VSS VCAP/VDDCORE
21 USB data + PGED2/D+/VPIO/RP10/CN16/RB10
22 USB data - PGEC2/D-/VMIO/RP11/CN15/RB11
23 VUSB
24 Uart RTS AN11/C1INC/RP13/PMRD/REFO/SESSEND/CN13/RB13
25 Uart CTS AN10/C3INB/CVREF/VCPCON/VBUSON/RP14/CN12/RB14
26 Backlight AN9/C3INA/VBUSCHG/RP15/VBUSST/CN11/RB15
27 V- VSS
28 V+ VDD

letture: