embeded/Cortex-M3 Ti2015. 9. 25. 11:30

driverlib 용량이 적진 않아 많이 줄을줄 알았더니..

gcc - 129KB

rvmdk - -1714 KB

ewarm - 945 KB


개노가다 한거 치고는.. 의외로 감소량이 적네... 2KB..

노력대비로는 크다면 클 수 있는 용량이지만 내가 필요로 하는 용량을 충족하진 못하니.. ㅠㅠ

Program Size: Code=64900 RO-data=35872 RW-data=1372 ZI-data=16028  적용전

Program Size: Code=62764 RO-data=35684 RW-data=1372 ZI-data=16028  적용후


감소량

Code      2136 byte

RO-data   188 byte


일단.. 함수들을 ROM_ 접두를 붙이고

#include "driverlib/rom.h"

#define TARGET_IS_DUSTDEVIL_RA0


타겟을 define 해주면 되고

driverlib 에서 누락된 소스들 끌어와주고 그러면 된다(어?)

TARGET_IS_DUSTDEVIL_RA0 The application is being built to run on a DustDevil-class device, silicon revision A0.

TARGET_IS_TEMPEST_RB1 The application is being built to run on a Tempest-class device, silicon revision B1.

TARGET_IS_TEMPEST_RC1 The application is being built to run on a Tempest-class device, silicon revision C1.

TARGET_IS_TEMPEST_RC3 The application is being built to run on a Tempest-class device, silicon revision C3.

TARGET_IS_TEMPEST_RC5 The application is being built to run on a Tempest-class device, silicon revision C5.

TARGET_IS_FIRESTORM_RA2 The application is being built to run on a Firestorm-class device, silicon revision A2.

TARGET_IS_BLIZZARD_RA1 The application is being built to run on a Blizzard-class device, silicon revision A1.


