본문 바로가기

[SourceInsight] 소스인사이트 팁5 : 오래된 창을 닫아주는 매크로 이매크로는 아래의 코드중에 4라고 세팅된 수만큼의 코드윈도우를 제외하고 모두 닫아 버리는 기능을 합니다. 수천개의 소스를 탐색하고 돌아다니다 보면 자신도 모르게 많은 창을 띄우게 되는데 이중에 가장 최근에 보았던 창을 제외 하고 모두 닫아 버리는 센스 입니다. /* // Closes all but the most recently visited windows and files. // Any dirty files are kept open. */ macro CloseOldWindows() { var hwnd var cWnd // This is the number of recent windows to keep open. You may change // this constant to suit your needs... 더보기
[SourceInsight] 소스인사이트 닙4 : 선택한 영역의 소스 비활성화 시키는 매크로 #if 0 ~ #endif로 코드를 비활성 시키는 동작을 하게 합니다. 편집시 선택을 한부분에서 키동작으로 이매크로를 실행 시키면 그부분의 아래위가 #if 0 ~ #endif로 작성되어 코드를 비활성 시킵니다. /*==================================================================== Create by sparrow Unused Code Block #if 0 unused code #endif ====================================================================*/ macro UnUsedCodeBlock() { hbuf = GetCurrentBuf(); hwnd = GetCurrentWnd(); sel.. 더보기
[SourceInsight] 소스인사이트 팁3 : if나 switch문의 뼈대를 작성해주는 매크로 아래의 매크로 역시 C++빌더 의 Ctrl + J 키를 흉내낸것입니다. if 나 switch등의 자주 이용하는 키워드의 뼈대를 작성해주는 코드입니다. /*==================================================================== Create by sparrow Ctrl + J (C++Builder Code Generation function. ====================================================================*/ macro CodeCompletation() { hbuf = GetCurrentBuf() ln = GetBufLnCur(hbuf) line = GetBufLine(hbuf,ln) DelBufL.. 더보기
[SourceInsight] 소스인사이트 팁2 : 소스와 같은 이름의 헤더파일을 여는 매크로 아래의 매크로는 C/ C++ 소스를 보는 중 같은 이름의 헤더 파일을 열도록 하는 매크로 입니다. C++빌더 의 경우 F6키와 같은 동작을 합니다. 이러한 매크로를 작성 하기 위해서는 도움말의 매크로 랭귀지를 살작 참조해가면서 작성하고 매크로 .em파일을 base프로젝트에 추가하여 작성한다음 Option -> Preference -> Symbol Lookups 페이지에 Project symbol path에 base프로젝트를 추가해주고 Menu나 Key Assign으로 해두면 이용 할수 있습니다. /*==================================================================== Create by sparrow 2005.09.30 Open C Source or H.. 더보기
[SourceInsight] 소스인사이트 팁1 : 매크로를 이용한 한글 주석 소스 인사이트 사용시 가장 불편한 점은 한글 입력이 제대로 되지 않는 다는 점이다. 이것은 유니코드 입력을 지원하지 않아 생기는 문제인데, 보통은 쌍자음의 입력시 커서를 앞으로 하나 옮겨 del키로 한번 삭제하여 수정이 가능하다. 다만 이 방법은 무지 귀찮은데 이것을 좀 더 편하게 해결할 수 있는 방법을 찾다가 아래와 같은 포스팅을 찾게 되었다. 원문 : Sourceinsight(소스인사이트) 에서 한글 주석 입력하기. -매크로이용 첫번째 먼저 위에 링크된 파일을 My Documents\Source Insight\Projects\Base 에 다운받습니다. 소스인사이트를 열고 base 프로젝트를 열어서 다운받은 파일을 프로젝트에 추가합니다. (중요~) (보시면 아시겠지만 hangulcmt 함수 달랑 하나 .. 더보기
[Visual Studio] IE 8.0 업데이트 후 VS2005, VS2008 class wirzard 스크립트 오류해결방법 1. regedit 실행 2. "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones" 항목에 "1000"키 생성 3. "1000"키 항목에 DWORD값 추가 이름 : 1207 값 : 0x000000 출처 : http://clansim.tistory.com/100 더보기
[LM3S8962] UART driverlib/uart.c driverlib/uart.h 1. UART 이용하기 1.1 UART 전제기능 Stellaris 제품군의 UART 특징 - IrDA를 지원하는 2개의 programmable 16C550-type UARTs 제공 - 16*8 bit receiver FIFO , 16*8 bit transmit FIFO 기능 - Baud rate를 설정 가능 (3.125Mbps까지) - 1/8, 1/4, 1/2, 3/4, 7/8의 FIFO 트리거 레벨 - IrDA serial-IR (SIR) encoder/decoder - DMA interface UARTIFLS - UART Interrupt FIFO Level Select UARTIM - UART Interrupt Mask UARTMIS - .. 더보기
[LM3S8962] SysTick 1. SysTick SysTick의 함수 prototype 1.1 SysTick의 간단한 소개 SysTick은 Cortex-M3 microprocessor의 NVIC controller에서 심플한 타이머의 한 부분 이다. 이것은 RTOS의 주기적인 인터럽트를 제공하기 위한 의도이지만 단순한 타이밍 목적으로도 사용한다. SysTick Interrupt 핸들러는 SysTick Interrupt Clear 소스가 필요하지 않다. SysTick 핸들러가 Call되었을때 자동적으로 처리한다. 1.2 SysTick의 기본 컨트롤/ 인터럽트 컨트롤 SysTickPeriodSet() 기능 SysTick Count의 주기를 세팅 원형 void SysTickPeriodSet(unsigned long ulPeriod) 변수.. 더보기
[LM3S8962] interrupt LM3S8962 Interrupt 예제에 대하여 분석해 보았다. 우선 예제코드를 다운받는다. Link : http://www.zlgmcu.com/luminary/exploitation_guide.asp 위의 링크된 사이트에 가서 3개의 파일 모두를 받는다. 맨 위의 pdf 문서는 interrupt libary를 설명한 문서이고, 아래의 두개의 zip 파일은 예제코드이다. 제1장. 인터럽트 제어 LM3SLib_Interrupt.pdf 문서의 초반부에 함수의 prototype에 대하여 설명하고 있다. 1.1 인터럽트 기본 프로그래밍 방법 Stellaris는 인터럽트를 위해 다음과 같은 Periperal Driver library가지고 있다. 1. Periperal 활성화 관련 인터럽트를 사용하기 위해서는 에.. 더보기
[LM3S8962] Bit band, 레지스터 접근법 Cortex-M3에서 제공되는 Bit Banding 기능을 알아보고 기존의 방식과 속도면에서 어떤 차이점이 있는지 어셈크드를 통해 알아보았다. 1. Bit Banding이란? Bit banding은 간단하게 말하면 bit operation을 빠르게 해줄 수 있는 방법을 제공, 즉 어떤 레지스터의 특정 비트를 1이나 0으로 변경하는 것을 매우 빠르고 쉽게 해줄 수 있는 것. 이것이 가능한 것은 하드웨어적으로 어떤 특정 비트를 각각 어떤 특정 어드레스에 할당을 해놓고 있는 것이다. SRAM부분과 Peripheral 부분에 이상한 형태의 내용이 있는 것이 보인다. bit band region 이라는 것이 있고, bit band alias라는 내용이 있다. 각각 공간은 1MB와 32MB가 잡혀 있다. alias.. 더보기