MicroTerminale

From ciapini
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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: