view src/cs/services/fcbm/fcbm_textout.c @ 261:841a848ba762

SPI SWE: clear any pending boot-time interrupts in spi_init() Charger plug/unplug hw logic in the Iota ABB has no built-in debouncing, thus electrical contact bounce on the charging power connection interface produces a lot of charger plug/unplug interrupts. When we boot in charging mode (charging power present at boot time and is presumably the cause of Switch-ON), some bounce may occur between the initial Iota Switch-ON action and Calypso firmware booting. By clearing any accumulated ITSTATREG interrupts on boot, we prevent these pre-boot interrupts from generating charger plug/unplug events to FCHG, which would upset smooth from-boot charging.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 14 May 2021 02:49:05 +0000
parents 35474f3a1782
children
line wrap: on
line source

/*
 * In this module we are going to implement functions for
 * displaying FCBM text strings on the LCD, abstracting
 * the messy Condat display driver for our purposes.
 */

#include "rv/rv_general.h"
#include "fcbm/fcbm_func_i.h"
#include "typedefs.h"
#include "dspl.h"

#ifdef LSCREEN
  #define	FONT_HEIGHT	16
  #define	FAR_END_X	175
#else
  #define	FONT_HEIGHT	8
  #define	FAR_END_X	95
#endif

void fcbm_display_init(void)
{
	dspl_Init();
	dspl_set_char_type(DSPL_TYPE_ASCII);
}

void fcbm_display_line(UINT16 row, char *text)
{
	dspl_Clear(0, row * FONT_HEIGHT, FAR_END_X,
		   (row + 1) * FONT_HEIGHT - 1);
	dspl_ScrText(0, row * FONT_HEIGHT, text, TXT_STYLE_NORMAL);
}