Hitachi Network Adapter H8 User Manual page 42

Lowcost evaluation board
Table of Contents

Advertisement

HTEB1
User manual
LCD_DATA_CTRL = LCD_IN;
SET_LCD_EN;
status = LCD_DATA_PORT;
CLEAR_LCD_EN;
LCD_DATA_CTRL = LCD_OUT;
return status;
}
void LCDInit(void)
{
u16 cnt=0;
CLEAR_LCD_RS;
CLEAR_LCD_RW;
CLEAR_LCD_EN;
PCR7 |= 0x30;
PCR2 |= 0x01;
LCD_DATA_CTRL = LCD_OUT;
// required 3 times pls. ref. data sheet
LCDWriteCmd(0x38); // 8Bit-IF, 2 Lines, 5x7 character font
while(--cnt);
LCDWriteCmd(0x38); // 8Bit-IF, 2 Lines, 5x7 character font
while(--cnt);
LCDWriteCmd(0x38); // 8Bit-IF, 2 Lines, 5x7 character font
while(--cnt);
LCDWriteCmd(0x38); // 8Bit-IF, 2 Lines, 5x7 character font
while(--cnt);
LCDWriteCmd(0x0c); // DisplayOn, CursorOff, BlinkingOff
LCDReadStatus();
LCDWriteCmd(0x06); // Enter Mode, AutoIncrement
LCDReadStatus();
LCDWriteCmd(0x14); // MoveCursor right
LCDReadStatus();
LCDWriteCmd(0x80); // Set DD RAM Address = 0x00
LCDReadStatus();
}
// writesomedata from 1st position in #line (0/1)
void LCDWriteLine(u8 line, u8 *data)
{
LCDWriteCmd(0x80 + line*0x40);
while (*data)
{
LCDWriteData(*data);
data++;
}
}
#define ADDR_A (*(volatile unsigned short *)(0xFFB0))
#define ADDR_B (*(volatile unsigned short *)(0xFFB2))
u16 Read_AD(u8 channel)
{
u8 dummy;
u16 adval;
dummy = ADCSR;
ADCSR = 0x00;
ADCSR |= (0x20 + (channel &0x01));
while (!(ADCSR & 0x80));
if (channel & 0x01)
else adval = ADDR_A;
return adval>>6;
}
u8 Line0[]
= " A/D#0=P1=0x
u8 Line1[]
= " A/D#1=P2=0x
// convert int to ASCII-HEX
void ShowHexValue(u16 code, u8 line)
Issue 0.2
// inits the LCD
// Set RS+RW = Output
// Set EN = Output
// Set DDR to Output
// select line
// dummy read
// reset A/D
// start A/D, channel 0 or 1
// wait conversion end
adval = ADDR_B;
\0";
\0";
Page 42
// read A/D-value
07/2002

Advertisement

Table of Contents
loading

This manual is also suitable for:

H8/tiny 3664fHteb1

Table of Contents