[링크 : http://www.ti.com/lit/ug/spmu019p/spmu019p.pdf] 



그리고는 ROM_ 접두를 붙여주면 끝

단, target class나 함수에 따라 지원하지 않는 녀석들도 있으니 주의


'embeded > Cortex-M3 Ti' 카테고리의 다른 글

lm3s spi / ssi  (0) 2015.10.06
lm3s stellarisware SPI  (0) 2015.10.05
LM3S Stellarisware - GPIOIntTypeSet  (0) 2015.08.03
bitband / cortex-m3  (0) 2013.08.16
LM3S1968과 H-JTAG(wiggler)  (0) 2013.06.28
Posted by 구차니
embeded/raspberry pi2015. 9. 24. 10:35

그래도 너무 이것저것 하는 기분이라..

잠시 접어두고 블로그나 해야하려나..

끄응...




Posted by 구차니
embeded/AVR (ATmega,ATtiny)2015. 9. 23. 11:36


AT90USB


[링크 : http://www.atmel.com/Images/doc7604.pdf]

[링크 : http://nexp.tistory.com/1119]



Virtual USB 라이브러리?


V-USB is a software-only implementation of a low-speed USB device for Atmel’s AVR® microcontrollers, making it possible to build USB hardware with almost any AVR® microcontroller, not requiring any additional chip.



[링크 : https://www.obdev.at/products/vusb/index.html]

    [링크 : http://magicom9.tistory.com/52]

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

wiring  (0) 2016.02.29
Arduino Uno freeRTOS 강좌  (0) 2015.11.11
키보드 DIY 자료  (0) 2015.09.23
avr-gcc -mmcu 관련 작동 내용  (0) 2015.08.02
ubuntu 에서 AVR 컴파일하기  (0) 2015.07.30
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2015. 9. 23. 11:33

ATmega 칩을 이용해서 USB라던가 여러가지 인터페이스로 키보드를 DIY하는 프로젝트

ATmega 공부겸.. USB 공부겸 나중에 소스나 봐야겠다..


[링크 : https://github.com/tmk/tmk_keyboard]

[링크 : http://cubiq.org/build-your-very-own-pc-keyboard]

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

Arduino Uno freeRTOS 강좌  (0) 2015.11.11
마우스 DIY 자료  (0) 2015.09.23
avr-gcc -mmcu 관련 작동 내용  (0) 2015.08.02
ubuntu 에서 AVR 컴파일하기  (0) 2015.07.30
USART UBRR error rate  (0) 2015.07.29
Posted by 구차니
embeded/raspberry pi2015. 9. 22. 10:27

jack 해보겠다고 하는데 안되서 보니

어!??!?!?!?!?



/proc/asound/card0 $ ls -al

합계 0

dr-xr-xr-x  4 root root 0  9월 22 10:03 .

dr-xr-xr-x  5 root root 0  9월 22 10:01 ..

-r--r--r--  1 root root 0  9월 22 10:25 id

dr-xr-xr-x 10 root root 0  9월 22 10:25 pcm0p

dr-xr-xr-x  3 root root 0  9월 22 10:25 pcm1p 



생각해보니.. 3.5 파이 잭에도

오디오(L/R) / composite 비디오 인거지..

L/R/Mic 가 아니었네 -ㅁ-?!?!?

Posted by 구차니
embeded/raspberry pi2015. 9. 22. 07:33



[링크 : http://qjackctl.sourceforge.net/]


$ sudo apt-get isntall qjackctl



setup에서 Setting을 보면

Frame/Period, Sample Rate, Period/Buffer를 설정함에 따라 Latency가 자동으로 계산되어 나온다





근데.. 라즈베리는 마이크가 없잖아? 안될거야 ㅠㅠ


네트워크로 할 경우에는 netone이나 netJack을 쓰면 된다고 한다.

[링크 : https://ccrma.stanford.edu/book/export/html/2835]

[링크 : http://jackaudio.org/faq/netjack.html]

[링크 : https://github.com/jackaudio/jackaudio.github.com/wiki]

    [링크 : https://github.com/jackaudio/jackaudio.github.com/wiki/WalkThrough_User_NetJack2]

----

[링크 : https://help.ubuntu.com/community/HowToJACKConfiguration]

[링크 : https://help.ubuntu.com/community/What%20is%20JACK]


[링크 : http://jackaudio.org/faq/pulseaudio_and_jack.html]

[링크 : http://jackaudio.org/faq/jack_on_windows.html]

[링크 : http://jackaudio.org/files/docs/html/index.html]


[링크 : http://www.youtube.com/watch?v=fMz6fDGBnA4]

[링크 : https://en.wikipedia.org/wiki/ReWire]

Posted by 구차니
embeded/raspberry pi2015. 9. 21. 13:23

또.. gst-launch가 보이다니 ㄷㄷ


JACK

[링크 : http://wiki.linuxaudio.org/wiki/raspberrypi]


gstreamer

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?f=38&t=33462]




---

그나저나.. 영 안되네 -_-

$ sudo apt-cache search jackd

ebumeter - Loudness measurement according to EBU-R128

jackd - JACK Audio Connection Kit (default server package)

jackd1 - JACK Audio Connection Kit (server and example clients)

jackd2 - JACK Audio Connection Kit (server and example clients)

libjack-jackd2-0 - JACK Audio Connection Kit (libraries)

libjack-jackd2-dev - JACK Audio Connection Kit (development files)

pulseaudio - PulseAudio sound server

pulseaudio-module-jack - jackd modules for PulseAudio sound server

pulseaudio-module-jack-dbg - jackd modules for PulseAudio sound server (debugging symbols)

tuxguitar-jack - tuxguitar plugin for sound playback using JACKD

xjadeo - Video player with JACK sync


pi@raspberrypi ~ $ sudo apt-get install jackd

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

jackd 패키지는 이미 최신 버전입니다.

jackd 패키지 수동설치로 지정합니다.

0개 업그레이드, 0개 새로 설치, 0개 제거 및 38개 업그레이드 안 함.

pi@raspberrypi ~ $ sudo apt-get install jackd2

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

jackd2 패키지는 이미 최신 버전입니다.

jackd2 패키지 수동설치로 지정합니다.

0개 업그레이드, 0개 새로 설치, 0개 제거 및 38개 업그레이드 안 함.



$ DISPLAY=:0.0 jackd -dalsa

jackdmp 1.9.9

Copyright 2001-2005 Paul Davis and others.

Copyright 2004-2012 Grame.

jackdmp comes with ABSOLUTELY NO WARRANTY

This is free software, and you are welcome to redistribute it

under certain conditions; see the file COPYING for details

JACK server starting in realtime mode with priority 10

control device hw:0

control device hw:0

audio_reservation_init

Acquire audio card Audio0

creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit

control device hw:0

ALSA: Cannot open PCM device alsa_pcm for capture. Falling back to playback-only mode

configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods

ALSA: final selected sample format for playback: 16bit little-endian

ALSA: use 2 periods for playback





Posted by 구차니
embeded/raspberry pi2015. 9. 21. 13:22

기술적으로는 무언가 다른 내용이 있을것 같으나..

일단 라즈베리 에서는 GPU의 동적 메모리 할당으로 보면 된다.


CMA - DYNAMIC MEMORY SPLIT

The firmware and kernel as of 19th November 2012 supports CMA (Contiguous Memory Allocator), which means the memory split between CPU and GPU is managed dynamically at runtime. However this is not officially supported.


You can find an example config.txt here.


CMA_LWM

When the GPU has less than cma_lwm (low-water mark) megabytes of memory available, it will request some from the CPU.

cma_lwm 보다 적은 양을 GPU에서 가지고 있을 때, CPU로 부터 (메모리를) 요청한다.


CMA_HWM

When the GPU has more than cma_hwm (high-water mark) megabytes of memory available, it will release some to the CPU.

cma_hwm 보다 큰 것을 GPU에서 가지고 있을 때, CPU에게 (메모리를) 놓아준다.


The following options need to be in cmdline.txt for CMA to work:


coherent_pool=6M smsc95xx.turbo_mode=N


[링크 : https://www.raspberrypi.org/documentation/configuration/config-txt.md]

[링크 : http://elinux.org/RPiconfig#CMA_-_dynamic_memory_split]


영어라 읽다가 귀차니즘으로 포기

[링크 : https://en.wikipedia.org/wiki/High-water_mark_(computer_security)]

[링크 : https://en.wikipedia.org/wiki/Watermark_(data_synchronization)]



원래 찾던건.. 오디오 스트리밍을 낮은 지연시간으로 하는건데..

갑자기 네트워크를 USB 1.1로 돌리고 막 쑈를 하면서 찾은거.. ㄷㄷ

[링크 : http://wiki.linuxaudio.org/wiki/raspberrypi]

Posted by 구차니
embeded/ARM2015. 9. 21. 09:38

결론만 적자면..

A5는 저전력

A7은 A5의 저전력에 A8의 고성능 추구


A5 - ARM11 대체용, 전력은 ARM9급 성능은 ARM11, ARMv7 명령어 셋

A7 -                  전력은 Cortex-A5급 성능은 Cortex-A8, ARMv7 명령어 셋


[링크 : http://avenuel.tistory.com/1298] cortex-a5

[링크 : http://avenuel.tistory.com/1314] cortex-a7


[링크 : https://namu.wiki/w/ARM%20Cortex-A%20시리즈#s-1.1.1]

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

arm9 dsp / arm11 simd instuction 비교?  (0) 2015.10.01
arm11 simd instruction  (0) 2015.10.01
cortex-m 시리즈와 포화연산  (0) 2015.08.26
ARM926EJ / ARMv5TE  (0) 2015.07.28
Jazelle 관련 검색  (0) 2015.04.28
Posted by 구차니
embeded/raspberry pi2015. 9. 20. 18:28

패키지 설치

$ sudo apt-get update

$ sudo apt-get install gstreamer1.0 gstreamer1.0-omx


server

$ raspivid -t 0 -w 1280 -h 720 -fps 30 -hf -b 2000000 -n -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=192.168.219.148 port=5000


client

$ gst-launch-1.0 -v tcpclientsrc host=192.168.219.148 port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false


라즈베리 2B -> B

성능 차이도 있긴 하지만.. CPU 점유율이 상당히 낮다 (라즈베리 2B)

top - 18:37:16 up 39 min,  3 users,  load average: 0.12, 0.38, 0.31

Tasks: 108 total,   1 running, 107 sleeping,   0 stopped,   0 zombie

%Cpu(s):  2.7 us,  0.4 sy,  0.0 ni, 96.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem:    884384 total,   492260 used,   392124 free,    29196 buffers

KiB Swap:   102396 total,        0 used,   102396 free,   377976 cached


  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND

 6214 pi        20   0 42812  13m 6260 S  22.1  1.5   0:21.53 gst-launch-1.0

반면.. 클라이언트는 성능이 꾸져서 인가.. cpu가 하늘을 찌른다 .. ㄷㄷㄷ(라즈베리 B)

top - 18:37:31 up 19 min,  2 users,  load average: 1.10, 0.98, 0.66

Tasks:  67 total,   1 running,  66 sleeping,   0 stopped,   0 zombie

%Cpu(s): 89.1 us,  2.6 sy,  0.0 ni,  7.9 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st

KiB Mem:    445804 total,   406424 used,    39380 free,    27972 buffers

KiB Swap:   102396 total,        0 used,   102396 free,   327912 cached


  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND

 6411 pi        20   0 99.2m  23m  12m S  89.3  5.5   1:41.95 gst-launch-1.0 


현재 상황으로는... 2b -> b 로는 스트리밍이 전혀 안되는 상황..

옵션이 문제인가..


라즈베리 B -> 2B

라즈베리 B.. 보내는 쪽은 낮네

 top - 19:00:28 up 18 min,  2 users,  load average: 0.06, 0.13, 0.13

Tasks:  68 total,   1 running,  67 sleeping,   0 stopped,   0 zombie

%Cpu(s):  5.0 us,  3.7 sy,  0.0 ni, 90.3 id,  0.0 wa,  0.0 hi,  1.0 si,  0.0 st

KiB Mem:    380780 total,    68340 used,   312440 free,    10220 buffers

KiB Swap:   102396 total,        0 used,   102396 free,    29628 cached


  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND

 2325 pi        20   0 38028 9004 6220 S   5.9  2.4   1:03.73 gst-launch-1.0


라즈베리 2B.. 받는 쪽은 하늘을 찌른다. ㄷㄷㄷ

top - 19:00:32 up 17 min,  2 users,  load average: 2.44, 2.46, 1.71

Tasks: 106 total,   1 running, 105 sleeping,   0 stopped,   0 zombie

%Cpu(s): 49.4 us,  5.5 sy,  0.0 ni, 44.9 id,  0.0 wa,  0.0 hi,  0.2 si,  0.0 st

KiB Mem:    884384 total,   218004 used,   666380 free,    17676 buffers

KiB Swap:   102396 total,        0 used,   102396 free,    92048 cached


  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND

 2543 pi        20   0  158m  48m  12m S 168.8  5.6  27:10.75 gst-launch-1.0 






Posted by 구차니