해보기는 했어?

오늘 안됐다고 포기하지 말고 용기내서 내일 다시 해 보자.

반응형

임베디드 34

ATMEL M90E32AS 실험 결과

2023.08.24 14:20 간편하게 나온 IC 같다. 내부에서 계산이 거의 다 되는 것을 읽기만 하면 될 거 같다, 전압 레지스터가 16비트라 65535까지 표현 되는데 655.35V까지 전압 표시가 가능하단 얘기다. 난 400V까지면 될 거 같은데. 전류 레지스터도 16비트라 65535 까지 값을 갖게 되는데 전류는 LSB가 0.001A라 65.535A까지 측정 값을 보여준다. 음..난 최대 값이 최대 400V 전압에 300A까지 측정돼야하는데.... 그럼..60A를 300A로 되도록 설계를 해 봐야겠다. 결과 값에다가 x5를 하면 오차는 좀 있겠지만 계측은 가능할 것 같다. 여기 저기 찾아봐도 이 부분에 대해서는 별 얘기가 안나온다. M90E32AS의 SPI 통신에 대해서만 잘 안된다고 나오고....

임베디드 2023.08.24

Atmel M90E32 제어

보드 설계 후 테스트를 진행하였다. MCU와 M90 IC 사이에 포토커플러 PC817을 넣었다. 혹시 몰라, 겁나서, 절연 하기 위해서 사용했는데 이것이 독이 될 줄이야. 시간도 없는데 PC817이 속도가 느려서 통신이 안되었다. 일단 회사에 남아 있는 HCPL2630S를 사용해서 점퍼 작업을 했다. 요즘들어서 예전 Interface IC들의 속도가 느려서 새로운 IC들로 변경해야함을 뼈저리게 느꼈다. 그냥 생각없이 기존에 사용하던 것이니까 사용해야지라고 했던 것이 문제가 되는 것을 확인했다. 다음부터는 좀 신경 써야겠다. SP3085E도 속도가 느려서 ILX485와 통신이 안되는 것을 보았다. 이런..이런 일이라니.. SPI IC 교체 및 수정 후에 다시 레지스터를 읽으니까 잘 읽힌다. 레지스터 값을 ..

임베디드 2023.06.22

Atmel M90E32AS Study

IC의 개요성능이 우수한 다사의 고성능의 넓은 입력 범위의 에너지 계측용 IC측정항목 : 유효전력, 무효전력, 피상전력, 전압, 전류의 실효치.SPI 통신 적용 NamePin No.I/OTypeDescriptionReset41ILVTTLReset: Reset Pin (active low), 리셋은 액티브 low, low이면 리셋이 핀과 GND 사이에 0.1uF 캐패시터(필터)와 VDD 사이에는 10kΩ을 연결시킨다. 어플리케이션에서는 MCU의 핀에 직접 연결할 수도 있다.AVDD1IPowerAVDD: Analog Power Supply 아날로그 전원This pin provides power supply to the analog part. This pin should connect to DVDD and b..

임베디드 2023.06.19

ADS131M02 SPI Communication words

ADS131M02는 장치를 설정하고 변환된 데이터를 읽기 위해서 SPI-호환 인터페이스를 사용한다. 장치는 항상 SPI 슬레이브로 동작한다. SCLK, CS는 연결을 위한 입력이다. CPOL=0이고, CPHA=1일 때에는 SPI 모드 1로 동작한다. SPI모드 1에서는 SCLK 대기 시 Low이고 데이터는 SCLK의 상승 에지에서 전송 또는 변경된다. 데이터는 SCLK 하강 에지에서 마스터에의해 읽혀지거나 슬레이브에의해 래치 된다. 인터페이스는 Full-duplex이다. 이는 데이터가 인터페이스를 통해 동시에 보내지고 받을 수 있다는 것이다. 장치는 일반적인 SPI 신호를 가지고 있다. : SCLK, CS, DIN(MOSI), DOUT(MISO) 추가로 추가적인 기능을 제공하는 두 개의 다른 디지털 핀이..

임베디드 2023.06.19

24C02 clock Timing 맞추기

마이크로칩스 사의 24C02의 타이밍도가 위와 같이 되어 있다. 그리고 타이밍도 설명에서 SCL(Serial clock)에 대한 관련 시간은 와 같이 설명되어 있다. 메가윈 IC 중 M3 코어를 이용해서 I2C를 설정할 때 해당 부분의 값을 계산하면 96MHz 클럭일 때 1 클럭 주기는 0.0104167us임. I2C2->SS_SCL_HCNT = 373; /* tHIGH = (373 + FS_SPKLEN + 7) / 96MHz = 4us */ // 4 = 0.0104167 * (373+4+7) I2C2->SS_SCL_LCNT = 451; /* tLOW = (451 + 1) / 96MHz = 4.708us */ // 4.708 = 0.0104167 * (451+1) I2C2->FS_SPKLEN = 4; /..

임베디드 2023.04.26

