분류 전체보기 ( 2570 ) MCU간 오픈드레인 1핀 요청 응답 프로토콜. 개요 프로세서(MCU)들 간 통신하는 경우 각 MCU 핀들을 결선하여 요청, 응답계를 구축해야하는 경우가 흔히 있다. 통상 GPIO 2핀 할당하여 아래 그림과 같은 구성으로 하면 간단하게 달성되나, 이를 아래 그림처럼 1개의 핀만으로 요청 응답처리 하도록 구성하는 방법과 간단 프로토콜 정리한다. 프로토콜 골격. 단계1. M 이 주도적으로 임의시점 M'에 요청한다. 단계2. M' 은 M의 요청에 대응한 응답처리(이후 단계3을 M' 이 수행할 수 있음을 알리는 것임)한다. 단계3. M'의 응답을 받은 M이 주도적으로 M'과의 추가의 처리(I2C 통신등) 한다. 1핀 요청/응답 프로토콜 구현. 핀 H/W 처리. 1. M과 M' 의 핀은 양쪽 모두 Open Drain 으로 하고, 풀업저항 연결한다. - 정확하게.. 2015. 6. 22. TI사 CC2650STK SensorTag & DevPack - SimpleLink™ Bluetooth Smart®/Multi-Standard SensorTag 품번 : CC2650STK - SimpleLink™ Bluetooth Smart®/Multi-Standard SensorTag 구성요소. Powered by CR2032 Coin Cell Battery Native sensor support for: - 9-axis MEMS motion tracking - Humidity - Buzzer - Microphone - Pressure - IR temperature - Ambient Light Sensor - Reed Relay 장착칩 : CC2650 - CC2650 은 칩1개로 BLE, Zigbee 등이 모두 구현가능한것. BLE전용 CC2640 기능 시험도 가능. 제조사 제공 킷 정보 : http://www.ti.com/tool/cc2650stk 퀵가이드 .. 2015. 6. 21. TI사 BLE SoC CC2640 CC2640 개요. 주요특징. - BLE single-mode(Bluetooth Smart) SoC - Ultra Low Power - Main CPU : ARM Cortex M3 48MHz. 플래시 : 128kbyte, RAM : 22kbyte. - BLE Controller : ARM Cortex M0. 제조사 제공 정보 : http://www.ti.com/product/cc2640 Features Microcontroller Powerful ARM Cortex-M3 EEMBC CoreMark Score: 142 Up to 48-MHz Clock Speed 128KB of In-System Programmable Flash 8-KB SRAM for Cache 20-KB Ultra-Low Leakage.. 2015. 6. 21. TI사 BLE-Stack SDK. - CC2640, CC2650 개발용. TI BLE-Stack SDK 개요 TI 사에서 제공하는 BLE-Stack SDK. - BLE Protocol Stack 을 TI사에서 자사의 BLE 칩에서 작동하는 코드로 구현한것. - TI사 BLE SoC CC2640 등에서 single-mode BLE 응용 개발을 위한 software flatform. - BLE-Stack 이 내장된 CC2640 기반으로 응용계층을 개발시 CC2640 내에서 모두 개발할 수도 있고 별도의 프로세스에서 CC2640과 UART, SPI 통신으로 이뤄진다. 본 글에서 다루는 내용은 CC2640내에서 모든 응용을 개발하는 경우에 대한 것이다. 참고. CC2640/2650용의 BLE Stack 을 CC2540/1의 BLE Stack과 구분하기 위하여 CC2640용을 BLE-.. 2015. 6. 21. BLE Protocol Stack - Bluetooth Low Energy. GAP, GATT, Profile, Service, Characteristic 개요 블루투스 스펙 4.0, 4.1, 4.2 에서는 이전 스펙들에서의 BR/EDR 에 추가로 Bluetooth Low Energy (BLE) 가 추가되었다. - BR/EDR : Basic Rate/Enhanced Data Rate BLE system 은 저전력으로 한번에 극히 작은 데이터를 전송함에 최적화 되어있다. 이름 그대로 저전력 응용에 적합하다. 블루투스 기기가 BR/EDR 과 BLE 모두 지원하는 것을 Bluetooth Smart Ready 라고 한다. Dual Mode 라고도 한다. 블루투스 기기가 BLE 만 지원하는 것을 Bluetooth Smart 라고 한다. Single Mode 라고도 부른다. 본 글에서는 BLE Protocol Stack 의 전체 구조 및 각 요소들에 대하여 단순 명료.. 2015. 6. 21. EFM8 SB1 ADC ADC 개요 8비트 8051 MCU EFM8 Sleepy Bee 시리즈의 ADC 정보 정리. 주요특징. - SAR(successive approximation-register) single ended ADC, - 12/10/8 bit mode. - 75 ksps in 12bit mode, 300ksps in 10bit mode. - track-and hold. - programmable window detector. - anaglog multiplexer. 최대 10채널. - VREF : internal voltage reference(1.65V)/external voltage reference/VDD/internal LDO 1.8V 선택가능. - low power mode . - interrupt : .. 2015. 6. 19. I2C, SPI, UART bit-banging bit-banging : SPI, UART, I2C등을 전용 모듈이 아닌 펌웨어 코드상에서 구현하여 일반 GPIO 핀으로 해당 통신프로토콜 구현 한것. I2C bit-banging 관련 . bit-banging the I2C Master protocol. from wiki https://en.wikipedia.org/wiki/I%C2%B2C#Example_of_bit-banging_the_I.C2.B2C_Master_protocol SPI bit-banging 관련. Software SPI Examples for the C8051F30x Family http://www.silabs.com/Support%20Documents/TechnicalDocs/an128.pdf UART bit-banging 관련. .. 2015. 6. 13. I2C Master 설정법. 싸이프레스 pSoC/pRoC 의 SCB(Serial Communication Block) 개요 싸이프레스사의 pSoC, pRoC SCB (Serial Communication Block) 은 I2C, SPI, UART로 설정 가능하다. 본 글에서는 SCB 로 I2C Master 로 설정하고 펌웨어 코드에서 기본코드 작성하는 법 정리한다. 1. 프로젝트의 스키메틱 (확장자 .cysch) 에서 SCB 배치하고 I2C Master 로 기능하도록 속성설정. 2. 펌웨어 코드에서 상기1의 SCB 모듈을 사용가능하도록 기본 코드 추가. 3. I2C 버스에서 지정된 슬레이브로 데이터 송수신 함수 사용법. 본 글 설명에서 사용된 칩과 IDE. 사용되는 타겟칩 : CYBL10162 개발IDE : pSoC Creator 3.2 1. SCB 배치하고 I2C 설정. 1. Creator 프로젝트의 스키메틱(아래 그.. 2015. 6. 13. Cypress BLE 모듈 개발보드. - Bluetooth Low Energy. 아래 사진의 붉은색부분에 Cypress BLE 모듈 연결하고 MiniProg3 연결하고 PC측에는 pSoC Creator 3.1 이상 설치되어 있으면 개발가능하다. BLE 모듈 장착되는 부분의 회로. 위 보드에 연결가능한 모듈 2종. 모듈정보 상세 : http://igotit.tistory.com/260 pRoC BLE모듈. - 장착칩 : CYBL10563-56LQXI pSoC4 BLE 모듈. - 장착칩 : CY8C4247LQI-BL483 ///324. 2015. 6. 12. EFM8 인트럽트 코드생성. 개요 타겟칩 : EFM8 리즈. 개발IDE : Simplicity Studio Simplicity Studio 프로젝트에서 컨피규레이터 이용하여 인트럽트 처리부 코드 생성하는 방법 정리. 참고 : Configurator 사용하려면 프로젝트 초기 생성옵션에서 Configurator 를 선택해야 한다. 상세보기 -> http://igotit.tistory.com/230 의 단계2 박스글.내의 2번째 그림. 인트럽트 코드 생성방법. 1. Simplicity Studio 의 컨피규레이터 툴에서 아래 붉은 박스 부분 Interrupts 를 선택한다. 2. 오른쪽 속성창에서 파랑색 박스는 기본 Disabled로 되어있는데, 인트럽트 수신처리할 소스를 선택한다. 본 글의 예에서는 RTC Alarm Interrupt .. 2015. 6. 10. EFM8 SB1 개발보드. - 아래 보드의 붉은 박스 영역이 EFM8 SB1 부분. - 20핀 커넥터 : EFM8 모든핀 연결. 핀 기능고정되어있지 않음. - 왼쪽의 10핀 커넥터 : SILabs 의 USB Debug 꼽아서 펌 라이팅 용도. - 32.768kHz 크리스탈 장착. 회로. 위 사진의 붉은 박스 영역은 아래 회로도에서 왼쪽편에 해당함. SILbas 의 USB 디버거(http://igotit.tistory.com/263 ) 연결. 위 사진과 같이 SILab 의 USB 디버거를 연결하고, PC측에서는 Simplicity Studio 를 실행시키면된다. Simplicity Studio 에서 자동검출된 장치정보가 보인다. 본 글이 포함된 상위 정리장소 : http://igotit.tistory.com/244 ///322. 2015. 6. 9. VC++ 타이틀바에 보이는 프로그램 이름 변경. VC++ 프로젝트로 만든 프로그램 타이틀바에 보이는 이름 변경하는 법. CMainFrame 의 PreCreateWindow에 아래 파랑색 코드 추가하면됨. BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs cs.style &= ~FWS_ADDTOTITLE; // 이설정을 해야 타이틀 변경 가능해짐. cs.lpszName = "내프로그램임"; return TRUE; } 대화상자의 타이틀 설정. ::OnInitDialog().. 2015. 6. 6. 다른 프로그램과 메모리 공유 - 메모리 맵 파일. 개요 다른 프로그램(프로세스)들이 동일한 메모리를 고유하는 "메모리맵파일(=공유메모리)" 활용법 정리.요점.1. ::CreateFileMapping 으로 공유메모리 생성. ::OpenFileMapping 으로 이미 생성된 공유메모리 열기.2. ::MapViewOfFile 로 상기1의 공유메모리 포인터 받아서 데이터 읽기,쓰기.더보기더보기-함수 CreateFileMapping 상세CreateFileMappingCreates or opens a named or unnamed file mapping object for a specified file.To specify the NUMA node for the physical memory, see CreateFileMappingNuma.SyntaxC++CopyHA.. 2015. 6. 6. 다른 프로그램과 메시지 송수신 - FindWindow이용 대상윈도우핸들로 직접 전송. 개요 서로 다른 프로그램간의 메시지 송수신을 위하여 메시지 전송대상 윈도우 핸들을 함수 FindWindow 이용하여 확보하고 메시지 전송하는 방법 정리. 간단히 2단계로 이뤄진다. 1. FindWindow 로 메시지 타겟 윈도우 핸들 받기. 2. 1에서 확보된 윈도우 핸들로 SendMessage/PostMessage 함수 이용 메시지 전송. 타 방법 비교 : 다른 프로그램간의 메시지 송수신 방식중 RegisterWindowsMessage 함수 이용하는 방식(보기 -> http://igotit.tistory.com/318 ) 대비 본 글에서의 설명하는 방식이 고속/즉시 전송이 가능하다. 구현코드예 메시지 전송할 프로그램을 A, 수신처리할 프로그램을 B라고 하면 각각의 프로그램엔 아래와 같은 구조로 코딩되면.. 2015. 6. 6. 다른 프로그램과 메시지 송수신. - RegisterWindowMessage 개요 보통 메시지(SendMessage, PostMessage) 는 1개의 프로그램내에서 주로 사용되나, 서로다른 프로그램간에도 메시지 송수신 가능하다. 본 글에서는 다른 프로그램간의 메시시 송수신 방법 정리한다. 구현방법 요점. 2개의 프로그램이 있다고 하고, 각각을 A, B 라고 하자. 메시지 전송함수 SendMessage/PostMessage 모두 사용가능하며 본 글에서는 SendMessage 를 예로 보이나, 설명중의 SendMessage는 PostMessage 로 대치가능하다. 1. A,B 모두에 RegisterWindowMessage 함수 호출한다. - 메시지를 등록하는 함수이며 이렇게 등록된 메시지는 다른 프로그램으로도 전달가능하다. - 함수의 인자로 임의 문자열을 기록하는데, 이 문자열이 .. 2015. 6. 5. USB HUB. 4port USB2.0 High Speed. USB2514칩 기반. 외형. 보드 핀아웃. Features - USB2.0 High Speed 4 port HUB - HUB칩 : USB2514BI. 데이터시트 - 칩평가보드 : http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=evb-usb2514bc 본 글이 포함된 상위 정리장소 : http://igotit.tistory.com/280 ///317. 2015. 5. 31. 알티움. PCB 복사. 회로도 복사 작업. PCB 작업에서 부품배치하고 라우팅완료된것을 그대로 복사해서 사용하고 싶은 경우가 있다. 이를 달성하는 방법 정리. 예 상황. 위의 그림의 붉은 박스 내의 부분과 같이 LED 144개회로도작업에서 작업하고 이것을 PCB작업에서 부품배치하고 라우팅완료된 상태이다. 그런데 위와 같은 부품배치와 라우팅작업을 동일하게 현재의 PCB에 추가하고 싶다. 이를 달성하기 위해서는 회로도에서 다시 부품을 추가하고 회로도 작업하고 이를 다시 PCB로 가져와서 라우팅 작업한다? 2015. 5. 25. ACKme사의 wifi 모듈 PC 연결 평가보드 AMW004-E03 외형. 품번 : AMW004-E03 제조사 제공정보 : https://ack.me/products/AMW004_E03_Mackerel 보드 사용자 매뉴얼 : 파일첨부함. 장착된 모듈 AMW004 : http://igotit.tistory.com/287 FEATURES USB-UART interface for a direct serial connection to the AMW004 Wi-Fi module Separate LEDs indicate data on UART transmit/receive Sensor interface including two buttons and two LEDs Manual reset switch Breakout headers and ground hooks for easy pro.. 2015. 5. 25. 이전 1 ··· 128 129 130 131 132 133 134 ··· 143 다음