본문 바로가기

sample

mfc thread 만들기 - vs 2010, sample source mfc 에서 멀티타스크를 하기 위해서는 OnTimer 를 쓰기도 하지만,스레드를 쓰기도 한다. 방법.1. 해더에 변수 추가2. 스래드 시작 함수 부르기3. 스레드 시작 함수4. 실행될 스레드 함수5. 스레드 잠시 멈춤 함수6. 스레드 끝내기 함수 스레드 잠시 멈춤 함수부르기와 끝내기 함수 부르기는  따로 만들어 주셔야 합니다.여기서는 귀찮아서 그냥 만들고 10 초뒤 잠시 멈추고 10초뒤 재시작, 10초뒤 끝으로 하였읍니다. 코드는 VIsual Studio 2010 으로 하였읍니다.  =======================================1. 해더에 변수 추가아래 Dialog 이름 DLG_Main 은 다른것으로 바꾸어도 됩니다.// CDlg_Main dialogclass CDlg_Main .. 더보기
mfc AfxMessageBox() 로, 문자, 숫자 표시 하기, sample source ==========================================void msgChar( char *m){  CString cm;//  cm.Format(_T("%s"),m);  cm =  (LPCSTR)(LPSTR)m;   AfxMessageBox(cm);}void msgNum( int m){  CString cm;  cm.Format(_T("%d"),m);   AfxMessageBox(cm);}==========================================void test_mBox(){  msgChar("HaHaHa");   msgNum(-16);}========================================== 더보기
mfc vs2010 ini 파일 읽기 쓰기 간단 보기, sample source 소스 올리니 참고 하셔요....sample ini 파일도 같이 올립니다.//////////////////////////////////////////////////#include "stdafx.h"/*DWORD GetPrivateProfileString(  LPCTSTR lpAppName,  // 섹션 (Section) 이름  LPCTSTR lpKeyName,  // 키 이름  LPCTSTR lpDefault,  // 키 기본 설정값. 만약 lpKeyName 이름이 들어간 키가 파일 내에 없다면 이 값을 lpReturnedString에 넣게 되어있음(아무것도 없다면 NULL로 설정됨)  LPTSTR  lpReturnedString,  // 키 값을 받을 버퍼 포인터  DWORD   nSize,    // .. 더보기
mfc log 파일 만들기 저장하기 - vs2010, sample source 뭐... 설명은.. 소스에 있는 코멘트로.. VS 2010 으로 했읍니다. =====================#include "stdafx.h"static FILE* fP;   //파일 포인터 추가void CStr2Char(CString f, char *t){   // CString 을 char * 로 바꾸기  CStringA p2(f);  const char * p3=p2;  strcpy(t, (char *) p3);}void makePath(CString & s) {  // 경로 만들고, 파일명 만들기(파일을 실제 만들지는 않고 이름만 리턴)  TCHAR path[_MAX_PATH];  GetModuleFileName(NULL, path, sizeof(path));  // 실행파일 경로 ?어 오기.. 더보기
Nuvoton M483 i2c + RV3028 (RTC) IRQ , 고정밀 RTC 비교, sample source 먼저 고정밀 RTC 비교1.  RV3028 : 1 ppm5000원/개 2.  DS3231 :  5 PPM (1일 ±0.432초)♦Accuracy ±2ppm from 0°C to +40°C♦Accuracy ±3.5ppm from -40°C to +85°C아두이노15000원/개  3. DS1307 , DS1308better than ±2 minute/month at 25°C7500 원/개 4. PCF2131accuracy ±3 ppm from -40 °C to +85 °C5000원/개 1ppm= 100만초에 1초 틀림= 10일에 1초 도 안틀림 = 한달에 3초도 안틀림= 1년 32초 틀림 -------------------nuvoton에서 제공하는 i2c.c 를 이용 하였는데,  irq 를 이용 하는 방법 .. 더보기
Nuvoton M483 i2c + TLC59116 (Led Drv) IRQ MultyByte RW방식, sample source nuvoton에서 제공하는 i2c.c 를 이용 하였는데,  irq 를 이용 하는 방법 만들어 추가 함. -- 즉 irq 이용 안하던거과 irq 이용하는거 합본임.  뭐 사실 HDC1080 (온도 습도 센서) 도 I2c 로 이용 하는거 같이 들어 있음 1. Version.h 에서 #define _I2C_MODE     1    //   0: Use i2c.c.  1: Use IRQ,  2:Use MyI2c.c 라 되어 있는데 _I2C_MODE  를1로 설정 하면,  irq 를 사용 하여 multibyte rw 를 하는 code 를 넣었고,0으로 하면, nuvoton 에서 제공하는 i2c.c 에 있는 multibyte rw 함수를 이용 한다. 2. i2c 포트는    i2c1 - pb1 pin6 scl , .. 더보기
Nuvoton M483 i2c+hdc1080 (온도 습도 센서) IRQ MultyByte RW방식, sample source 이전에 nuvoton에서 제공하는 i2c.c 를 이용 하였는데,  irq 를 이용 하는 방법 만들어 추가 함. -- 즉 irq 이용 안하던 이전거과 irq 이용하는거 합본임.- 혹시 irq 잘 모르겠으면 이전거 이용 하든 본 버전에서 irq 안쓰는거로 이용 하면 됨 1. Version.h 에서 #define _I2C_MODE     1    //   0: Use i2c.c.  1: Use IRQ,  2:Use MyI2c.c 라 되어 있는데 _I2C_MODE  를1로 설정 하면,  irq 를 사용 하여 multibyte rw 를 하는 code 를 넣었고,0으로 하면, nuvoton 에서 제공하는 i2c.c 에 있는 multibyte rw 함수를 이용 한다. 2. i2c 포트는    i2c1 - pb1 pi.. 더보기
Nuvoton M483 i2c + hdc1080 (온도 습도 센서) MultyByte RW방식 여기 저기 참고 해서 나름 가장 쉬운 방법 ? 으로 구현 함.. 물론 보시는 분에 따라 생각이 다를수도... hdc1080 소스는 https://github.com/s54mtb/MS5637_HDC1080 에서 가져옴 stm 으로 되어 있어 나름 수정함. nuvoton 제공 i2c lib 에 i2c 로 읽고 쓰는게 여러가지로 있는데, 멀티 바이트 읽고 쓰는 함수를 이용 혀였다.. stm 과 비슷하고 , 이해 하기도 쉬운거 같아서.. uint32_t I2C_WriteMultiBytes(I2C_T *i2c, uint8_t u8SlaveAddr, uint8_t data[], uint32_t u32wLen) uint32_t I2C_ReadMultiBytes(I2C_T *i2c, uint8_t u8SlaveAddr.. 더보기