Exemplo n.º 1
0
void telemetryTransmitBuffer(uint8_t * buffer, uint32_t size)
{
  txPdcUsart(buffer, size);
}
Exemplo n.º 2
0
// the loop function runs over and over again forever
void checkM64()
{
	uint8_t count ;
//	int16_t byte ;

	poll_mega64() ;
	
	if ( M64SetContrast )
	{
		if ( TxBusy == 0 )
		{
			uint8_t buf[2] ;
			buf[0] = M64Contrast ;
			buf[1] = 50 ;	// Brightness - unused
			count = fillTxBuffer( buf, 0x13, 2 ) ;
			txPdcUsart( TxBuffer, count ) ;
			M64SetContrast = 0 ;
		}
	}
	
	if ( SendDisplay )
	{
		if ( TxBusy == 0 )
		{
			count = fillTxBuffer( M64Display, 0, 64 ) ;
			DisplaySequence = 0x81 ;
			txPdcUsart( TxBuffer, count ) ;
			SendDisplay = 0 ;
		}
	}

//	if ( ReadingEeprom == 1 )
//	{
//		if ( StartDelay )
//		{
//			if ( EepromAddress < 4096 )
//			{
//				if ( TxBusy == 0 )
//				{
//					uint8_t temp[2] ;
//					temp[0] = EepromAddress ;
//					temp[0] = EepromAddress >> 8 ;
//					// 0x01, 0x12, 16 bit address, 0x01  - send 32 bytes EEPROM data @ address
//					count = fillTxBuffer( temp, 0x12, 2 ) ;
//					ReadingEeprom = 2 ;
//					txPdcUsart( TxBuffer, count ) ;
//				}
//			}
//			else
//			{
//				ReadingEeprom = 0 ;	// Done
//			}
//		}
//	}
	 
	if ( DisplaySequence )
	{
		
		if ( TxBusy == 0 )
		{
			count = fillTxBuffer( &M64Display[64*(DisplaySequence & 0x0F)], DisplaySequence & 0x0F, 64 ) ;
			txPdcUsart( TxBuffer, count ) ;
			DisplaySequence += 1 ;
			if ( DisplaySequence > 0x8F)
			{
				DisplaySequence = 0 ;
				if ( ResendDisplay )
				{
					memcpy( M64Display, DisplayBuf, sizeof(M64Display) ) ;
					ResendDisplay = 0 ;
					SendDisplay = 1 ;
				}
			}
		}
	}



	 
//	while ( ( byte = get_fifo64( &mega64_fifo ) ) != -1 )
//	{
//		processSlaveByte( byte ) ;
//		if (SlaveActionRequired)
//		{
//			SlaveActionRequired = 0 ;
//			if ( SlaveType == 0x80 )
//			{
//				byte = SlaveTempReceiveBuffer[0] ;
//				Buttons = byte & 0x7E ;
//				Trims = SlaveTempReceiveBuffer[1] ;
//				Switches = SlaveTempReceiveBuffer[2] | ( ( byte & 1 ) << 8 ) ;
//				Analog[0] = SlaveTempReceiveBuffer[3] | ( SlaveTempReceiveBuffer[4] << 8 ) ;
//				Analog[1] = SlaveTempReceiveBuffer[5] | ( SlaveTempReceiveBuffer[6] << 8 ) ;
//				Analog[2] = SlaveTempReceiveBuffer[7] | ( SlaveTempReceiveBuffer[8] << 8 ) ;
//				Analog[3] = SlaveTempReceiveBuffer[9] | ( SlaveTempReceiveBuffer[10] << 8 ) ;
//				Analog[4] = SlaveTempReceiveBuffer[11] | ( SlaveTempReceiveBuffer[12] << 8 ) ;
//				Analog[5] = SlaveTempReceiveBuffer[13] | ( SlaveTempReceiveBuffer[14] << 8 ) ;
//				Analog[6] = SlaveTempReceiveBuffer[15] | ( SlaveTempReceiveBuffer[16] << 8 ) ;
//				Analog[7] = SlaveTempReceiveBuffer[17] | ( SlaveTempReceiveBuffer[18] << 8 ) ;
//			}
//			else if ( SlaveType == 0x81 )	// EEPROM data
//			{
//				uint16_t address ;
//				uint32_t i ;
//				address = SlaveTempReceiveBuffer[0] | ( SlaveTempReceiveBuffer[1] << 8 ) ;
//				for ( i = 2 ; i < 34 ; i += 1 )
//				{
//					EepromImage[address++] = SlaveTempReceiveBuffer[i] ;
//				}
//				EepromAddress += 32 ;
//				ReadingEeprom = 1 ;
//			}
//		}
//	}
//  wdt_reset() ;
}