2012년 7월 10일 화요일
2012년 7월 8일 일요일
PIC18F45K20 Configuration Settings
microchip의 PIC용 MPLAB C 컴파일러에서 작업할 때, C 소스에서 특정 레지스터 값을
#pragma config FOCS = INITO67;
이런 형식으로 지정할 수 있다. 이렇게 설정 할 수 있는 항목과 값들은 특정 mcu 마다 다르며, 그 내용은 mplab c 컴파일러가 설치된 곳의 doc 디렉토리에서 도움말 화일을 참조하여 알 수 있다. 또는 mpasm 디렉토리의 해당 mcu의 *.inc 화일에서 참조 할 수 있다.
다음은 PIC18F45K20의 configuration Setting 이다.
;========================================================================== ; ; IMPORTANT: For the PIC18 devices, the __CONFIG directive has been ; superseded by the CONFIG directive. The following settings ; are available for this device. ; ; Oscillator Selection bits: ; FOSC = LP LP oscillator ; FOSC = XT XT oscillator ; FOSC = HS HS oscillator ; FOSC = RC External RC oscillator, CLKOUT function on RA6 ; FOSC = EC EC oscillator, CLKOUT function on RA6 ; FOSC = ECIO6 EC oscillator, port function on RA6 ; FOSC = HSPLL HS oscillator, PLL enabled (Clock Frequency = 4 x FOSC1) ; FOSC = RCIO6 External RC oscillator, port function on RA6 ; FOSC = INTIO67 Internal oscillator block, port function on RA6 and RA7 ; FOSC = INTIO7 Internal oscillator block, CLKOUT function on RA6, port function on RA7 ; ; Fail-Safe Clock Monitor Enable bit: ; FCMEN = OFF Fail-Safe Clock Monitor disabled ; FCMEN = ON Fail-Safe Clock Monitor enabled ; ; Internal/External Oscillator Switchover bit: ; IESO = OFF Oscillator Switchover mode disabled ; IESO = ON Oscillator Switchover mode enabled ; ; Power-up Timer Enable bit: ; PWRT = ON PWRT enabled ; PWRT = OFF PWRT disabled ; ; Brown-out Reset Enable bits: ; BOREN = OFF Brown-out Reset disabled in hardware and software ; BOREN = ON Brown-out Reset enabled and controlled by software (SBOREN is enabled) ; BOREN = NOSLP Brown-out Reset enabled in hardware only and disabled in Sleep mode (SBOREN is disabled) ; BOREN = SBORDIS Brown-out Reset enabled in hardware only (SBOREN is disabled) ; ; Brown Out Reset Voltage bits: ; BORV = 30 VBOR set to 3.0 V nominal ; BORV = 27 VBOR set to 2.7 V nominal ; BORV = 22 VBOR set to 2.2 V nominal ; BORV = 18 VBOR set to 1.8 V nominal ; ; Watchdog Timer Enable bit: ; WDTEN = OFF WDT is controlled by SWDTEN bit of the WDTCON register ; WDTEN = ON WDT is always enabled. SWDTEN bit has no effect ; ; Watchdog Timer Postscale Select bits: ; WDTPS = 1 1:1 ; WDTPS = 2 1:2 ; WDTPS = 4 1:4 ; WDTPS = 8 1:8 ; WDTPS = 16 1:16 ; WDTPS = 32 1:32 ; WDTPS = 64 1:64 ; WDTPS = 128 1:128 ; WDTPS = 256 1:256 ; WDTPS = 512 1:512 ; WDTPS = 1024 1:1024 ; WDTPS = 2048 1:2048 ; WDTPS = 4096 1:4096 ; WDTPS = 8192 1:8192 ; WDTPS = 16384 1:16384 ; WDTPS = 32768 1:32768 ; ; CCP2 MUX bit: ; CCP2MX = PORTBE CCP2 input/output is multiplexed with RB3 ; CCP2MX = PORTC CCP2 input/output is multiplexed with RC1 ; ; PORTB A/D Enable bit: ; PBADEN = OFF PORTB<4:0> pins are configured as digital I/O on Reset ; PBADEN = ON PORTB<4:0> pins are configured as analog input channels on Reset ; ; Low-Power Timer1 Oscillator Enable bit: ; LPT1OSC = OFF Timer1 configured for higher power operation ; LPT1OSC = ON Timer1 configured for low-power operation ; ; HFINTOSC Fast Start-up: ; HFOFST = OFF The system clock is held off until the HFINTOSC is stable. ; HFOFST = ON HFINTOSC starts clocking the CPU without waiting for the oscillator to stablize. ; ; MCLR Pin Enable bit: ; MCLRE = OFF RE3 input pin enabled; MCLR disabled ; MCLRE = ON MCLR pin enabled; RE3 input pin disabled ; ; Stack Full/Underflow Reset Enable bit: ; STVREN = OFF Stack full/underflow will not cause Reset ; STVREN = ON Stack full/underflow will cause Reset ; ; Single-Supply ICSP Enable bit: ; LVP = OFF Single-Supply ICSP disabled ; LVP = ON Single-Supply ICSP enabled ; ; Extended Instruction Set Enable bit: ; XINST = OFF Instruction set extension and Indexed Addressing mode disabled (Legacy mode) ; XINST = ON Instruction set extension and Indexed Addressing mode enabled ; ; Background Debugger Enable bit: ; DEBUG = ON Background debugger enabled, RB6 and RB7 are dedicated to In-Circuit Debug ; DEBUG = OFF Background debugger disabled, RB6 and RB7 configured as general purpose I/O pins ; ; Code Protection Block 0: ; CP0 = ON Block 0 (000800-001FFFh) code-protected ; CP0 = OFF Block 0 (000800-001FFFh) not code-protected ; ; Code Protection Block 1: ; CP1 = ON Block 1 (002000-003FFFh) code-protected ; CP1 = OFF Block 1 (002000-003FFFh) not code-protected ; ; Code Protection Block 2: ; CP2 = ON Block 2 (004000-005FFFh) code-protected ; CP2 = OFF Block 2 (004000-005FFFh) not code-protected ; ; Code Protection Block 3: ; CP3 = ON Block 3 (006000-007FFFh) code-protected ; CP3 = OFF Block 3 (006000-007FFFh) not code-protected ; ; Boot Block Code Protection bit: ; CPB = ON Boot block (000000-0007FFh) code-protected ; CPB = OFF Boot block (000000-0007FFh) not code-protected ; ; Data EEPROM Code Protection bit: ; CPD = ON Data EEPROM code-protected ; CPD = OFF Data EEPROM not code-protected ; ; Write Protection Block 0: ; WRT0 = ON Block 0 (000800-001FFFh) write-protected ; WRT0 = OFF Block 0 (000800-001FFFh) not write-protected ; ; Write Protection Block 1: ; WRT1 = ON Block 1 (002000-003FFFh) write-protected ; WRT1 = OFF Block 1 (002000-003FFFh) not write-protected ; ; Write Protection Block 2: ; WRT2 = ON Block 2 (004000-005FFFh) write-protected ; WRT2 = OFF Block 2 (004000-005FFFh) not write-protected ; ; Write Protection Block 3: ; WRT3 = ON Block 3 (006000-007FFFh) write-protected ; WRT3 = OFF Block 3 (006000-007FFFh) not write-protected ; ; Configuration Register Write Protection bit: ; WRTC = ON Configuration registers (300000-3000FFh) write-protected ; WRTC = OFF Configuration registers (300000-3000FFh) not write-protected ; ; Boot Block Write Protection bit: ; WRTB = ON Boot Block (000000-0007FFh) write-protected ; WRTB = OFF Boot Block (000000-0007FFh) not write-protected ; ; Data EEPROM Write Protection bit: ; WRTD = ON Data EEPROM write-protected ; WRTD = OFF Data EEPROM not write-protected ; ; Table Read Protection Block 0: ; EBTR0 = ON Block 0 (000800-001FFFh) protected from table reads executed in other blocks ; EBTR0 = OFF Block 0 (000800-001FFFh) not protected from table reads executed in other blocks ; ; Table Read Protection Block 1: ; EBTR1 = ON Block 1 (002000-003FFFh) protected from table reads executed in other blocks ; EBTR1 = OFF Block 1 (002000-003FFFh) not protected from table reads executed in other blocks ; ; Table Read Protection Block 2: ; EBTR2 = ON Block 2 (004000-005FFFh) protected from table reads executed in other blocks ; EBTR2 = OFF Block 2 (004000-005FFFh) not protected from table reads executed in other blocks ; ; Table Read Protection Block 3: ; EBTR3 = ON Block 3 (006000-007FFFh) protected from table reads executed in other blocks ; EBTR3 = OFF Block 3 (006000-007FFFh) not protected from table reads executed in other blocks ; ; Boot Block Table Read Protection bit: ; EBTRB = ON Boot Block (000000-0007FFh) protected from table reads executed in other blocks ; EBTRB = OFF Boot Block (000000-0007FFh) not protected from table reads executed in other blocks ; ;========================================================================== ;========================================================================== ; ; Configuration Bits ; ; NAME Address ; CONFIG1H 300001h ; CONFIG2L 300002h ; CONFIG2H 300003h ; CONFIG3H 300005h ; CONFIG4L 300006h ; CONFIG5L 300008h ; CONFIG5H 300009h ; CONFIG6L 30000Ah ; CONFIG6H 30000Bh ; CONFIG7L 30000Ch ; CONFIG7H 30000Dh ; ;==========================================================================
2012년 7월 5일 목요일
Ateml JTAGICE3
Syntax Highlighter를 구글 블로그(blogspot, blogger)에
참고 사이트 : http://anshnote.blogspot.kr/2011/07/syntax-highlighter-blogger.html
디자인 -> 템플릿디자이너 -> 고급 -> css추가
이제는 다음과 같이 사용.
class 속성에 사용할 수 있는 언어 코드
디자인 -> 템플릿디자이너 -> 고급 -> css추가
.dp-highlighter
{
font-family: "Consolas", "Monaco", "Courier New", Courier, monospace;
font-size: 12px;
background-color: #E7E5DC;
width: 99%;
overflow: auto;
margin: 18px 0 18px 0 !important;
padding-top: 1px; /* adds a little border on top when controls are hidden */
}
/* clear styles */
.dp-highlighter ol,
.dp-highlighter ol li,
.dp-highlighter ol li span
{
margin: 0;
padding: 0;
border: none;
}
.dp-highlighter a,
.dp-highlighter a:hover
{
background: none;
border: none;
padding: 0;
margin: 0;
}
.dp-highlighter .bar
{
padding-left: 45px;
}
.dp-highlighter.collapsed .bar,
.dp-highlighter.nogutter .bar
{
padding-left: 0px;
}
.dp-highlighter ol
{
list-style: decimal; /* for ie */
background-color: #fff;
margin: 0px 0px 1px 45px !important; /* 1px bottom margin seems to fix occasional Firefox scrolling */
padding: 0px;
color: #5C5C5C;
}
.dp-highlighter.nogutter ol,
.dp-highlighter.nogutter ol li
{
list-style: none !important;
margin-left: 0px !important;
}
.dp-highlighter ol li,
.dp-highlighter .columns div
{
list-style: decimal-leading-zero; /* better look for others, override cascade from OL */
list-style-position: outside !important;
border-left: 3px solid #6CE26C;
background-color: #F8F8F8;
color: #5C5C5C;
padding: 0 3px 0 10px !important;
margin: 0 !important;
line-height: 14px;
}
.dp-highlighter.nogutter ol li,
.dp-highlighter.nogutter .columns div
{
border: 0;
}
.dp-highlighter .columns
{
background-color: #F8F8F8;
color: gray;
overflow: hidden;
width: 100%;
}
.dp-highlighter .columns div
{
padding-bottom: 5px;
}
.dp-highlighter ol li.alt
{
background-color: #FFF;
color: inherit;
}
.dp-highlighter ol li span
{
color: black;
background-color: inherit;
}
/* Adjust some properties when collapsed */
.dp-highlighter.collapsed ol
{
margin: 0px;
}
.dp-highlighter.collapsed ol li
{
display: none;
}
/* Additional modifications when in print-view */
.dp-highlighter.printing
{
border: none;
}
.dp-highlighter.printing .tools
{
display: none !important;
}
.dp-highlighter.printing li
{
display: list-item !important;
}
/* Styles for the tools */
.dp-highlighter .tools
{
padding: 3px 8px 3px 10px;
font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif;
color: silver;
background-color: #f8f8f8;
padding-bottom: 10px;
border-left: 3px solid #6CE26C;
}
.dp-highlighter.nogutter .tools
{
border-left: 0;
}
.dp-highlighter.collapsed .tools
{
border-bottom: 0;
}
.dp-highlighter .tools a
{
font-size: 9px;
color: #a0a0a0;
background-color: inherit;
text-decoration: none;
margin-right: 10px;
}
.dp-highlighter .tools a:hover
{
color: red;
background-color: inherit;
text-decoration: underline;
}
/* About dialog styles */
.dp-about { background-color: #fff; color: #333; margin: 0px; padding: 0px; }
.dp-about table { width: 100%; height: 100%; font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; }
.dp-about td { padding: 10px; vertical-align: top; }
.dp-about .copy { border-bottom: 1px solid #ACA899; height: 95%; }
.dp-about .title { color: red; background-color: inherit; font-weight: bold; }
.dp-about .para { margin: 0 0 4px 0; }
.dp-about .footer { background-color: #ECEADB; color: #333; border-top: 1px solid #fff; text-align: right; }
.dp-about .close { font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; background-color: #ECEADB; color: #333; width: 60px; height: 22px; }
/* Language specific styles */
.dp-highlighter .comment, .dp-highlighter .comments { color: #008200; background-color: inherit; }
.dp-highlighter .string { color: blue; background-color: inherit; }
.dp-highlighter .keyword { color: #069; font-weight: bold; background-color: inherit; }
.dp-highlighter .preprocessor { color: gray; background-color: inherit; }
그리고 </head>태그 바로앞에 밑에 코드를 붙여 넣는다.
이제는 다음과 같이 사용.
<pre>, <textarea> 두 가지 태그 모두 사용할 수 있다. 위 코드는 <pre>로 열고 <textarea> 코드가 포함된 소스 코드.
class 속성에 사용할 수 있는 언어 코드
| 언어 | class |
| C/C++ | cpp, c, c++ |
| C# | c#, c-sharp, csharp |
| CSS | css |
| Delphi | delphi, pascal |
| Java | java |
| Java Script | js, jscript, javascript |
| PHP | php |
| Python | py, python |
| Ruby | rb, ruby, rails, ror |
| Sql | sql |
| VB | vb, vb.net |
| XML/HTML | xml, html, xhtml, xslt |
피드 구독하기:
덧글 (Atom)
