MicroTerminale: Difference between revisions

From ciapini
Jump to navigation Jump to search
Line 127: Line 127:
|1|| ||MCLR||
|1|| ||MCLR||
|-
|-
|2|| || ||PGED3/AN0/C3INC/VREF+/ASDA1(2)/RP5/PMD7/CTED1/VBUSVLD/VCMPST1/CN2/RA0
|2||Uart TX|| ||PGED3/AN0/C3INC/VREF+/ASDA1(2)/RP5/PMD7/CTED1/VBUSVLD/VCMPST1/CN2/RA0
|-
|-
|3|| || ||PGEC3/AN1/C3IND/VREF-/ASCL1(2)/RP6/PMD6/CTED2/SESSVLD/VCMPST2/CN3/RA1
|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
|4||Dati Programmazione|| ||PGED1/AN2/C2INB/DPH/RP0/PMD0/CN4/RB0
Line 135: Line 135:
|5||Clock Programmazione|| ||PGEC1/AN3/C2INA/DMH/RP1/PMD1/CN5/RB1
|5||Clock Programmazione|| ||PGEC1/AN3/C2INA/DMH/RP1/PMD1/CN5/RB1
|-
|-
|6|| || ||AN4/C1INB/DPLN/SDA2/RP2/PMD2/CN6/RB2
|6||LCD bit 5|| ||AN4/C1INB/DPLN/SDA2/RP2/PMD2/CN6/RB2
|-
|-
|7|| || ||AN5/C1INA/DMLN/RTCC/SCL2/RP3/PMWR/CN7/RB3
|7||LCD bit 6|| ||AN5/C1INA/DMLN/RTCC/SCL2/RP3/PMWR/CN7/RB3
|-
|-
|8||V-|| ||VSS
|8||V-|| ||VSS
Line 145: Line 145:
|10||Xtal|| ||OSCO/CLKO/PMA0/CN29/RA3
|10||Xtal|| ||OSCO/CLKO/PMA0/CN29/RA3
|-
|-
|11|| || ||SOSCI/C2IND/RP4/PMBE/CN1/RB4
|11||LCD bit 7|| ||SOSCI/C2IND/RP4/PMBE/CN1/RB4
|-
|-
|12|| || ||SOSCO/SCLKI/T1CK/C2INC/PMA1/CN0/RA4
|12|| || ||SOSCO/SCLKI/T1CK/C2INC/PMA1/CN0/RA4
Line 151: Line 151:
|13||V+|| ||VDD
|13||V+|| ||VDD
|-
|-
|14|| || ||TMS/USBID/CN27/RB5
|14||LCD bit 8|| ||TMS/USBID/CN27/RB5
|-
|-
|15|| || ||VBUS
|15|| || ||VBUS
|-
|-
|16|| || ||TDI/RP7/PMD5/INT0/CN23/RB7
|16||LCD Enable || ||TDI/RP7/PMD5/INT0/CN23/RB7
|-
|-
|17|| || ||TCK/USBOEN/SCL1/RP8/PMD4/CN22/RB8
|17||LCD RS|| ||TCK/USBOEN/SCL1/RP8/PMD4/CN22/RB8
|-
|-
|18|| || ||TDO/SDA1/RP9/PMD3/RCV/CN21/RB9
|18|| || ||TDO/SDA1/RP9/PMD3/RCV/CN21/RB9
Line 171: Line 171:
|23|| || ||VUSB
|23|| || ||VUSB
|-
|-
|24|| || ||AN11/C1INC/RP13/PMRD/REFO/SESSEND/CN13/RB13
|24||Uart RTS|| ||AN11/C1INC/RP13/PMRD/REFO/SESSEND/CN13/RB13
|-
|-
|25|| || ||AN10/C3INB/CVREF/VCPCON/VBUSON/RP14/CN12/RB14
|25||Uart CTS|| ||AN10/C3INB/CVREF/VCPCON/VBUSON/RP14/CN12/RB14
|-
|-
|26|| || ||AN9/C3INA/VBUSCHG/RP15/VBUSST/CN11/RB15
|26|| || ||AN9/C3INA/VBUSCHG/RP15/VBUSST/CN11/RB15

Revision as of 17:16, 17 May 2013

Un terminale fisico implementato su microcontrollore.

periferiche:

  • display: lcd a caratteri. controller hd44780, 4 righe x 20 colonne
  • tastiera: ps2? usb? lo standard del momento e' chiaramente USB. pero e' difficile trovare uC con supporto hardware per USB Host-side a 5v. i livelli TTL a 5v d'altra parte sono comodi coi display normalmente reperibili.

terminal mode:

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

uscita: 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.


USB host mode:

uC candidati:


Tastiera

La tastiera puo essere USB (HID), PS/2 o keypad.

Tastiera USB

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

http://www.cartft.com/catalog/il/478

Tastiera PS/2

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

per una serie di ragioni sarebbe meglio un GLCD (piu modelli a 3.3, piu compatto, piu economico) ma sembra che nessuno voglia prendersi lo sbattimento di implementare una grafica quindi forse, per ora, si va su un display a caratteri


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

uC

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

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 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 DISVREG
20 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 AN9/C3INA/VBUSCHG/RP15/VBUSST/CN11/RB15
27 V- VSS
28 V+ VDD

letture: