embeded/AVR (ATmega,ATtiny)2014. 3. 22. 10:25
증폭률 한계인가?


10k 에서 100k 로 올리고
100k / 110 으로 해서

기존보다 10배 더 증폭되서 5V를 넘어설거라고 생각했는데 4V가 한계.
2단계로 증폭하도록 해야하려나? ㅠㅠ




2014/01/03 - [embeded/ATmega/ATtiny (AVR)] - LM-324과 ST-1K 사용하기
2014/01/02 - [embeded/ATmega/ATtiny (AVR)] - LM324와 ST-1K 사용조사

Posted by 구차니
embeded/AVR (ATmega,ATtiny)2014. 3. 13. 12:47
IM2와 IM1은 GND/IOVCC로 연결되면서 01로 고정된다.
그런 이유로 8bit Little Endian이 불가능 하다는 정도의 사소한(?) 단점이 생긴다.


그런데.. 16bit용 데이터 전송 타이밍 시트는 있지만.
18bit는 타이밍 시트가 존재하지 않고 이런것만 있는데.. 무슨 의미이려나?

그냥 1:1로 바로 전송하는 건가?

 
거상인 Atmega8과 연결하려고 해보니..
CS는 하나의 칩만 쓰니 HI로 놓고 하면 어찌어찌 18bit 모드로 사용이 가능할.. 지도?
[링크 : http://www.gersangin.com/shop/goods/goods_view.php?&goodsno=1092&category=025]

16모드라면 여유가 있다.

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

Atmel AVR 라인트레이서 및 IR 관련 링크  (0) 2014.03.22
LM-324과 ST-1K 사용하기 2  (0) 2014.03.22
avr glcd (128x64) 예제  (0) 2014.03.12
CM04075 데이터 백업용  (0) 2014.02.20
Graphic LCD 지름예고  (0) 2014.02.09
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2014. 3. 12. 15:32
128x64 사이즈의 그래픽 LCD에 대한 AVR 예제

[링크 : http://blog.naver.com/freehuds/100074004932]

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

LM-324과 ST-1K 사용하기 2  (0) 2014.03.22
COM26T2844VTX + ATmega8 검토  (0) 2014.03.13
CM04075 데이터 백업용  (0) 2014.02.20
Graphic LCD 지름예고  (0) 2014.02.09
COM26T2844VTX 컨트롤러 HD66781  (0) 2014.02.07
Posted by 구차니
embeded/AVR (ATmega,ATtiny)2014. 2. 20. 13:33
핀 할당
anode 가 백라이트 +
cathod가 백라이트 -


[링크 : http://www.devicemart.co.kr/goods/view.php?seq=1077090]

SED1520만으로 구성하였기에 32*122로 해상도가 제한되고 상하로 나누어서 제어하는 것으로 생각된다.
분위기로 봐서는... 단일로 구성시에는 61*16이 한계이고
(61+ 61) * (16 + 16) 으로 mater-slave 구성하여 4개 구획에 대해서 그리는게 아닐까 추측된다.


+2014.03.28 추가
마스터 LSI common 출력 COM0-COM15는 슬레이브 LSI 출력 COM31-COM16과 연결된다.
이게 무언가 중요한 말 같은데.. 아무튼 슬레이브로 사용시에는 출력순서가 뒤집어 지지만, 
프로그램과는 연관이 없을 것으로 생각된다.



[링크 : http://www.hantronix.com/files/data/1278473706sed1520.pdf]



[링크 : http://www.actron.de/de/data/FAQ/sed1520.pdf]

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

COM26T2844VTX + ATmega8 검토  (0) 2014.03.13
avr glcd (128x64) 예제  (0) 2014.03.12
Graphic LCD 지름예고  (0) 2014.02.09
COM26T2844VTX 컨트롤러 HD66781  (0) 2014.02.07
LM3S1968 / RiT Display P14201  (0) 2014.02.07
Posted by 구차니
CLCD는 어찌어찌 제어가 가능하니
다음 단계로 Graphic LCD를 질러서 해보자 ㅋㅋ

현재 LM3S1968 보드에 예제 코드로 128x96 OLED 제어하는 소스가 있긴 하지만
그것만으로 하기에는 무언가 아쉬워서 ^^;

[링크 : http://www.devicemart.co.kr/goods/view.php?seq=1077090]  graphic LCD 122*32

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

avr glcd (128x64) 예제  (0) 2014.03.12
CM04075 데이터 백업용  (0) 2014.02.20
COM26T2844VTX 컨트롤러 HD66781  (0) 2014.02.07
LM3S1968 / RiT Display P14201  (0) 2014.02.07
LM-324과 ST-1K 사용하기  (0) 2014.01.03
Posted by 구차니
COM26T2844VTX의 LCD 드라이버는
Renesas사의 HD66781 이다.

그나저나.. LCD도 정복못했는데 무슨 풀컬러야 ㅠㅠ
아직은 묻어두자 흑흑 

2013/07/23 - [하드웨어/Display 장비] - COM26T2844VTX LCD 데이터 시트

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

CM04075 데이터 백업용  (0) 2014.02.20
Graphic LCD 지름예고  (0) 2014.02.09
LM3S1968 / RiT Display P14201  (0) 2014.02.07
LM-324과 ST-1K 사용하기  (0) 2014.01.03
LM324와 ST-1K 사용조사  (3) 2014.01.02
Posted by 구차니
P14201의 OLED 컨트롤러는 SSD1329인데
LM3S1968 EVM 보드에 들어있는 파일을 분석하려다가 일단 정리중

rit128x96x4.c (128x96 4bit) 파일의 초기화 루틴을 보면 아래와 같은 식으로 되어 있는데
0xe3는 안전을 위한 NOP 인것 같고..
명령어 1바이트 + 데이터 1바이트 식으로 구성이 되는 듯.
static const unsigned char g_pucRIT128x96x4Init[] =
{
    // Unlock commands
    3, 0xFD, 0x12, 0xe3,

    // Display off
    2, 0xAE, 0xe3,

    // Icon off
    3, 0x94, 0, 0xe3,

    // Multiplex ratio
    3, 0xA8, 95, 0xe3,

    // Contrast
    3, 0x81, 0xb7, 0xe3,

    // Pre-charge current
    3, 0x82, 0x3f, 0xe3,

    // Display Re-map
    3, 0xA0, RIT_INIT_REMAP, 0xe3,

    // Display Start Line
    3, 0xA1, 0, 0xe3,

    // Display Offset
    3, 0xA2, RIT_INIT_OFFSET, 0xe3,

    // Display Mode Normal
    2, 0xA4, 0xe3,

    // Phase Length
    3, 0xB1, 0x11, 0xe3,

    // Frame frequency
    3, 0xB2, 0x23, 0xe3,

    // Front Clock Divider
    3, 0xB3, 0xe2, 0xe3,

    // Set gray scale table.  App note uses default command:
    // 2, 0xB7, 0xe3
    // This gray scale attempts some gamma correction to reduce the
    // the brightness of the low levels.
    17, 0xB8, 1, 2, 3, 4, 5, 6, 8, 10, 12, 14, 16, 19, 22, 26, 30, 0xe3,

    // Second pre-charge period. App note uses value 0x04.
    3, 0xBB, 0x01, 0xe3,

    // Pre-charge voltage
    3, 0xBC, 0x3f, 0xe3,

    // Display ON
    2, 0xAF, 0xe3,
};


10  COMMAND DESCRIPTIONS
10.1  SET COLUMN ADDRESS (15H)
10.2  SET ROW ADDRESS (75H
10.3  SET CONTRAST CURRENT (81H
10.4  SET SECOND PRE-CHARGE SPEED (82H
10.5  SET MASTER ICON CONTROL (90H
10.6  SET ICON CURRENT RANGE (91H
10.7  SET INDIVIDUAL ICON CURRENT (92H)
10.8  SET INDIVIDUAL ICON ON / OFF REGISTERS (93H
10.9  SET ICON ON / OFF REGISTERS (94H
10.10  SET ICON BLINKING CYCLE (95H
10.11  SET ICON DUTY (96H
10.12  SET RE-MAP(A0H
10.13  SET DISPLAY START LINE (A1H
10.14  SET DISPLAY OFFSET (A2H
10.15  SET DISPLAY MODE (A4H ~ A7H
10.16  SET MUX RATIO (A8H)
10.17  SET SLEEP MODE ON/OFF (AEH / AFH)
10.18  SET PHASE LENGTH (B1H).
10.19  SET FRAME FREQUENCY (B2H
10.20  SET FRONT CLOCK DIVIDER / OSCILLATOR FREQUENCY (B3H)
10.21  SET DEFAULT GRAY SCALE TABLE (B7H)
10.22  LOOK UP TABLE FOR GRAY SCALE PULSE WIDTH (B8H)
10.23  SET SECOND PRE-CHARGE PERIOD  (BBH).
10.24  SET FIRST PRE-CHARGE VOLTAGE, VP (BCH) .
10.25  SET VCOMH (BEH
10.26  NO OPERATION (E3H).
10.27  SET COMMAND LOCK (FDH 

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

Graphic LCD 지름예고  (0) 2014.02.09
COM26T2844VTX 컨트롤러 HD66781  (0) 2014.02.07
LM-324과 ST-1K 사용하기  (0) 2014.01.03
LM324와 ST-1K 사용조사  (3) 2014.01.02
AVR ATmega128 Timer 8bit 문서  (0) 2014.01.02
Posted by 구차니
LM-324가 몇배 증폭되는진 모르겠지만... 90배 정도 까진 단일 회로로 가능한듯..
회로는 앞서의 내용을 확인하면 되고....
2014/01/02 - [embeded/ATmega/ATtiny (AVR)] - LM324와 ST-1K 사용조사

일단.. 10K / 220옴 이용해서 증폭한 경우
과거의 2.5mV / 0.02mV에 비해서 꽤 크게 증폭이 되었다.
(차단이 제대로 안되었거나 흔들렸을때 잘못 찍은듯..)


그리고 220옴 병렬저항으로 10k/110옴으로 증폭한 결과


전체 회로(?)는 아래와 같다.




Posted by 구차니
음.. 아직 사용을 한건 아니고 자료 조사중..
LM324는 4 채널 앰프(?) 를 내장한 IC인데
증폭을 하려면 먼가.. 복잡하다?




왜 저런 구성인진 걍 일단 넘어 가자 ㅠㅠ
+에 증폭을 원하는 신호를 넣고
-에 증폭률을 제어하는 거 같은데
Vo = 2.5V * (1 + R1/R2)
식에 의해서 증폭률이 결정된다.
출력은 전압으로 나오니까..

5mV를 5V로 뻥튀기 하려면.. 1000배 증폭.. ㄷㄷㄷ
4 채널이니 10배씩 3번 증폭 해야 하나?

2013/07/07 - [embeded/ATmega/ATtiny (AVR)] - ST-23G / EL-23G 가지고 놀기

아무튼 아래는 ST-1K 기본 회로 구성
Vout쪽에 풀업인지 풀다운인지 아무튼 먼가를 걸어놓고
단순 스위치 처럼 작동하는 넘인데 총 저항 3개랑 배선만 좀 죽어라 하면 가능할거 같긴 하지만...


걍.. 돈좀 써서 증폭기 달린걸로 써볼까 -_-


[링크: http://www.eleparts.co.kr/.../KSM-603LM5ND SPECIFICATION (091221) Ver 0.33.pdf]  KSM-603LM5ND
Posted by 구차니
Modes of Operation

Normal Mode
The simplest mode of operation is the normal mode (WGM01:0 = 0). In this mode the counting direction is always up (incrementing), and no counter clear is performed. The counter simply overruns when it passes its maximum 8-bit value (TOP = 0xFF) and then restarts from the bottom (0x00). In normal operation the Timer/Counter overflow flag (TOV0) will be set in the same timer clock cycle as the TCNT0 becomes zero. The TOV0 flag in this case behaves like a ninth bit, except that it is only set, not cleared. However, combined with the timer overflow interrupt that automatically clears the TOV0 flag, the timer resolution can be increased by software. There are no special cases to consider in the normal mode, a new counter value can be written anytime.
The output compare unit can be used to generate interrupts at some given time. Using the output compare to generate waveforms in normal mode is not recommended, since this will occupy too much of the CPU time.
가장 단순한 작동은 노말모드 입니다 (WGM01:0 =0). 이 모드에서는 카운팅 방향은 항상 위쪽이며(증가), 카운터 클리어가 수행되지 않습니다. 카운터는 8bit 최대값을 넘어설때 (0xFF) 단순히 초과해 버리며 바닥(0x00) 부터 재시작 합니다. 


Clear Timer on Compare Match (CTC) Mode
In Clear Timer on Compare or CTC mode (WGM01:0 = 2), the OCR0 Register is used to manipulate the counter resolution. In CTC mode the counter is cleared to zero when the counter value(TCNT0) matches the OCR0. The OCR0 defines the top value for the counter, hence also its resolution. This mode allows greater control of the compare match output frequency. It also simplifies the operation of counting external events. The timing diagram for the CTC mode is shown in Figure 38. The counter value (TCNT0) increases until a compare match occurs between TCNT0 and OCR0, and then counter (TCNT0) is cleared. 
CTC 모드에서 OCR0 레지스터는 카운터 해상도를 조작하는데 사용됩니다. CTC 모드에서 카운터는 카운터 값(TCNT0)가 OCR0와 일치할때 0으로 초기화 됩니다. OCR0는 상한값과 해상도를 정의합니다. 이 모드는 compare match 출력 주파수의 더 나은 제어를 제공합니다. 그것은 또한 외부 이벤트의 카운팅 작업을 단순화 시킵니다. CTC 모드를 위한 타이밍 다이너그램은 Figure 38에 있습니다. 카운터 값(TCNT0)는 TCNT0와 OCR0 값이 일치하는 순간때까지 증가하며 카운터는(TCNT0) 초기화 됩니다.


Fast PWM Mode
The fast Pulse Width Modulation or fast PWM mode (WGM01:0 = 3) provides a high frequency PWM waveform generation option. The fast PWM differs from the other PWM option by its single-slope operation. The counter counts from BOTTOM to MAX then restarts from BOTTOM. In non-inverting Compare Output mode, the output compare (OC0) is cleared on the compare match between TCNT0 and OCR0, and set at BOTTOM. In inverting Compare Output mode, the output is set on compare match and cleared at BOTTOM. Due to the single-slope operation, the operating frequency of the fast PWM mode can be twice as high as the phase correct PWM mode that uses dual-slope operation. This high frequency makes the fast PWM mode well suited for power regulation, rectification, and DAC applications. High frequency allows physically small sized external components (coils, capacitors), and therefore reduces total system cost. In fast PWM mode, the counter is incremented until the counter value matches the MAX value. The counter is then cleared at the following timer clock cycle. The timing diagram for the fast PWM mode is shown in Figure 39. The TCNT0 value is in the timing diagram shown as a histogram for illustrating the single-slope operation. The diagram includes non-inverted and inverted PWM outputs. The small horizontal line marks on the TCNT0 slopes represent compare matches between OCR0 and TCNT0.
빠른 PWM 모드는 고주파 PWM 파형을 생성하는 옵션을 제공합니다. 빠른 PWM은 다른 PWM 옵션들에 비해 single-slope 작동으로 인해 차이점이 존재합니다. 카운터는 바닥에서 최대값으로 세고 바닥에서 다시 시작합니다(0 -> 0xFF / 증가).
non-inverting 비교 출력 모드에서는 출력비교(OC0)는 TCNT0와 OCR0가 일치할때 초기화 되고, 바닥(0x00)에서 설정됩니다.
inverting 비교 출력 모드에서는 일치할때 설정되고 바닥에서 초기화 됩니다. single-slope 작동으로 인해 빠른 PWM 모드의 작동 주파수는 dual-slope 작동을 사용하는 phase correct PWM의 2배 이상을 낼 수 있습니다. 이러한 높은 주파수로 인해 fast PWM 모드는 전력제어, 정류 그리고 DAC 어플리케이션에 매우 적절합니다. 고주파는 물리적으로 작은 크기의 외부 부품(코일, 캐패시터)를 사용할수 있도록 해주고, 전체 시스템의 비용을 낮출수 있습니다. 빠른 PWM 모드에서 카운터는 카운터 값이 최대값과 일치할때 까지 증가합니다. 카운터는 따라오는 타이머 클럭 사이클에 초기화 됩니다. 



Phase Correct PWM Mode
The phase correct PWM mode (WGM01:0 = 1) provides a high resolution phase correct PWM waveform generation option. The phase correct PWM mode is based on a dual-slope operation. The counter counts repeatedly from BOTTOM to MAX and then from MAX to BOTTOM. In non-inverting Compare Output mode, the output compare (OC0) is cleared on the compare match between TCNT0 and OCR0 while counting up, and set on the compare match while downcounting. In inverting Output Compare mode, the operation is inverted. The dual-slope operation has lower maximum operation frequency than single slope operation. However, due to the symmetric feature of the dual-slope PWM modes, these modes are preferred for motor control applications. 
phase correct PWM 모드는 고해상도의 
phase correct PWM 파형을 생성하는 옵션을 제공합니다. phase correct PWM 는 dual-slope 작동에 기반합니다. 카운터는 바닥과 최대값으로 그리고 최대에서 바닥으로 반복적으로 세어지게 됩니다. non-inverting비교 출력 모드에서는 출력 바교(OC0)는 숫자가 세어 올라가는(증가) 중 TCNT0와 OCR0이 일치하는 순간에 초기화 되고, 아래로 세어지는 도중(감소) 비교가 일치할 경우 설정됩니다. inverting  출력 비교 모드에서는 작동이 반대로 됩니다. dual-slope 작동은 single slope 작동보다 낮은 작동 주파수를 가집니다. 하지만 dual-slope PWM 모드의 대칭 특성으로 인해 모터 제어에 적합합니다.
Posted by 구차니