'embeded'에 해당되는 글 1343건

  1. 2011.11.28 I2C 2
  2. 2011.11.18 AVR LIBC 사용자 설명서 (user manual)
  3. 2011.11.15 AVR Studio 5 + STK-500 + ATmega128 = fail 6
  4. 2011.11.12 AVR Studio 5 4
  5. 2011.10.31 nop 2
  6. 2011.10.28 ATmega64 timer 설정
  7. 2011.08.04 ARM NEON
  8. 2011.07.27 AVR Studio 에서 ELF 생성시 에러발생
  9. 2011.07.25 IAR compiler 컴파일시 이미지 크기 보기 3
  10. 2011.06.20 arm용 linux 패치
embeded/i2c2011. 11. 28. 17:54

I2C

SDA의 폭이 SCL 보다 크다는 점은
아마도.. SCL의 Rising edge에 트리거 되서 SDA의 값을 읽기 때문이 아닐까? 라는 망상중

Timing sheet


아무튼, ACK는 slave가 쓰는건데
그렇다면.. Master에서 ACK에 대한 SCL은 생성하지 않아도 되는걸려나?
흐음.. Slave->Master를 보면 ACK가  색상이 다르네 -_- 어렵다 ㅠ.ㅠ

Master -> Slave (Write)


Slave -> Master (Read)


