[C/C++ Tip] 1. 개발하기 전, typedef 별명 부여.
·
🔷 C언어 30강
#define은 왜 사용하는 걸까?단순히 상수 처리하기 위해 define을 사용하는 것일까? 이를 알기 위해선 소스 코드의 변환 과정을 알 필요가 있다. ​ ⭐1. Build 순서Build의 순서는 아래와 같다. exe 파일 생성 : 소스코드 -> 전처리 -> 컴파일 -> 링크 -> 실행 mcu 헥사 파일 생성 : 소스코드 -> 전처리 -> 컴파일 -> 어셈블리어 변환 -> 헥사 파일 생성 -> MCU 다운로드 ​ C언어를 처음 공부할 때, #define을 사용하지 않으면 전처리 과정을 거치지 않는다고 생각한 적이 있다. #으로 시작하는 문장은 전부 전처리기 지시자임에도 #include는 전처리기라고 생각하지 않았다. 항상 C언어를 실습할 때, 의무적으로 #inlcude 를 작성한 폐해이다. ​⭐2. 전..
[한글] 학위 논문 작성을 위한 팁
·
일상
1. 표현은 최대한 통일 할 것. 2. 그림의 폰트 사이즈와 본문의 글씨 사이즈가 같을 것. 3. 되도록이면 그림은 직접 다시 그릴 것. 4. 수학 식 표현 주의할 것. - 행렬이나 벡터와 같이 혼동하기 쉬운 표현들을 잘 구별할 것. 5. 그림 한글 파일에 추가할 때. 보통은 그림을 그릴 때, PPT나 VISIO를 통해서 그림을 그린다. JPG, PNG로 그림으로 첨부하게 되면 확대 했을 때 그림이 깨진다. 그러므로 벡터 형식으로 저장되는 emf 파일로 저장할 것. emf 파일로 한글 파일에 던지면, 확대하더라도 그림은 깨지지 않는다. 안 깨지는 것을 확인. 6. 최대한 일반적인 표현을 쓸 것. 7. 참고 문헌은 최대한 최신 날짜의 것을 사용할 것. 8. 실험 결과 및 성능 평가에 대한 분석은 최대한 정..
한글... 학위 논문에 참고 문헌 넣을 때, 참고할 것. 양쪽정렬
·
일상
회사 다니면서 쉴 날없이 논문 작업 중. 까먹을 것 같아서 메모로 남겨 둠. 우리 학교 논문은 IEEE 형식을 따라가므로 아래 참고 문헌 표기 가이드를 참고할 것. https://journals.ieeeauthorcenter.ieee.org/wp-content/uploads/sites/7/IEEE_Reference_Guide.pdf 논문에 online 레퍼런스를 추가할 때, 아래 예시처럼 URL 때문에 양쪽 정렬이 굉장히 안이쁘게 나오는 경우가 많음. 이럴 땐, 해당 레퍼런스 블록 처리 하고나서 [편집] - [문단 모양] 클릭 함. 줄 나눔 기준에서 영어 단위를 단어에서 글자로 변경한다. 끝.
[C언어] 포인터의 이해
·
C, C++
보통 C언어에서 가장 어려워하는 부분은 포인터이다. 이 포스팅은 어떻게 하면 포인터를 더 쉽게 이해할 수 있을까 에 대한 경험과 고민이 섞여 있다. 회사 후배가 프로젝트 소스 코드를 보고 덕지덕지 추가되어 있는 포인터 인자들을 보고 지레 겁을 먹고 포인터에 대한 질문을 종종 한다. 요즘엔 대학교에서는 학생들이 C언어를 그리 선호하지 않는 것 같다. 아무래도 Low Level 언어인 C는 개발자들에게 불친절하고 포인터라는 큰 벽이 있고, 특히 Computer Science(CS) 분야가 각광받으면서 파이썬 위주로 프로젝트를 진행하기 때문 아닐까 추측해본다. (Low Level 언어 : 컴퓨터 중심 언어, 속도가 생명. High Level 언어 : 사람 중심 언어, 개발은 Low Level 보다 간단하나 속..
2byte 정수를 1byte 배열로 나누기 (Feat. EEPROM)
·
C, C++
MCU는 전원이 꺼지고 켜진 경우 (POR : Power on Reset) 처리된 데이터(static 변수, 지역 변수, 매개 변수) 들은 메모리 상에서 남아있지 않고 사라진다. 그래서 MCU가 꺼지고 다시 켜졌을 경우, 데이터를 저장해야 할 때가 있다. 아두이노는 이 역할을 하는 내장 메모리가 있으며, 이를 EEPROM이라고 한다. (하드 디스크처럼 기간과 횟수가 그리 많지 않음.) (초기 ROM(Read Only Memory)로 오로지 공장에서 출하 과정에서 메모리에 write가 되면, 그 이 후부턴 read 밖에 할 수 없었음. read 만 할 수 있는 문제를 해결하기 위해 자외선을 통해 몇 번의 write를 할 수 있는 EPROM이 개발됨. 조금 더 시간이 흘러 자외선이 아닌 전기로 write가 ..
네이버 블로그 자동 공감 누르기
·
🐍 Python/Project
제목 그대로다. 네이버 블로그도 인스타, 트위터처럼 좋아요 버튼이 있다. 바로 공감하기 이다. 말 그대로 나와 이웃된 블로거들의 포스팅에 공감을 눌러주는 매크로 프로그램이다. 아래 영상은 데모영상이다. https://youtu.be/1_RBb1bjl48?si=VR2HDsotghQVmPEj
네이버 블로그 서로 이웃 추가 프로그램 ver1.0, ver2.0
·
🐍 Python/Project
저는 티스토리 뿐만 아니라 네이버 블로그도 운영했고 요새 정신이 없어서 포스팅을 그만 둔 상태였습니다. 오랜만에 네이버 블로그를 들어 갔는데 아래와 같이 네이버측에 경고를 받았습니다. 하나가 아니라 여러 글에 대해서 경고를 받음... 네이버 블로그 서로 이웃을 추가해주는 프로그램을 버전 별로 정리해서 포스팅했는데 그걸 전부 비공개 처리가 된 것. 작년에 만든 프로그램이지만, 만들어 놓은게 아까워서 티스토리에 올리기로 했습니다. 네이버 블로그 서로이웃 추가 프로그램 ver1.2 로컬을 찾아보니 초기 버전을 찾을 수 있었음. QT를 이용해 오밀조밀하게 한 레이아웃에서 전부 처리할 수 있게 만들었었음. 저 때는 사용안하는 네이버 계정으로 테스트했던 것을 알 수 있음. 네이버 블로그 서로이웃 추가 프로그램 ve..
그래픽 카드 3080Ti로 교체...
·
일상/컴퓨터
3080ti를 싸게 아는 분께 구해와서 교체한 사진이다. 기존에 쓰던 그래픽 카드를 대신해서 3080ti를 교체했다. 어차피 내가 하는 게임은 오버워치 밖에 없기 때문에 솔직히 2060도 충분하다. 하지만 컴퓨터를 좋아하는 사람들은 장비를 업그레이드 하는 손맛 때문에 멈출 수 없다. 200Hz 모니터를 이제 360Hz로 바꾸는게 목표이다. 이유는 모르겠지만 결국 게임 사양에는 변화가 없지만 티어가 1티어씩 오르긴 했다... 2060 그래픽 카드는 당근에서 판매할려고 했는데 어머니 컴퓨터에 달아드렸다. 생각보다 케이스가 작아서 그래픽 카드를 넣는데 애 좀 먹었다. 단점 : 그래픽 카드가 기존보다 너무 열을 많이 발생한다. 모니터를 바꾸지 않는 이상 3080ti로 바꾼 의미가 없다... 다음 떡값 받을 때 ..
[AVR] 아두이노 우노 UART 통신하기
·
🦾AVR
마이크로컨트롤러에서 사용할 수 있는 범용 입출력 핀의 수는 많지 않으므로 직렬 통신이 사용된다. 직렬 통신은 1개의 입출력 핀을 통해 8개 비트를 8번에 나누어 전송하는 방식이다. 직렬 통신 중 가장 흔히 사용되는 UART로 진행한다. UART 통신은 전이중 통신으로 송신과 수신을 동시에 진행할 수 있으며 이를 위해서 2개의 범용 입출력 핀이 필요하다. ATMega328(아두이노 우노 칩에서 사용되는)에서는 PD0 핀과 PD1 핀이 사용된다. (아두이노 우노는 0, 1핀이다.) /* * UART_TEST.c * * Created: 2023-06-20 오후 8:46:56 * Author : Yoon */ #define F_CPU 16000000L #include #include void UART_INIT(..
아트멜 스튜디오 시작하기.
·
🦾AVR
ISP 장치 : AVRISP-MKII (IOT-ISP-MK2) https://www.devicemart.co.kr/goods/view?no=1386293 AVRISP-MKII AVR프로그래머 [IOT-ISP-MK2] ISP전용 AVR 프로그래머 / AVRISP MKII 호환 / MS-Windows7,8,10 지원 / 사이즈:16mm*69mm www.devicemart.co.kr 해당 ISP 장치 드라이버 : https://www.wch.cn/download/CH341SER_ZIP.html 아트멜 스튜디오 설치 경로 : https://www.microchip.com/en-us/tools-resources/develop/microchip-studio#Downloads [File] - [New] - [Proj..
18진수
'분류 전체보기' 카테고리의 글 목록 (7 Page)