'2013/04/08'에 해당되는 글 3건

  1. 2013.04.08 WAT-AVR128_PLUS 모듈
  2. 2013.04.08 WAT-LED
  3. 2013.04.08 WAT-AT45DB SPI 데이터 플래시

WAT-AVR128_PLUS 모듈

AVR키트 2013. 4. 8. 17:21




WAT-AVR128 모듈과
확장 보드의 기능을 합친 모듈 입니다.



WAT-AVR128 보드 얼.pdf

WATAVR128_manual.pdf

AVR128 모듈을 다른 보드에 연결하여 사용할수 있는 확장 보드입니다.



PORTA,
PORTB,
PORTC,
PORTD,
PORTE,
PORTF

등의 포트를 다른 보드와 연결해서 사용할 수 있습니다.

 

 

 

 

 

 

 

 

쇼핑몰에서 구매하기

 

 

 

 

 

Posted by WhiteAT
,

WAT-LED

전자 키트 2013. 4. 8. 16:15
 


WAT-AVR128 모듈과 연결하여 LED ON/OFF 실험을 할수 있는 모듈입니다.

 

 

 



 

 

LED 를 타원 형태로 배치하여 LED 회전(정방향, 역방향), 이동 등의 다양한 실험을 할 수 있습니다.

 

 

 

 

/*

  EX_01_01.c

 

  PORTE에연결된LED 무한히 회전하기

 

  Main Clock : 11.0592Mhz 

 

  AVRStudio  4.18

  2012-01-08

 

  홈페이지:  http://whiteat.com

  쇼핑몰:    http://kit128.com

 

*/

 

#include <avr/io.h>

 

// 일정시간딜레이

void Delay()

{

         register unsigned long i;

         for(i = 0; i < 300000; i++)

         {

                  asm volatile(" PUSH  R0 ");

                  asm volatile(" POP   R0 ");

                  asm volatile(" PUSH  R0 ");

                  asm volatile(" POP   R0 ");

                  asm volatile(" PUSH  R0 ");

                  asm volatile(" POP   R0 ");

                 asm volatile(" PUSH  R0 ");

                 asm volatile(" POP   R0 ");

                 asm volatile(" PUSH  R0 ");

    asm volatile(" POP   R0 ");     

         }

}

 

int main()

{

         DDRE = 0xFF; // ALL OUTPUT

         PORTE = 0xFE;         // PORTE.0    LED ON

 

         while(1)

         {

                  Delay();

 

                  if(PORTE == 0x7F)    // 마지막LED ON 되었다면.

                  {

                           // 처음LED ON 되게

                           PORTE = 0xFE;         // PORTA.0    LED ON

                  }

                  else                               // 그렇지않다면

                  {

                           PORTE <<= 1;         // 한칸이동한후

                           PORTE |= 1;            // 마지막LED OFF 되게

                  }

         }

}

 

 


Posted by WhiteAT
,

 

 

 

 

AT45DB041D 데이터 플래시를 SPI 로 구동할 수 있는 모듈입니다.

MCU 의 구동에 추가적인 메모리가 필요할 때 SPI 기능을 실험할 때

적합한 모듈입니다.

WAT-AVR128 에 바로 연결하여 사용할 수 있습니다.

 

 


 






ATMEGA128 용 소스코드

 

/*

         EX_06_01.c

 

         SPI DataFlash 읽고쓰는예제입니다.

 

  SPI 를초기화한후

  데이터를쓰고읽은후

  쓰고읽은데이터가동일한지확인합니다.

 

         AVRStudio  4.18

         2013-03-08

 

 

*/ 

 

#include <stdio.h>

 

#include <avr/io.h>

#include "WAT128.h"

#include "AT45DB161D.h"

 

 

BYTE Data[256];   // w

BYTE ReadData[256];

 

 

int main()

{

  const BYTE BufferNum =AT45DB_BUFFER_1;

  const BYTE PageNum =4;

 

  DDRA = 0xFF;

  PORTA = 0xFF;

 

  // AT45DB SPI 초기화  

  SpiInit();

  SFlash_GetID();

 

  // 버퍼로한번써줘야한다.(중요)

  PageToBuffer(1,0);

 

  // Data 에임의의값

  for(int i=0;i<256;i++)

  {

    Data[i] = i;

  }

 

  // Data 값을버퍼에넣기

  SFlash_WriteBuffer(BufferNum,0,Data,256);

 

  // 버퍼값을페이지(실제저장할위치)에쓰기

  SFlash_BufferToPage(BufferNum, PageNum, 1);

 

 

  // 읽어올변수(ReadData)에임의의값쓰기

  for(int i=0;i<256;i++)

  {

    ReadData[i] = 0xff;

  }

 

  // 페이지데이터를버퍼로가져오기

  PageToBuffer(BufferNum,PageNum);

 

  // 버퍼데이터를ReadData로가져오기

  GetMemBuffer(ReadData);

 

  //

  for(int i=0;i<256;i++)

  {

    if(ReadData[i] != Data[i] )

    {

      while (1)

      {

        // 쓰고읽은데이터가다르다면

        PORTA = 0x55;

 

      }

    }

  }

 

  // 쓰고읽은데이터가동일하다면

  PORTA = 0xf0;;

  while(1)

  {    

  }

}       

 


Posted by WhiteAT
,