[링크 : http://www.best-microcontroller-projects.com/i2c-tutorial.html]

[링크 : http://en.wikipedia.org/wiki/I2C]
[링크 : http://achiven.tistory.com/entry/I2c란]
[링크 : http://www.robot-electronics.co.uk/acatalog/I2C_Tutorial.html]

[링크: http://i2c2p.twibright.com/spec/i2c.pdf]

'embeded > i2c' 카테고리의 다른 글

i2c mode - tm4c  (0) 2018.04.26
i2c BUS에 pull-up, pull-down  (0) 2018.04.26
i2c bank switching  (0) 2015.09.02
i2c 정리  (4) 2012.01.10
SMBus 넌 머냐? - System Management Bus  (2) 2009.01.14
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 11. 18. 11:09
avr stuio 5를 쓸일이 없어져서 상관은 없지만..
winavr 깔기 싫은데 설명서 확인해야 하면 하니까~


[링크 : http://www.nongnu.org/avr-libc/user-manual/]

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

avr ddr pin port  (0) 2011.12.28
winAVR에서 코드 영역에 변수 선언하기  (4) 2011.12.26
AVR Studio 5 + STK-500 + ATmega128 = fail  (6) 2011.11.15
AVR Studio 5  (4) 2011.11.12
nop  (2) 2011.10.31
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 11. 15. 20:54
Tools에서 "Add STK500" 을 하면


연결되어 있는 시리얼 포트를 검색해서 붙이는데


음... 음... 응?
ATmega128이 없다 -_- 


부랴부랴 릴리즈 노트를 뒤져보니
엌? ATmega128은 STK500을 통해 지원하지 않는다 -_-

[링크 : http://www.atmel.com/dyn/resources/prod_documents/as5installer-5.0.1160-release_note.pdf]


결론 : 그냥 AVR studio 4로 돌아가자 -_-t 

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

winAVR에서 코드 영역에 변수 선언하기  (4) 2011.12.26
AVR LIBC 사용자 설명서 (user manual)  (0) 2011.11.18
AVR Studio 5  (4) 2011.11.12
nop  (2) 2011.10.31
ATmega64 timer 설정  (0) 2011.10.28
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 11. 12. 19:57
오랫만에 다운로드 하러 갔더니 으억? 5 버전이 새로나왔다.
그런데 어째.. Visual Studio 2008/2010에 통합된듯한 기운이 폴폴 풍기는데.
.net 알레르기는 여전한데 깔아야 하나 -_-




용량의 압박.txt
AVR Studio 5 installer (includes VSS and .NET)
(602 MB, revision 5.0, updated 5/11)
This installer contains AVR Studio 5, Visual Studio Shell (Isolated mode) 2010 and .NET 4.0. 

Select this installer if you need all three or are unsure of what installer to use.

NOTE:
AVR Studio 5.0 cannot be upgraded from its beta versions. Please uninstall any beta versions of AVR Studio 5.0 from Add/Remove programs and reinstall.
 

[링크 : http://www.atmel.com/microsite/avr_studio_5/]
    [링크 : http://www.atmel.com/dyn/resources/prod_documents/as5installer-5.0.1163-full.exe]

---------------------------
설치화면 캡쳐
Visual Studio Isolated Shell은 머지 -ㅁ-?


음.. VS2010 이긴한데 먼지 모르겠네 -ㅁ-?


헐~ 무당벌레가 살아있어!!
예전에 아이콘은 그림이었다면 이제는 실사같은 느낌? ㅋ


실행했더니 VS2010의 느낌이 물씬~


About을 눌러도 별 티가 안나네 -ㅁ-


프로젝트 생성하면 VS2010용처럼 뜬다.


"C Executable Project"를 선택후 OK 하면 CPU 선택화면이 나온다.



써보니 조금 무거운 느낌도 들지만
Visual Assistant X까지 포함되서 썩 나쁘진 않은듯 

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

AVR LIBC 사용자 설명서 (user manual)  (0) 2011.11.18
AVR Studio 5 + STK-500 + ATmega128 = fail  (6) 2011.11.15
nop  (2) 2011.10.31
ATmega64 timer 설정  (0) 2011.10.28
AVR Studio 에서 ELF 생성시 에러발생  (0) 2011.07.27
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 10. 31. 16:45

nop

nop는 No Operation의 약자로
실제로는 계산하지 않지만 cpu에서 delay를 주기위해 주로 사용되는 어셈블리 명령어이다.

#define nop()  __asm__ __volatile__("nop")

[링크 : http://www.triplespark.net/elec/pdev/avr/

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

AVR Studio 5 + STK-500 + ATmega128 = fail  (6) 2011.11.15
AVR Studio 5  (4) 2011.11.12
ATmega64 timer 설정  (0) 2011.10.28
AVR Studio 에서 ELF 생성시 에러발생  (0) 2011.07.27
IAR compiler 컴파일시 이미지 크기 보기  (3) 2011.07.25
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 10. 28. 17:35
Timer0 (8bit)짜리로 1mesc 만들기를 숙제로 받았다
그러고 보니 회사에서 처음 받는 숙제인듯?

아래의 코드를 참고하고, 도표를 참고하자면,
TCCR0 = 0x05;     // Prescaler 1/128
TCNT0 = 0x82;     // 125 clock tick = 1msec
TIMSK = 0x01;     // 오버플로우 인터럽트 허용
sei();                   // 인터럽트 허용

CPU가 16Mhz 일 경우,
프리스케일러를 설정함에 따라, timer 1번 발생시 시간은 TICK/msec를 참조하면 된다.
아무튼, cpu 클럭과 프리스케일러에 따라서 딱 떨어지는 시간이 있을수도 있고 없을수도 있는데
목표로 한 값이 1msec 이므로 곱해서 정수로 떨어지는 125 / 250 / 500 / 2000 회가 있지만
타이머가 8bit이므로 255를 초과할수 없고, 그로 인해 적당한 값은 1/128 프리스케일러를 설정하는 것이다.
그리고 타이머가 125번 오면 overflow 가 발생해야 하므로
TCNT0 = 255 - 125; 로 설정을 해주면 125 번의 tick 이후에 FF가 되어 타이머 인터럽트가 발생하게 된다.


2010/01/07 - [embeded/ATmega/ATtiny (AVR)] - atmega128 Timer 사용하기

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

AVR Studio 5  (4) 2011.11.12
nop  (2) 2011.10.31
AVR Studio 에서 ELF 생성시 에러발생  (0) 2011.07.27
IAR compiler 컴파일시 이미지 크기 보기  (3) 2011.07.25
PINA_Bit0 누구냐 넌! (IAR)  (0) 2011.03.31
Posted by 구차니
embeded/ARM2011. 8. 4. 16:57
NEON은 ARM 코어를 위한 SIMD 엔진이다.
ffmpeg 등이 ARM용 NEON을 지원하는듯 하다.

The ARM® NEON™ general-purpose SIMD engine efficiently processes current and future multimedia formats, enhancing the user experience.

NEON technology can accelerate multimedia and signal processing algorithms such as video encode/decode, 2D/3D graphics, gaming, audio and speech processing, image processing, telephony, and sound synthesis by at least 3x the performance of ARMv5 and at least 2x the performance of ARMv6 SIMD.

NEON technology is cleanly architected and works seamlessly with its own independent pipeline and register file.

NEON technology is a 128 bit SIMD (Single Instruction, Multiple Data) architecture extension for the ARM Cortex™-A series processors, designed to provide flexible and powerful acceleration for consumer multimedia applications, delivering a significantly enhanced user experience.  It has 32 registers, 64-bits wide (dual view as 16 registers, 128-bits wide.


[링크 : http://www.arm.com/products/processors/technologies/neon.php]
 


'embeded > ARM' 카테고리의 다른 글

winARM  (0) 2012.01.12
ARM infocenter  (0) 2011.12.10
arm용 linux 패치  (0) 2011.06.20
ARM JTAG / Wiggler + H-JTAG  (0) 2010.07.16
ARM용(암용) 툴체인, 컴파일러 - arm-linux-gcc : tool chain for ARM  (0) 2010.07.03
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 7. 27. 15:51
AVR Studio의 ISP 메뉴에서 보면
"ELF Production File Format" 이라는 항목이 존재한다.
이 ELF가 Unix/Linux의 ELF 인지는 모르겠지만 -_-
아무튼 퓨즈비트/락비트 전부 하나의 파일에 넣는 매우 편한 방법중에 하나이다.


그런데 이거 생성을 하려고 했더니...
"A Problem occured when executing the command. See the command output for more info."


"The contents of the HEX file does not fit in the selected device"


요따구로 배를짼다 -_-

이러한 문제가 발생하는 건
1. 파일 경로상에 한글이 들어간 경우(AVR Studio 4 V4.1 Build 684 에서 테스트시 한글 경로 문제 없음)
2. WinAVR이 설치된 경우/ 혹은 경로가 이상하게 들어간경우
   (C:\WinAVR-20100110\bin;C:\WinAVR-20100110\utils\bin 두개의 패스가 들어가 있는데
    WinAVR 버전 문제이거나, utils\bin 까지 잡혀서 인지는 미지수..)

머.. 안되면 둘다 해봐야 하려나?


---
흐음.. ELF인건 맞는듯 -ㅁ-
그러면.. AVR Studio에서 이걸 인식해서 따로 저장하는 거겠....지?
설마 -_- AVR 칩 자체적으로 ELF를 인식하는 것 일리는 -ㅁ-!
(머.. 어짜피 퓨즈비트도 메모리의 특정 영역으로 몇 바이트만 잡아먹는거라면 충분히 가능하겠지만..)
$ readelf -a avrstudio.elf
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Atmel AVR 8-bit microcontroller
  Version:                           0x1
  Entry point address:               0x0
  Start of program headers:          52 (bytes into file)
  Start of section headers:          180 (bytes into file)
  Flags:                             0x85
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         4
  Size of section headers:           40 (bytes)
  Number of section headers:         6
  Section header string table index: 1

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0   0  0
  [ 1] .shstrtab         STRTAB          00000000 0001a4 000028 00      0   0  0
  [ 2] .text             PROGBITS        00000000 0001cc 004852 00  AX  0   0  2
  [ 3] .fuse             PROGBITS        00820000 004a1e 000003 00  WA  0   0  1
  [ 4] .lock             PROGBITS        00830000 004a21 000001 00  WA  0   0  1
  [ 5] .signature        PROGBITS        00840000 004a22 000003 00  WA  0   0  1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x0001cc 0x00000000 0x00000000 0x04852 0x04852 R E 0x1
  LOAD           0x004a1e 0x00820000 0x00820000 0x00003 0x00003 RW  0x1
  LOAD           0x004a21 0x00830000 0x00830000 0x00001 0x00001 RW  0x1
  LOAD           0x004a22 0x00840000 0x00840000 0x00003 0x00003 RW  0x1

 Section to Segment mapping:
  Segment Sections...
   00     .text
   01     .fuse
   02     .lock
   03     .signature

There is no dynamic section in this file.

There are no relocations in this file.

There are no unwind sections in this file.

No version information found in this file.
 
 

'embeded > AVR (ATmega,ATtiny)' 카테고리의 다른 글

nop  (2) 2011.10.31
ATmega64 timer 설정  (0) 2011.10.28
IAR compiler 컴파일시 이미지 크기 보기  (3) 2011.07.25
PINA_Bit0 누구냐 넌! (IAR)  (0) 2011.03.31
AVR - PINA / PORTA / DDRA  (2) 2011.03.31
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2011. 7. 25. 11:10
2.31E 버전의 경우
Options - Settings - Make Control 에
Message Filtering Level 이라는 설정을 All로 바꾸어 주면된다. (기본은 Messages 였던듯)
물론, 빌드이기 때문에 수정사항이 있거나 Build All을 해주어야 원하는 코드 사이즈가 나온다.


Rebuilding target Debug...
filename.c
ICCAVR: --cpu=m64 -ms -o D:\prj\Debug\Obj\ -I C:\Program Files\IAR Systems\Ew23 Evaluation version\avr\SRC\CLIB\INC\ -e -y --initializers_in_flash -z9 --no_clustering --cross_call_passes=2 --debug -DENABLE_BIT_D

   IAR Atmel AVR C/EC++ Compiler V2.28A/WIN, Evaluation Version
   Copyright 1996-2002 IAR Systems. All rights reserved.

  14983 bytes of CODE memory (+ 12 bytes shared)
    599 bytes of DATA memory (+ 40 bytes shared)

Errors: none
Warnings: none
Linking...
XLINK: D:\prj\Debug\Obj\filename.r90 C:\Program Files\IAR Systems\Ew23 Evaluation version\avr\lib\cl3s-ec-sf.r90 -o D:\prj\Debug\Exe\filename.hex -Fintel-standard -
 17 213 bytes of CODE memory (8 range fill)
    801 bytes of DATA memory
Errors: none
Warnings: none
 
Total number of errors: 0
Total number of warnings: 0 

[링크 : http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=35464]
Posted by 구차니
embeded/ARM2011. 6. 20. 00:13

'embeded > ARM' 카테고리의 다른 글

ARM infocenter  (0) 2011.12.10
ARM NEON  (0) 2011.08.04
ARM JTAG / Wiggler + H-JTAG  (0) 2010.07.16
ARM용(암용) 툴체인, 컴파일러 - arm-linux-gcc : tool chain for ARM  (0) 2010.07.03
ARM JTAG 14pin / 20pin 변환하기  (0) 2010.07.01
Posted by 구차니