Esempio n. 1
0
// For Single Digits with Error and Neutral Displays
void redrawGearPos(screenItemInfo * item, volatile dataItem * data, double currentValue){
	if(data->value == currentValue){
		return;
	}
	fillRect(item->x, item->y, item->size, item->size * 1.75, backgroundColor);
	if(data->value == 0){
		sevenSegment(item->x, item->y, item->size, foregroundColor, SEVEN_SEG_N);
	}
	else if(data->value == 7){
		sevenSegment(item->x, item->y, item->size, foregroundColor, SEVEN_SEG_E);
	}
	else{
		sevenSegmentDigit(item->x, item->y, item->size, foregroundColor, data->value);
	}
}
Esempio n. 2
0
void pocketcalculator(std::istream &in, std::ostream &out) {
	std::stringstream result;
	unsigned scale{3};

	while (in) {
		result = calc(in);
		if(!in.eof()) {
			sevenSegment(result, scale, out);
		}
	}

}
Esempio n. 3
0
int main(void)
{
  //Makes PORTB as Output
  DDRB = 0xFF; 
  
  //-----Event Loop-----
  while(1) 
  {
    for (int i=0;i<10;i++)
	{
	segOff();
    sevenSegment(i);
	_delay_ms(100);
	}
  }
}