시리얼 통신 모니터링

마이크로프로세서를 이용해서 테스트를 할 때 가끔 TTL 레벨 시리얼로 어떤 데이터가 왔다갔다 하는지 확인해 보고 싶을 때가 있다. 그럴 때 어떻게 하면 좋을까 방법을 찾다가 TR을 이용하면 간단하게 할 수 있음을 알게 되었다.(물론 한 20여년 전에..) RX는 TTL 레벨의 시리얼 통신 시그널이고, MONITOR는 USB to Serial 컨버터 또는 시리얼 통신용 버퍼의 입력으로 사용한다. 앞서 설명했던 자료 중 https://romdori.tistory.com/87 USB to Serial 메가윈에 "MA111AS16"이라는 SOP-16 타입의 IC가 있다. USB to Serial 전용 IC이다. 예전에는 CP2102를 많이 사용했었는데 최근에 이 IC를 소개받고 몇개 구매해서 USB to Ser..

임베디드 2023.01.18

FreeRTOS - 3

품질관리구현 FreeRTOS는 소프트웨어 코딩 표준과 보이는 것과 느끼는 것뿐만 아니라 구현되는 것까지 매우 엄격하게 품질관리가 되고 있다. 예를들어 - FreeRTOS는 내부의 중요한 부분 또는 인터럽트로부터 연결된 목록 검색과 같이 결정되지 않은 동작은 수행하지 않는다. - 우리는 타이머가 실제적인 서비스가 필요할 때를 제외하고는 어떤 CPU 시간도 사용하지 않도록 구현된 소프트웨어 타이머의 효율에 대해 특히 자부심을 가지고 있다. - 소프트웨어 타이머는 0으로 세어 내려가는 것이 필요한 변수를 가지고 있지 않는다. - 이와 같이 차단(보류) 태스크들 목록은 주기적인 시간을 소비하는 서비스들을 요구하지 않습니다. ==> 주기적으로 진행되는 태스크들은 차단 목록에 들어가면 안된다는 얘기? - 직접적인 ..

임베디드 2023.01.03

FreeRTOS - 2

FreeRTOS 상업용 라이센싱 FreeRTOS의 전략적 파트너인 WITTENSTEIN high integrity systems에서 제공한다. OpenRTOSTM 는 보증과 주기적인 지원을 포함하는 FreeRTOS 커널의 상업적인 라이선스 버전이다. FreeRTOS와 OpenRTOS는 같은 코드 기반을 공유한다. OpenRTOS는 AWS의 전략적 파트어인 WITTENSTEIN high integrity systems에의해 AWS의 라이선스에 따라 제공된다. SAFERTOSTM is a derivative version of the FreeRTOS k..

임베디드 2023.01.02

FreeRTOS - 1

한 20여년 전에 uCOS-II 원서를 구해서 공부하다가 PC와 AVR에 포팅해 본 뒤로 손을 놓았었는데 2023년에는 FreeRTOS를 이용해서 제품화를 해 봐야겠다. 그래서 차근차근 다시 RTOS라는 것에 대해서 공부를 해 봐야겠다. FreeRTOS는 다양한 아키텍쳐들과 컴파일러들에 포트되었다. 각 RTOS 포트는 사용자가 빠르게 사용하고 실행시킬 수 있게 먼저 설정 해 둔 데모 어플리케이션이 있다. 더 좋은 점은 각 데모응용 프로그램에는 RTOS 데모 프로젝트의 소스코드 , 데모프로젝트 빌드 및 대상 하드웨어 구성에 대한 전체 정보를 제공하는 문서 페이지가 함께 제공된다는 것이다. 데모 어플리케이션 문서 페이지는 기본적인 RTOS 포트 특성 정보, FreeRTOS에 호환되는 인터럽트 서비스 루틴을 ..

임베디드 2022.12.30

마이크로프로세서로 KEY 입력 받는법

MPU의 키 입력 방법에는 여러가지가 있다. 개발자들 마다 저마다의 노하우와 설계 방법에 따라 많은 것들이 있다. 나는 시스템이라고 하기에는 좀 뭐...한 작은 제품들을 개발한다. 그래서 버튼이 크게 많이 필요한 것은 아니다. 보통 4개에서 16개 정도의 키를 사용한다. 수량이 적을때에는 포트에 직접 연결하고, 수량이 많을때에는 매트릭스 방법이나 ADC를 이용한다. 그럼 내가 알고 있는 내용을 한 번 적어볼까?? 1. 포트에 직접 연결 포트 하나당 하나의 스위치를 연결한다. 당연히 풀업이나 풀다운이 필요하다. 그래야 노이즈에 좀 강해진다. 포트 스캔을 하거나 인터럽트를 이용한다. 소프트웨어로 노이즈를 처리한다. 2. 매트릭스 방법 포트 수에 비해 사용할 수 있는 키의 수가 많아진다. 회로를 쬐끔 복잡하게..

임베디드 2022.11.05
반응형