본문 바로가기

WORK/Sotfware241

[SW] 음수 십진수를 16진수로 변환 및 16진수를 음수 표현 -77 의 십진수를 16진수로 표현 하기 위해서는 2진수로 변환이 필요 합니다. -77 에서 -(음수)를 빼고 바이너리 (2진수)로 표현 하면 윈도우 계산기에서 를 이용 할 겁니다. 77 HEX 의 값 77 BIN (2진수) 0111 0111 2진수를 NOT 을 사용 합니다. 정수가 음수가 되면서 앞자리가 FFFF로 변화가 됩니다. 여기서 봐야 할 부분은 BIN(2진수) 입니다. 1000 1000 HEX는 0x88 입니다. 여기에 [ +1 ] 을 합니다. 1000 1001 이 되겠지요? 0x89 가 됩니다. 이 부분이 16진수로 변환 된 것입니다. 반대로 16진수의 음수의 십진수로 변경 할 수 있습니다. 여기서 NOT을 클릭합니다. NOT이 적용 되면 76이 되고 여기에 + 1을 하면 77이 됩니다. 1.. 2024. 1. 24.
[NXP] Breakpoint installation failed: Unmatched Quote 삼각형 모양이 생기면서 break point가 동작 하지 않았습니다. Clean + Rebuild를 해 보라고 합니다. 위의 사진도 그와 같이 동작되는 부분에서 가져온 부분입니다. Breakpoint installation failed: Unmatched Quote 이런 것을 어떻게 처리 해야 할까? 분명 컴파일도 되고, 다운로드도 됩니다. 다만 브레이크 포인트만 안 됩니다. 스탭을 눌러도 되고, 찾아가기도 되고 컴파일러 귀신이 생긴듯합니다. 컴파일 귀신은 내 상상속에만 있는줄 알았습니다. 제가 성공한 경로는 이렇습니다. 0. 띄어쓰기는 없도록 합니다. 만약 있으면 " _ " 로 변경 합니다. 1. 경로를 최단으로 변경 합니다. 2. 프로젝트를 새로 만들어 줍니다. 3. 예제의 이름을 최대한으로 축소합니.. 2024. 1. 6.
[문서] SRS(Software requirements specification) 문서 작성법 SW 개발자가 되면? 겁나 소프트웨어만 할 줄 알았다. 그런데 이런 문서를 이제서야 만들게 되었다. 진작에 알았다면? 일이 더 많았을 것이라는 생각이 들기는 하다. 그런데 체계적인 개발을 위해서라면? 좋은 툴과 함께 스토리를 만들어 가는 과정이 될것이다. SRS 소프트웨어 요구 사항에 대한 스펙이라고 이야기 할 수 있겠다. 개인적으로 한달정도 어떻게 써야 하나? 라고 이곳 저곳을 돌아 다녀 봤다. 예제들이라는것이 차례만 나타나 있다. 결국은 예제를 찾는것은 어렵다. 이유는 개발에 대한 세부적인 이야기가 나와야 하기 때문이다. 개발한 제품의 개발 히스토리도 남게 되니 더더욱 보여줄 수가 없는 것이다. 두리뭉실하게만 보여 주는게 최선이다. SRS는 목적이 중요하다. 꼭 SRS문서만 목적이 중요한것은 아니다... 2023. 12. 28.
[DEV-C++] [Error] invalid conversion from 'void*' to 'Point2D*' [-fpermissive] DEV C++ 을 사용하다 보면 아래와 같은 에러가 발생했습니다. main.c [Error] invalid conversion from 'void*' to 'Point2D*' [-fpermissive] C 언어 메모리와 구조체에 대한 부분이였습니다. ( https://dojang.io/mod/page/view.php?id=438 ) 이 부분의 예제 입니다. 분명 되어야 하는 간단한 예제 입니다. 그런데 위와 같은 에러가 발생 합니다. 이유는 C와 C++ 에대한 문제 였더군요. 예제는 #include #include // memset 함수가 선언된 헤더 파일 struct Point2D { int x; int y; }; int main() { struct Point2D p1; memset(&p1, 0, si.. 2023. 9. 2.
[Github] 깃허브 마우스 클릭 할 줄 알면 바로 사용 이거 저거 다 해 봤습니다. 그중에서 이거만 알면 됩니다. 제목처럼 마우스 클릭만 할 줄 알면 바로 사용 가능 합니다. 미친놈 처럼 들릴 수 있습니다. 기본적으로 설정은 이전 블로그를 참고 해 주세요. https://gangsanilee.tistory.com/2663 [github] 5분만에 GitHub에 소스 저장하는 방법 아주 간단하게 필요한거만, 내가 더 자주 찾아서 사용하기 위해서 작성합니다. 1. GitHub 가입 가입은 간단하게.. 아이디 넣고.. 비번 넣고. 아이디가 경로가 됩니다. 2. 프로젝트 생성 프로젝트를 gangsanilee.tistory.com 위 설정은 등록 과정입니다. 스크롤 압박이 있을 수 있습니다. 사진이 좀 들어가서 입니다. 이제 실행 해 봅니다. 프로그램을 설치 해야 합.. 2023. 8. 30.
[BLE] Advertising & SCAN & SCAN Response 제목과 같이 BLE는 Advertising을 주변에 뿌려 줍니다. 그러면 자신의 짝을 찾으려고 SCAN 동작을 하는 제품이 나타나서 SCAN을 합니다. 이에 자신의 정보를 전달합니다. Central은 핸드폰이 됩니다. 이와 같이 Broadcast 동작을 진행 됩니다. 주기적으로 주변에 메세지를 뿌려줍니다. 핸드폰은 연결을 위해서 SCAN Request를 요청 합니다. 이에 대해서 기기는 응답을 하니다. SCAN Rsponse 메세지를 전송합니다. 자신과 맞지 않으면 메세지를 보내지 않고 다른 기기를 찾게 됩니다. 2023. 8. 29.
[C language] __attribute__((weak)) usage 한 참을 고민하다고, 자료를 모으고 검색을 해서 확인을 했습니다. 간단하게 예제를 만들어서 확인을 하겠습니다. 자세한 설명은 아래의 링크를 참고해 주세요. 간단하게 설명 하자면? 똑같은 이름의 함수를 2개를 쓰게 되었습니다. 과연 어떤 함수를 사용 해야 할까? 입니다. 왜? 똑같은 이름의 함수를 사용하지? 이유는? 인터럽트 부분에서 많이 사용되는 부분 입니다. 미리 지정이 되어 있는 함수들이 있습니다. 그런데 막상 그 함수로 들어가면 사용자가 프로그램을 해야 합니다. 미리 만들어져 있는 함수는 그냥 두고 내가 편한곳에서 함수를 만들고 싶은 충동일 발생하게 됩니다. ( 안 생길수도 있지만, 생긴다고 생각하면서.. ) 그때 동일한 함수를 다른곳에 쓰고 원래 있는 함수는 껍데기로 만들어 버리는거죠. 그러다 막.. 2023. 6. 16.
[Memory Copy][Memory Set] C 언어를 이용한 메모리 저장 소스 메모리를 저장하기 위해서는 특정 함수를 사용하기도 합니다. 이런 함수를 사용하지 못할때를 대비해서 간단하게 함수를 적용하여 사용할 수 있습니다. define을 이용해서 쉽게 접근 할 수 있습니다. define을 이용한 함수를 매크로 함수라고 합니다. 매크로 함수란? C언어에서는 #define 선행처리 지시문에 인수로 함수의 정의를 전달함으로써, 함수처럼 동작하는 매크로를 만들 수 있습니다. 이러한 매크로를 함수 같은 매크로(function-like macro) 또는 매크로 함수라고 합니다. 매크로 함수를 사용할때는 주의 사항을 반드시 숙지하시고 사용하시기 바랍니다. 참조 : http://www.tcpschool.com/c/c_prepro_macroFunc Memory Copy는 Dest 에 Src 를 저.. 2023. 1. 18.
[FreeRTOS] FreeRTOS 에 대한 공부 - 1 FreeRTOS는 생각보다 많은 곳에서 사용되고 있더군요. 어디에요? 글쎄요~ ㅎ프로그램에 대한 공부를 하다보니 이 부분을 빼 놓고 갈 수 없는 부분이 되었습니다. 동작을 공부 해 보기로 했습니다. 시작하고 끝을 내기 위해서 .. 그렇다고 끝이 언제 인가? 라고 물어 본다면? 끝은 없겠죠? 기본적인 이론들은 많이 나와 있을거라 말해야 하나? 라는 생각이 들면서도.. 이론도 모르면서 이렇게 써야 하나? 라는 생각도 듭니다. 공부를 하는 마음 가짐을 가지면서 진행해 봅니다. 아래 사진은 테스크의 기본적인 동작 방식 입니다. 테스크는 하나의 동작이라고 생각합니다. 여러개의 일을 책상에 놓아 둔다 가정해 봅니다. 책이 될 수도 있겠내요. 동화, 소설, 자기계발서 등등... 처음에는 2권정도 놓아 둡니다. 동화와.. 2022. 12. 6.
728x90