Exemple #1
0
void fm_gets(unsigned char *s, unsigned long len)
{
  unsigned long head, tail;

  head = fm_head;
  tail = fm_tail;

  if(head != tail)
  {
    FM_CS_ENABLE();
    ssi_write(FM_READ);
    ssi_write(tail>>16);
    ssi_write(tail>>8);
    ssi_write(tail);
    ssi_wait();
    while(len--)
    {
      if(head != tail)
      {
        *s++ = ssi_readwrite(0xff);
        if(++tail >= fm_bytes)
        {
          tail = 0;
        }
      }
      else
      {
        break;
      }
    }
    FM_CS_DISABLE();
    fm_tail = tail;
  }
Exemple #2
0
void ssi_off(void)
{
  ssi_wait();

  GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_5); //SCK, SI = gpio
  GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_5, 0); //SCK, SI = low

  return;
}