[AVR]/ATTiny2012.12.14 15:25

[ATtiny10 EVM] 6핀초소형 AVR 보드 제작

[ATtiny10 EVM] 6핀초소형 AVR 보드 제작

 


타입의 초소형 MCU시장에 AVR도 들어왔다. Microchip사의 PIC10시리즈가 가장 작았는데 동일한 타입에 성능은 더 좋은 MCU를 출시 했다.


ATtiny10의 특징은 아래와 같다.

512/1024 Bytes FLASH
32 Bytes SRAM
12 MIPS Throughput at 12 MHz
One 16-bit Timer/Counter with Prescaler and Two PWM Channels
4-channel, 8-bit ADC
Idle Mode : 25uA at 1MHz and 1.8V
Power-down Mode: < 0.1uA at 1.8V

 

 

 

 


[SS-Type EVM] 확장 보드에 연결하여 테스트가능 하다.









[ATtiny10 EVM] 회로도

 

 

 

 

 

 

 

Posted by nexp

댓글을 달아 주세요

[AVR]/Mega1282012.05.03 21:20

AMega128 Ethernet Test 보드 - 테스트 하기

AMega128 Ethernet Test 보드 - 테스트 하기

 

 

 

 소스코드
테스트 소스코드 는 TCP 서버 테스트를 위한 예제코드

 


 

//-----------------------------------------------------------------------------
//수신데이터 처리
void EthernetTest(unsigned char *pRcvBuffer, unsigned int len)
{
 unsigned int i;

 DebugPrint("Read Data[%d]\r\n", len);
 
 for(i=0;i<len;i++)
 {
  //if(i%16==0)DebugPrint("\r\n");
  DebugPrint("%c", pRcvBuffer[i]);
 }

 DebugPrint("\r\nReceive OK!\r\n");

 //-----------------------------------------------------------------------------

 

 


 

USB2UART 를 위해 USB를 연결하고, 랜 캐이블을 연결한다.

  

 

CP2012 칩의 드라이버 파일은 아래 링크에서 최신파일을 받을 수 있다.

  CP210x_VCP_Win2K.exe

 http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

 

 

 

펌웨어 다운로드 하고 USB 연결후 하이퍼 터미널(보레이트 115200bps)에 아래와 같이 레지스터 정보를 표시되면 정상동작을 확인할 수 있다.

 

 

코드상에서 보드의 IP를 설정할 수 있다. 여기서는 192.168.0.100 , Port 5000 으로 설정되어 있다.

 // MY Source IP     : 192.168.0.100
#define MY_SOURCEIP {192,  168, 0,  100}

 

// MY Listen Port  : 5000

#define MY_LISTEN_PORT 5000      

 

 


 

테스트용 PC프로그램

PC측 호스트 프로그램은 TCP루프백 테스트를 할 수 있는 AX 플그램을 사용한다.

 


 

 

기본 테스트하기

1) TCP 연결

 

 

보드 IP 192.168.0.100, 5000으로 접속

 

 

정상적으로 접속되면 메세지가 출력된다.

 

 

 

테스트 메세지 전송

 

 

테스트로 100개의 데이터 전송

 

 

 

수신된 데이터 확인

하이퍼 터미널에서 수신된 데이터를 확인 할 수 있다.

 

 

 

 

 

 

Posted by nexp

댓글을 달아 주세요

[AVR]/Mega162012.04.22 17:37

[ATMega16-SM EVM] ADC 테스트 - TFT LCD 그래프 표시

[ATMega16-SM EVM] ADC 테스트 - TFT LCD 그래프 표시

 

 

 

 

ATMega16-SM EVM 보드에서 ADC포트는 PORTA PA7~PA0(ADC7~ADC0)에 연결되어 있고 가변저항으로 ADC값을 확인할 수 있다.

 

 

 

AVR ATMega16 ADC 드라이버 코드

ATMega32 의 경우 ADCSR레지스터가 ADCSRA로 변경되었다.

//------------------------------------------------------------------------------
// Function Routine
//ADC Initialize
void AdcInit(void)
{
 ADMUX = 0;
    ADCSR = ADC_ENABLE | ADC_PRESCALE_DIV32;
}

//Read ADC Value
unsigned int AdcRead(unsigned char port)
{
 unsigned int value = 0;

 ADMUX = port&7;
 ADCSR |= ADC_START_CONVERSION;

 while(!(ADCSR & ADC_COMPLETE));

 value = ADCL;
 value = (ADCH<<8) | value;

 return value;
}
//------------------------------------------------------------------------------

 

 

 

 

AVR ATMega16 ADC 테스트 예제코드

 

int main(void)
{
 char c;
 unsigned int adc;
 unsigned char buf[8];
 
 SystemInit();
 
 Led1Init();
 Led1On();

 //UART Init
 DebugInit(BAUD_115200);
 DebugPrint("ADC Test Program\r\n");
 
 AdcInit();

 while(1)
 {

  adc =  AdcRead(7);

  buf[0] = (adc>>8);
  buf[1] = (adc&0xFF);

  adc =  AdcRead(6);

 

  buf[2] = (adc>>8);
  buf[3] = (adc&0xFF);

  SendPacket(SRL_CMD_PLOTY, buf, 4);

 

  Delay(20);
 }
}

 

 

 

