Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

EZ430-RF2500 Serial naar RF brug

Pagina: 1
Acties:

  • Juicie
  • Registratie: Maart 2007
  • Laatst online: 18-11 08:42
Beste mede tweakers,

ik heb de beschikking over een leuk TI EZ430-RF2500 ontwikkelbordje en heb de standaard codes en tutorials geheel doorlopen. Knopjes werken, ledjes knipperen, CC2500 is geïnitialiseerd en dergelijke.

http://www.ti-estore.com/...Product_Code=EZ430-RF2500

Ik wil nu proberen een COM naar RF brug te maken waardoor het mogelijk zou moeten zijn verschillende RF appraten aan te sturen. Na een dag of twee proberen en tweaken moet ik constateren dat ik niet veel vooruitgang heb geboekt. Heeft iemand van jullie ervaring met dit kitje en eventueel het maken van een COM naar RF brug.

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 29-10 06:07

Sprite_tm

Semi-Chinees

Ik denk dat het nuttiger is dat je je vraag wat specifieker maakt dan 'heeft er iemand ervaring met': waar loop je precies tegenaan? Ik heb bijvoorbeeld geen enkele ervaring met je specifieke boardje, maar wel ooit wat met de CC2500 geprutst; at the moment kan ik echter niets met je startpost.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


  • Juicie
  • Registratie: Maart 2007
  • Laatst online: 18-11 08:42
Okey mijn excuses :) eigenlijk is het grote probleem dat ik niet kan controleren of iets werkt. Ledjes kan ik zien branden, knopje wordt op gereageerd, temperatuur meter werkt. Maar ik zie niet of er iets uitgezonden wordt via de CC2500.

Ik gebruik de "MSP430 Interface to CC1100/2500 Code Library"
http://focus.ti.com/gener....tsp?abstractName=slaa325

Ook lukt het mij momenteel (nog) niet om de MSP430 te laten reageren op een commando vanaf de COM poort. Ik heb wel een interrupt die een ledje zou moeten laten flikkeren als er iets binnen komt op de COM poort maar er gebeurt niks.

[ Voor 13% gewijzigd door Juicie op 17-10-2008 19:53 ]


  • Cassettebandje
  • Registratie: Juli 2002
  • Laatst online: 20-11 16:21

Cassettebandje

SA-C90 TDK

Kun je niet beginnen met of afkijken van de bijgeleverde thermometer demo (http://www.ti.com/lit/zip/slac139)?

  • Juicie
  • Registratie: Maart 2007
  • Laatst online: 18-11 08:42
Kleine update, de communicatie met de COM-poort verloopt momenteel vlekkeloos. Daarbij kan ik er er voor zorgen op een gewenst moment de buffer via de CC2500 uitgezonden zou moeten worden. Hij blijft echter nu in de RFSendPacket(RcData, sizeof(RcData)); functie hangen zonder meer te reageren.

Ben begonnen met het ontleden van de thermometer demo, maar deze maakt gebruik van simpliciti. Dit protocol is echter niet bruikbaar voor het door mij geplande gebruik.

code:
1
2
3
4
5
6
7
8
9
10
11
void SendData(void)
{
  TI_CC_SPIStrobe(TI_CCxxx0_STX);
  
  RFSendPacket(RcData, sizeof(RcData));         // Send value over RF
  
  P1IFG &= ~(TI_CC_SW1);                     // Clr flag that caused int
  P2IFG &= ~TI_CC_GDO0_PIN;                  // After pkt TX, this flag is set.

  TI_CC_SPIStrobe(TI_CCxxx0_SRX);
}


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
  RcByte = UCA0RXBUF;                       // Get RXed character
    
  if(RcByte == '!')
  {
    SendData();
    RcCount = 0;
    memset(RcData, 0, sizeof(RcData));
  }
  RcData[RcCount] = RcByte;
  RcCount ++;
}


Verder heb ik in de main de volgende CC2500 functies staan ter initialisatie:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  TI_CC_SPISetup();                         // Initialize SPI port

  TI_CC_PowerupResetCCxxxx();               // Reset CCxxxx
  writeRFSettings();                        // Write RF settings to config reg
  TI_CC_SPIWriteBurstReg(TI_CCxxx0_PATABLE, paTable, paTableLen);//Write PATABLE

  // Configure ports -- LEDs, GDO0 to RX packet info from CCxxxx
  TI_CC_LED_PxDIR = TI_CC_LED1 + TI_CC_LED2; //Outputs
  TI_CC_GDO0_PxIES |= TI_CC_GDO0_PIN;       // Int on falling edge (end of pkt)
  TI_CC_GDO0_PxIFG &= ~TI_CC_GDO0_PIN;      // Clear flag
  TI_CC_GDO0_PxIE |= TI_CC_GDO0_PIN;        // Enable int on end of packet
  
  
  TI_CC_SPIStrobe(TI_CCxxx0_SRX);           // Initialize CCxxxx in RX mode.
                                            // When a pkt is received, it will
                                            // signal on GDO0 and wake CPU