Ejemplo n.º 1
0
int main(void)
{

//	_TRISD = 0;
    pinIO();
    serialSetup();
    pwmSetup();
    setupA2D();
    timerSetup();




    //infinete loop in which we count
    while(1)
    {


    } //remain here forever, never end the main function.

    return 0; //we should never really return
}
Ejemplo n.º 2
0
/**
 * Main function.
 */
void main( void ) {

	// set B0, B1, and B2 to output
	set_bit( STATUS, RP0 );

	clear_bit( TRISB, 0 );
	clear_bit( TRISB, 1 );
	clear_bit( TRISB, 2 );
	
	clear_bit( STATUS, RP0 );

	
	serialSetup();
	
	// testing serial
	/*while( 1 ) {
		setBufferSize( 23 );
		writeBuffer( "Testing Testing Testing" );
		writeNewLine();
		}
	*/
	
	//writeNewLine();
	//waitForPrompt();
	delay_ms( 100 );

	writeNewLine();
	delay_ms( 20 );
	writeNewLine();
	delay_ms( 20 );
	writeNewLine();
	delay_ms( 20 );

	// turn the power on
	setPower( 1 );

	// wait for one secont for the power to come up
	delay_s( 1 );

	setInitialBlanking();
	delay_ms( 20 );
	
	while( 1 ) {
		tooClose = 0;
		tooCloseLeft = 0;
		tooCloseRight = 0;

		// for each group of units
		for( groupIndex = 0; groupIndex < numGroups; groupIndex++ ) {

			// for each unit in this group
			for( inGroupIndex = 0;
				 inGroupIndex < numInGroup; inGroupIndex++ ) {

				unitIndex = groupIndex * numInGroup + inGroupIndex;

				echoTime = fireSonarUnit( unitIndex + 1 );

				if( ( echoTime != 0 ) && ( echoTime < minEchoTime ) ) {
					if( groupIndex == 0 ) {
						tooCloseLeft = 1;
						}
					else {
						tooCloseRight = 1;
						}
					}
				}
			}

		tooClose = tooCloseLeft || tooCloseRight;
	
		if( tooClose ) {
			set_bit( PORTB, 0 );
			}
		else {
			clear_bit( PORTB, 0 );
			}
		
		if( tooCloseLeft ) {
			set_bit( PORTB, 1 );
			}
		else {
			clear_bit( PORTB, 1 );
			}

		if( tooCloseRight ) {
			set_bit( PORTB, 2 );
			}
		else {
			clear_bit( PORTB, 2 );
			}
		
		}
	
	}
Ejemplo n.º 3
0
int main()
{
	screenInit();

	screenPutString("BIOS Terminal v1.0 build " BUILD "\r\n(C) Copyright 2004 Wojtek Kaniewski <*****@*****.**>\r\nPress F12 to configure serial port\r\n\r\n");

	serialSetup();

	for (;;) {

#ifdef DEBUG_SERIAL
		byte x, y, a;

		x = screenX; y = screenY; a = screenAttr;
		screenX = 30; screenY = 24; screenAttr = 7*16;
		screenCursorNoUpdate = 1;
		screenPutString(" s:");
		screenPutHex((char)((char) serialRxHead - (char) serialRxTail));
		screenPutString(" i:");
		screenPutHex(portRead(0x21));
		screenPutString(" t:");
		screenPutHex(serialRxTail >> 8);
		screenPutHex(serialRxTail &255);
		screenPutString("/h:");
		screenPutHex(serialRxHead >> 8);
		screenPutHex(serialRxHead &255);
		screenPutString(",");
		screenPutHex(portRead(serialPort+1));
		screenPutString(",");
		screenPutHex(serialInterruptLast); // +2
		screenPutString(",");
		screenPutHex(portRead(serialPort+3));
		screenPutString(",");
		screenPutHex(portRead(serialPort+4));
		screenPutString(",");
		screenPutHex(portRead(serialPort+5));
		screenPutString(",");
		screenPutHex(portRead(serialPort+6));
		screenPutString(" k:");
		screenCursorNoUpdate = 0;
		screenX = x; screenY = y; screenAttr = a;

		screenCursorUpdate();
#endif // DEBUG_SERIAL

		if (keyboardPressed()) {
			char *seq = vtGetChar();

			while (*seq) {
				serialPutChar(*seq);
				seq++;
			}
		}

		while (serialDataReady()) {
			char ch = serialGetChar();

			vtPutChar(ch);
		}
	}
}