'C++'에 해당되는 글 8건

  1. 2021.07.23 Eclipse CDT C++11 사용 설정(#include <thread>)
  2. 2021.05.13 프로젝트에 리소스로 PNG파일 추가
  3. 2021.04.26 CAN통신 메모 1
  4. 2020.11.27 MFC Char* to CString
  5. 2020.10.22 매개변수로 배열 전달시 sizeof 문제
  6. 2020.10.15 CString to float/float to Byte/Byte to Float
  7. 2020.10.12 MFC CString to Char*
  8. 2020.09.17 MFC 강의, 참고

Eclipse CDT C++11 사용 설정(#include <thread>)

C++/problemsC++ 2021. 7. 23. 13:55

https://iamaman.tistory.com/1391

 

Eclipse CDT C++11 사용 설정

아래 포스팅에서 range based for loops 에 대해 소개 드린 적이 있는데요~   2014/03/02 - [programming language/C/C++] - C++ range based for loops Eclipse에서 Range Based For Loops 를 사용하기 위해서 C..

iamaman.tistory.com

 

'C++ > problemsC++' 카테고리의 다른 글

MFC Char* to CString  (0) 2020.11.27
매개변수로 배열 전달시 sizeof 문제  (0) 2020.10.22
MFC CString to Char*  (0) 2020.10.12
:

프로젝트에 리소스로 PNG파일 추가

C++/MFC 2021. 5. 13. 15:51

https://blog.naver.com/tipsware/221149552575

 

프로그램 Resource에 PNG 추가하고 사용하기

: Win32 프로그래밍 관련 전체 목차 http://blog.naver.com/tipsware/2210599771931. Resource에 이미지 ...

blog.naver.com

 

'C++ > MFC' 카테고리의 다른 글

CString to float/float to Byte/Byte to Float  (0) 2020.10.15
MFC 강의, 참고  (0) 2020.09.17
:

CAN통신 메모 1

C++/CubeMX 2021. 4. 26. 18:37

//can.h

/* USER CODE BEGIN Private defines */
extern CAN_FilterTypeDef canFilter1;//수신시 필터 설정(수신에서만 사용)
extern CAN_RxHeaderTypeDef canRxHeader;//수신받은 데이터의 헤더 정보 저장
extern CAN_TxHeaderTypeDef canTxHeader;//송신하는 데이터의 헤더 정보 저장
extern uint8_t can1Rx0Data[8];//수신 할 데이터 저장하는 변수
extern uint32_t TxMailBox;
extern uint8_t can1Tx0Data[8];//송신 할 데이터 저장하는 변수
/* USER CODE END Private defines */


//can.c

/* USER CODE BEGIN 0 */
CAN_FilterTypeDef canFilter1;//수신시 필터 설정(수신에서만 사용)
CAN_RxHeaderTypeDef canRxHeader;//수신받은 데이터의 헤더 정보 저장
CAN_TxHeaderTypeDef canTxHeader;//송신하는 데이터의 헤더 정보 저장
uint8_t can1Rx0Data[8];//수신 할 데이터 저장하는 변수
uint32_t TxMailBox;
uint8_t can1Tx0Data[8];//송신 할 데이터 저장하는 변수
/* USER CODE END 0 */

 

//main.c

/* USER CODE BEGIN 2 */
  //CAN Filter 설정
  canFilter1.FilterMaskIdHigh = 0xFF8 << 5;//FilterMaskID <<5하는 이유는 상위 레지스터에 할당되어 있기 떄문 그냥 쓰셈
  canFilter1.FilterIdHigh = 0x100 << 5;//FilterID
  canFilter1.FilterMaskIdLow = 0xFF8 << 5;
  canFilter1.FilterIdLow = 0x100 << 5;
  canFilter1.FilterMode = CAN_FILTERMODE_IDMASK;
  canFilter1.FilterScale = CAN_FILTERSCALE_16BIT;
  canFilter1.FilterFIFOAssignment = CAN_FILTER_FIFO0;
  canFilter1.FilterBank = 0;
  canFilter1.FilterActivation = ENABLE;
  
  HAL_CAN_ConfigFilter(&hcan1, &canFilter1);
  HAL_CAN_ActivateNotification(&hcan1, CAN_IT_RX_FIFO0_MSG_PENDING);//수신 인터럽트 설정
  
  HAL_CAN_Start(&hcan1);//CAN통신 시작 코드
  /* USER CODE END 2 */

//main.c
while
(1)

{

  /* USER CODE END WHILE */

   if(SW1_flag)//CAN통신 송신부 //시리얼통신 들어온 뒤로 옮길 것

   {

   SW1_flag = 0;

   canTxHeader.StdId = 0x102;

   canTxHeader.RTR = CAN_RTR_DATA;

   canTxHeader.IDE = CAN_ID_STD;

   canTxHeader.DLC = 8;

 

   for(int i = 0; i<8; i++)

   {

       can1Tx0Data[i]++;

   }

   TxMailBox = HAL_CAN_GetTxMailboxesFreeLevel(&hcan1);

   HAL_CAN_AddTxMessage(&hcan1, &canTxHeader, &can1Tx0Data[0], &TxMailBox);

}

/* USER CODE BEGIN 3 */

}

/* USER CODE END 3 */

 

참고 영상

www.youtube.com/watch?v=84IAJDuJdxc

www.youtube.com/watch?v=6vR3lX8ojDA

www.youtube.com/watch?v=T65WpTyv8Po

 

:

MFC Char* to CString

C++/problemsC++ 2020. 11. 27. 11:00

char* to CString

Type Casting을 통해 간단하게 사용.

    ex) CString strTemp;
         char     buffer[MAX_PATH];
         strTemp = (LPSTR)buffer; //LPSTR은 char*형을 CString형으로 형변환 한다.

'C++ > problemsC++' 카테고리의 다른 글

Eclipse CDT C++11 사용 설정(#include <thread>)  (0) 2021.07.23
매개변수로 배열 전달시 sizeof 문제  (0) 2020.10.22
MFC CString to Char*  (0) 2020.10.12
:

매개변수로 배열 전달시 sizeof 문제

C++/problemsC++ 2020. 10. 22. 10:19

매개변수로 배열 전달시 배열이 주소값을 넘겨주므로
메서드 안에서 sizeof 함수를 사용하면, 포인터의 길이를 넘겨줌ㅠㅠ

https://m.blog.naver.com/PostView.nhn?blogId=tipsware&logNo=220993190781&proxyReferer=https:%2F%2Fwww.google.com%2F

'C++ > problemsC++' 카테고리의 다른 글

Eclipse CDT C++11 사용 설정(#include <thread>)  (0) 2021.07.23
MFC Char* to CString  (0) 2020.11.27
MFC CString to Char*  (0) 2020.10.12
:

CString to float/float to Byte/Byte to Float

C++/MFC 2020. 10. 15. 14:28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
void CMFCApplication1Dlg::OnBnClickedButton1()
{
    CString strTest;
 
    //CString to float
    CString str;
    GetDlgItemText(IDC_EDIT1, str); 
    float f = _tstof(str);
 
    strTest.Format(_T("%.4f"), f);
    AfxMessageBox(strTest);
    
    //float to Byte
    unsigned char* upt;
    int iCnt;
    upt = (unsigned char*)&f;
 
    strTest.Format(_T("%02X, %02X, %02X, %02X"), upt[3], upt[2], upt[1], upt[0]);
    AfxMessageBox(strTest);
 
    //Byte to float
    unsigned char b[] = { upt[0], upt[1], upt[2], upt[3] }; //4byte
    memcpy(&f, &b, sizeof(float));
 
    strTest.Format(_T("%.4f"), f);
    AfxMessageBox(strTest);
}
cs



//참고 
//CString to float

https://docs.microsoft.com/ko-kr/cpp/c-runtime-library/reference/atof-atof-l-wtof-wtof-l?view=vs-2019


//float to Byte
https://zapiro.tistory.com/entry/4-byte-float-format-float-%ED%98%95%EC%9D%98-%EC%8B%A4%EC%88%98-%EC%A0%80%EC%9E%A5-%EB%B0%A9%EC%8B%9D


//Byte to float

https://mols.tistory.com/10

'C++ > MFC' 카테고리의 다른 글

프로젝트에 리소스로 PNG파일 추가  (0) 2021.05.13
MFC 강의, 참고  (0) 2020.09.17
:

MFC CString to Char*

C++/problemsC++ 2020. 10. 12. 10:43

출처 : https://skql.tistory.com/559
===============================본문================================
CString 에서 Char* (배열)

UDP 소켓 통신하면서

CString으로 받은 값을 Char* 로 센드 시켰을때

길이는 맞게 오는데 자꾸 한글자만 나와 ㅠ.ㅠ

구글링 네이뇬 검색 하면 아래 와 비슷한 내용들 많이 나오는데...

방법은
1. (LPSTR)(LPCTSTR)로 강제 형변환
2. CString str;
   str.GetBuffer(str.GetLength());
   해주시면 char *을 리턴합니다.
ps. 위 두가지 방법중에 2번을 추천합니다.
      그리고 GetBuffer를 사용하시면 ReleaseBuffer()를 사용해서 해제해 주셔야합니다.


CString msg = "abcdefg";
char* tempchar;

tempchar = LPSTR(LPCTSTR(msg));
머 요런식으로 해서

strlen(tempchar) === 1
msg.getLength === 6

머냐고요~~~

strcpy
memcpy 다 1글자씩 밖에 안드감 ㅠ.ㅠ


다시 구글링(해결법)


char Buffer[255];
CString szString;
size_t CharactersConverted = 0;

wcstombs_s(&CharactersConverted, Buffer, szString.GetLength()+1, szString, _TRUNCATE);


위방법 ㅠ.ㅠ

3시간 정도 찾은거 같아 ㅠ.ㅠ

비록 땃짓도 많이 했지만 C#은 간단하구 좋았는데..

VS2005 VC++ 대략 알고리즘 짜는데 시간이 가는게 아니라... 타입케스팅 하다가 시간이 다 가버림 ㅠ.ㅠ 쥘쥘쥘쥘 꺼우져!!!!!!!

'C++ > problemsC++' 카테고리의 다른 글

Eclipse CDT C++11 사용 설정(#include <thread>)  (0) 2021.07.23
MFC Char* to CString  (0) 2020.11.27
매개변수로 배열 전달시 sizeof 문제  (0) 2020.10.22
:

MFC 강의, 참고

C++/MFC 2020. 9. 17. 17:52

https://www.youtube.com/playlist?list=PLiZvlxkcLhalUHK9UnRS_KweH9R3tgBIO"

유튜브 강의

https://yyman.tistory.com/category/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4%28SW%29/MS%20-%20C++%20%28GUI%29%20MFC


정리된 블로그1

'C++ > MFC' 카테고리의 다른 글

프로젝트에 리소스로 PNG파일 추가  (0) 2021.05.13
CString to float/float to Byte/Byte to Float  (0) 2020.10.15
: