[ARM] STM32_RTC, Switch
ARM/1_Study2024. 4. 2. 22:49[ARM] STM32_RTC, Switch

1. RTC(Real Time Clock) : 현재 시간을 유지시켜주는 컴퓨터 시계 DS1307 RTC 모듈에는 아래와 같은 소자가 있다. CR2032 : 수은 전지 24C32 : 32kBit EEPROM DS1307(RTC) 좌) 연도가 뒷자리 00 ~ 99만 저장되기 때문에 앞 2자리는 사용자가 알아서 판단해야하며 2100년과 2000년을 구분할 수 있는 기능은 없다. 우) DS1307은 BCD(Binary coded decimal)로 설계되어 있다. 0000 0000 == 0 0000 0001 == 01 0000 1000 == 08 0000 1001 == 09 0001 0000 == 10 → 이런식으로 4bit가 1의 자리, 다음 4bit가 10의 자리 Slave Address : 1101 000x..

[ARM] STM32_LCD I2C, ADC(polling 방식, DMA 방식), CDS
ARM/1_Study2024. 3. 29. 22:23[ARM] STM32_LCD I2C, ADC(polling 방식, DMA 방식), CDS

1. I2C 통신 Write : [장치 주소(7bit) + 0(Write)] [쓰기 데이터(8bit)] Read : [장치 주소(7bit) + 1(Read)] [읽기 데이터(8bit)] ⦁ 모든 data 뒤에는 ACK bit가 붙음(쓰기에서는 slave가, 읽기에서는 master가 보냄) 2. LCD I2C ∘ 16x2 LCD 2-1. LCD 메모리 1. CGROM(Character Generator ROM) ⦁ 8비트 문자 패턴을 저장하고 있는 메모리 ⦁ 208개의 5x8 도트와 32개의 5x10 도트의 문자 패턴 저장(9920bit) ⦁ Character Code 0b0010 0000(공백) ~ 0b0111 1111(←)까지는 ASCII (아스키 코드) 와 일치 → c언어에서 문자로 표현된 데이터를 ..

[ARM] STM32_Radar
ARM/1_Study2024. 3. 24. 16:51[ARM] STM32_Radar

1. Radar - Ultrasonic 거리 측정, Servo Motor 동작 구현 - Ultrasonic으로 측정한 거리 UART 출력 및 Python Radar UI 표시(tkinter 사용하여 물체 위치 표시) (1) TIM1 : servo motor 동작 PWM (Pulse frquency : 50Hz(== Period 20ms)) (2) TIM3 : Ultrasonic Input Capture Interrupt TIMER (3) PA5 : GPIO Trigger, PA6 : TIM3 (4) TIM11 : us delay용 TIMER (5) UART2 : Interrupt set Data(6byte) 통신 protocol : STX CMD data1 data0 CRC ETX - protocol 송..

[FullCustomIC] Cadence Virtuoso_Switch, 2x1 MUX(Switch)
Full Custom IC/Study2024. 3. 24. 01:16[FullCustomIC] Cadence Virtuoso_Switch, 2x1 MUX(Switch)

Swtich Level Design ⦁ Logic Level Design은 AND, OR 등 논리 게이트를 이용하여 설계하는 방법 ⦁ Switch Level Design은 스위치 상태를 고려하여 설계하는 방법(Switch 이용) 위 Switch의 특이한 점은 Source와 Body가 연결되어 있지 않다. (pMOS Gate와 nMOS Gate가 둘 다 S0여서 정상동작하는 스위치는 아니지만 여기서는 Switch Level Design을 이해하기 위해 최대한 단순하게 표현) 각 Gate로 S0라는 control 신호가 입력되고 VIN이 pMOS Source와 nMOS Drain으로 입력 즉, 입력 단자가 2개(VDD, VSS 제외) → VIN으로 특정 신호를 흘려보내면 S0로 제어하여 VOUT으로 신호 출..

[FullCustomIC] Cadence Virtuoso_4NAND, 4NOR, 2x1 MUX(Logic)
Full Custom IC/Study2024. 3. 23. 22:55[FullCustomIC] Cadence Virtuoso_4NAND, 4NOR, 2x1 MUX(Logic)

1. 4NAND Gate ⦁ 4NAND Truth Table VINA VINB VINC VIND VOUT 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 - pMOS w = 2.14u, nMOS w = 1u - pMOS Finger Width : 2.14u, Total Width : 8.56u - nMOS Finger Width : 1u, Total Width : 4u 2. 4NOR Gate ⦁ 4NOR Truth Table VINA VINB VINC VIND VOUT ..

[FullCustomIC] Cadence Virtuoso_2NAND, 2NOR, 3NAND, 3NOR Gate Layout
Full Custom IC/Study2024. 3. 23. 22:50[FullCustomIC] Cadence Virtuoso_2NAND, 2NOR, 3NAND, 3NOR Gate Layout

■ Finger-type : Layout 설계할 때 Gate를 병렬로 여러개로 나누는 것 1. 2NAND Gate Layout - 앞서 2NAND Gate Schematic에서 pMOS Width = 2.53u 인 것을 알아냈기 때문에 위처럼 세팅을 한다. - 위 세팅은 MOSFET 하나가 아니라 두 개를 이어붙인 세팅이다. (pMOS 하나일 때 Total Width = 2.53u) - 2개의 MOSFET을 2Finger 세팅 하지 않으면 크기가 커져 공통 단자를 묶어 2Finger로 세팅한다. Stick Diagram을 그리면 Layout을 쉽게 그릴 수 있다. (하지만 회로가 점점 복잡해지면 Stick Diagram이 오히려 어려워질 수 있어 그때는 Schematic만 보고 그리는 것이 좋다.) 2...

image