AtMega32 ADC 테스트 동영상 - TFT LCD그래프 표시

 

Posted by nexp

댓글을 달아 주세요

[AVR]/AT90USB2012.01.23 18:00

[AT90USB1287-EX] 보드 제작 - AT90USB1287, ATMeaga128, 테스트 보드 제작

[AT90USB1287-EX] 보드 제작 - AT90USB1287, ATMeaga128,  테스트 보드 제작


AT90USB1287, ATMega128을 이용하여 [W5100 EVM] 이더넷,  [MP3 Module] (VS1033),  표준 8bit Mode [TFT-LCD MODULE] 등을 테스트 할 수 있는 보드를 제작했다.

기본적으로 AVR의 주요 기능을 테스트 할 수 있고, 주요 기능핀들은 확장 핀으로 할당되어 있다.
보드에는 USB2UART(CP2101), LED, CdS, 온도센서, 압력센서, IR 리모콘, MIC, Switch, 32kByte SRAM 등이 있어 AVR의 기본 기능을 테스트 할 수 있다.




AT90USB1287을 이용하면 USB Host기능을 테스트 할 수 있다. 메모리 스틱을 이용하여 MP3파일 출력이나 이더넷 FTP기능을 테스트 할 수 있다.




확장포트를 이용하여 TFT-LCD 모듈을 연결하여 테스트 가능하다.






표준 시리얼 핀맵을 이용해 USB2UART, Zigbee2UART, Bluetooth2UART, WiFi2UART 모듈을 연결할 수 있다.









Posted by nexp

댓글을 달아 주세요

[AVR]/AVR_EVM2011.10.16 12:09

AVR 개발환경 설정 - 무료 개발툴(WINAVR + AVR Studio) 이용

AVR 개발환경 설정 - 무료 개발툴 이용


개발 환경 설치
AVR 개발 환경 구축을 하기 위해 필요한 파일은 AVR을 컴파일 할 수 있는 WINAVR과 IDE 및 프로그래밍 툴인 AVR Studio 이고 아래링 크에서 다운 로드 가능하다.
1) WINAVR 다운로드 : http://winavr.sourceforge.net/download.html
2) AVR Studio 다운로드 : http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725

각 파일의 최신 버전을 다운로드 받아 설치한다. (별다른 설정 없이 각 파일을 디폴트 디렉토리에 설치하면 된다.)



IDE환경 설정 및 기본 예제 컴파일

프로그램 설치가 완료 되었다면 AVRStudio를 실행한다.

새로운 프로젝트 생성
메뉴에서 [project->Nwe Project] 를 클릭하여 새로운 프로젝트파일을 생성한다.

 

 

Project Tyoe를 AVR GCC로 설정하고(C언어를 이용하기 위해), 원하는 폴더에 원하는 프로젝트명으로 프로젝트 파일을 생성한다.

 

 

디버깅 툴 및 디바이스 설정

 

 

새로운 프로젝트 파일이 생하면 기본적인 환경설정이 이루어 지는데 메뉴에서 [Edit Configuration Option]을 이용해서 디바이스를 다시 설정하거나 컴파일 옵션등을 변경할 수 있다.

 

 

간단히 LED O/Off하는 예제를 작성해서 메뉴에서 [Build -> Build] 를 클릭하면 에러 없이 컴파일되는 것을 확인 할 수 있다.

 

 



프로그램 다운로드

컴파일이 완료 되었다면 실제로 보드에 다운로드 해서 테스트 해볼 수 있다.

메뉴에서 [Tools -> Program AVR -> Connect]를 클릭해서 다운로드 툴을 선택한다. (여기서는 AVRISP mkii를 이용한다.)

 

 

한번 설정하면 다음부터는 AVRISP로 바로 들어갈 수 있다.

먼저 [Main]탭에서 디바이스를 선택한다. 

 

 

[Fuses]탭에서 적절한 Fuses 비트를 선택한다.

여기서는 CKDIV8를 선택 해지하고, SUT_SKCSEL 을 8Mhz 이상으로 선택한다.

 

 

최종적으로 [Program] 탭에서 컴파일 된 hex파일을 선택하고 [Program] 을 클릭하면 다운로드 되는것을 확인 할 수 있다.

 

 



참고

LockBit설정

AVR에 프로그램 후에 프로그램된 내용을 확인할 수 없도록 Lock을 설정할 수 있다. 양산품이라면 보드의 프로그램 내용을 보호하기 위해 설정이 필요하다.

 

 

 

TIP

AVR Studio의 버그? 인지 몰라도 프로젝트에 파일을 추가하면 절대 경로로 잡히는데...

파일이 많아지고 여러폴더에서 링크하거나 다른 컴퓨터로 복사해서 다른 폴더에서 실행하면 경로를 잡지 못해서 에러가 발행하는데..

프로젝트 파일인 *.asp 파일을 열어서 절대 경로를 삭제 하거나 상대 경로로 설정해 주면 이런 문제를 해결 할 수 있다.

Posted by nexp

댓글을 달아 주세요