Beispiel #1
0
void serial_set_up()
{
	serial_configure_baud_rate(SERIAL_COM1_BASE, 1);
	serial_configure_line(SERIAL_COM1_BASE);
	serial_configure_buffers(SERIAL_COM1_BASE);
	serial_configure_modem(SERIAL_COM1_BASE);
}
Beispiel #2
0
/* serial_initialize:
 * Sets up the serial port
 * base: the serial port to initialize
 */
void serial_initialize(unsigned int base){
  //Set Serial baud rate divisor to 3 (38400 baud)
  outb(base + 1, 0x00);    // Disable all interrupts
  serial_configure_baud_rate(base, 3);
  serial_configure_line(base);
  serial_configure_buffers(base);
  serial_configure_modem(base);
}
Beispiel #3
0
int serial_write(char *buf, unsigned short com) {
	serial_configure_baud_rate(com, 2);
	serial_configure_line(com);
	while(*buf != 0) {
		if((serial_is_transmit_fifo_empty(com) & 0x20) == 0x00)
			continue;
		outb(SERIAL_DATA_PORT(com), *buf);
		buf++;
	}
	return currPos;
}
Beispiel #4
0
void serial_init() 
{
#if 0
   outb(SERIAL_COM1 + 1, 0x00);    // Disable all interrupts
   outb(SERIAL_COM1 + 3, 0x80);    // Enable DLAB (set baud rate divisor)
   outb(SERIAL_COM1 + 0, 0x01);    // Set divisor to 3 (lo byte) 38400 baud
   outb(SERIAL_COM1 + 1, 0x00);    //                  (hi byte)
   outb(SERIAL_COM1 + 3, 0x03);    // 8 bits, no parity, one stop bit
   outb(SERIAL_COM1 + 2, 0xC7);    // Enable FIFO, clear them, with 14-byte threshold
   outb(SERIAL_COM1 + 4, 0x0B);    // IRQs enabled, RTS/DSR set
#else
	/*Set baud rate to be 115200*/
	serial_configure_baud_rate(SERIAL_COM1, 1);

	/* 8 bits, no parity, one stop bit, no break control */
	serial_configure_line(SERIAL_COM1, SERIAL_8N1);

	serial_configure_fifo(SERIAL_COM1, SERIAL_FIFO_14);
	serial_configure_modem(SERIAL_COM1, SERIAL_RTS_DTR);
#endif
}