E D R , A S I H C RSS

ATmega163

ATmega 163 8bit AVR Microcontroller


Features


  • 하이 퍼포먼스 , 로우 전력 - 그래봤자 8 BIT
    • 130 Powerful Instruction - RISC MPU
    • 32 X 8 범용 레지스터
    • 8 MHz 클럭 - 와~ 열라 빠르다!
    • On-chip 2 cycle Multiplier

  • 비휘발성 프로그램 과 데이타 메모리

  • 자체 프로그래밍 가능한 플래쉬 메모리
    • 16 KB 의 Boot Block ( 256 - 2K Bytes )
    • 512 Bytes EEPROM
    • 1024 Bytes SRAM

  • 주변 장치 기능
    • 2 개의 8-bit Timer/Counters
    • 1 개의 16-bit Timer/Counters
    • Real Time Clock
    • Tree PWM Channels
    • Programmable Serial UART
    • Analog Comparator
    • Master / Slave SPI Serial Interface
    • Byte - oriented 2-wire Serial Interface

이 MPU 의 용도


  • MP3 플레이어
  • 임베디드 시스템
  • 마이크로 로봇
  • 산업용 임베디드 시스템

프로그래밍에 필요한 유틸리티


  • AVR - GCC
  • AVR - Studio
  • Pony Prog

  • 웨비 사운드에서 구한 ATmega 163 L 보드에 관한 Testing


  • 먼저 웨비 사운드에서 ATmega 163L E board 를 구한다. - ps 난 판매 사원이 아니다.. 더 좋은 것이 있으면 ..그걸..
  • ISR 모듈과 함께 Board에 장착한다.
  • 용산 가서 9 pin 짜리 Serial Port 잭과 5.5volt 어덥터에 끼울 것을 준비한다.
  • 그리고 납땜질용 인두와 실납을 준비후 납땜 시작.
  • 9 pin 에서 TX는 2번 RX 3번 접지는 5번에 연결 시킨다.
  • 5.5 Volt 어덥터는 안쪽이 + 극 바깥쪽이 -극이라는 점을 유의..
  • 이렇게 까지 연결하고 컴퓨터에 시리얼 케이블을 COM1 에 연결.
  • ISR 모듈을 COM2에 연결하고
  • 전원 어뎁터를 연결하면 LED가 켜지며 TEST를 위한 준비는 끝난다.
  • 이후 새롬 데이타맨에서 모뎀에 의한 연결로 SETTING하고 baud rate를 19300(ㅠㅠ) 로 설정 후 reset 버튼을 누르면

    WAVY SOUND XXXXXX TEST - 란 식의 명령어가 뜬다. 그럼 하드웨어 TEST 완료
  • 그럼 소프트웨어 테스팅을 써볼까?

  • AVR GCC Programming


  • AVR-GCC는 AVR에서 Cross Compile을 위해 만든 공짜 컴파일러
  • 방법
    • 설치 방법

      c:\> 에서 avrgcc 폴더로 옮기고
      c:\avrgcc>에서 install을 실행 시킨 후 바탕화면의 avr-gcc 배치파일을 이용해 도스창을 열어서 쓴다.
    • Makefile 사용법


  • ~cpp 
    # Simple Makefile
    # Volker Oth (c) 1999
    
    include $(AVR)/include/make1
    
    ########### change this lines according to your project ##################
        HEADER   = ../Include
        MYLIBDIR = 
        GCCLIB   = $(AVR)/lib/gcc-lib/avr/2.97/avr3
        NEWLIB   = $(AVR)/lib
    
    #INCDIR means .h file search path
        INCDIR = . -I$(HEADER)
    #---------------------------------------------- 
    
    #put the name of the target mcu here (at90s8515, at90s8535, attiny22, atmega603 etc.)
        MCU = atmega163
        
    
    #put the name of the target file here (without extension)
        TRG = test
    
    #put your C sourcefiles here 
        SRC =   $(TRG).c		\
                $ utils.c		\
                $ global.c		\
                $ uart.c
    
    #put additional assembler source file here
        ASRC =
    
    #additional libraries and object files to link
        LIB = $(LIBDIR)/libc.a $(GCCLIB)/libgcc.a $(NEWLIB)/libbfd.a $(NEWLIB)/libiberty.a
    
    #additional includes to compile
        INC = 
    
    #INCDIR means .h file search path
        INCDIR = . -I$(HEADER)
    
    #compiler flags
        CPFLAGS = -g -O3 -Wall -Wstrict-prototypes -Wa,-ahlms=$(<:.c=.lst)
    
    #linker flags
        LDFLAGS = -Wl,-Map=$(TRG).map,--cref
    
    ########### you should not need to change the following line #############
    include $(AVR)/include/make2
              
    ###### dependecies, add any dependencies you need here ###################
    all : $(TRG).siz
    
    $(TRG).o :                  \
        $ config.h              \
        $(TRG).c
    
    $(TRG).siz : $(TRG).elf
    	avr-size --format=sysv $(TRG).elf > $(TRG).siz
    	avr-size --format=sysv $(TRG).elf
    
    wr :    $(TRG).rom
    	uisp --STK200 --erase
    	uisp --STK200 --upload $(TRG).rom
    
    erase :
    	uisp --STK200 --erase
    
    

    • avr_gcc 사용법

      • AVG-GCC AVR-GCC... ㅠㅠ 오타다.

    우우.. 정직아 내껀 왜 안올라가냐.. rom 까지 만들었는데..--; - 떡

    device missing or unknown device 라고 나온다. ponyprog 에서 장치를 꼭 163 L 로 해야하나? 163 밖에 없던데..

    Valid XHTML 1.0! Valid CSS! powered by MoniWiki
    last modified 2021-02-07 05:22:23
    Processing time 0.0061 sec