พิสูจน์INTERNAL OSCILLATORความถี่ภายในPICว่ามีจริงหรือไม่โดยใช้CONFIGURATION
BITSของXC8
28/6/2558
SONGCHAI PRAPATRUNGSEE
พิสูจน์INTERNAL OSCILLATORความถี่ภายในPICว่ามีจริงหรือไม่โดยใช้CONFIGURATION
BITSของXC8
เข้าไปเอาCODEที่Configuration Bits
แล้วทำการทดลอง
1 คลิก Window
2 ชี้ Pic Memory Views
3 คลิก Configuration Bits
4 คลิก FOSCแล้วเลือกCLOCK
SOURCE
มีหลายแบบ
ทั้งภายใน ภายนอก
ถ้าแบบใช้CRYSTAL
ถ้าความถี่น้อยกว่า
0.2KHZเลือกLP=Low Power
ถ้าความถี่ตั้งแต่
0.1MHZ-4MHZ เลือกXT_XT=XT
ถ้าความถี่ตั้งแต่
4MHZ-MAX เลือกHS=High Speed
5 คลิก Generate Source Code to
Output
จากนั้นCopy Source Code ไปวางในไฟล์Cของเรา
เพื่อใช้งานต่อไป
หรือคลิกRun
คลิกSet Configuration Bits
ก็ได้เหมือนกัน
ถ้าเซ็ทเป็นExternal
Clock
เช่น เซ็ทเป็น HS
ก็หมายความว่าใช้ความถี่ตั้งแต่4MHZ
– MAXสูงสุด
ในความเป็นจริงที่ขาRA6กับขาRA7
จะมีไฟออกมาด้วย
แต่ในProteus จะไม่มีไฟออกมา
ถ้าเซ็ทเป็นInternal
Clock
เช่น เซ็ทเป็น INTIO67
ก็หมายความว่าใช้คล็อคภายใน
ทำให้ขาRA6และขาRA7
สามารถเซ็ทเป็นอินพุทเอาท์พุทได้
ทำให้มีขาอินพุทเอาท์พุทเพิ่มขึ้นอีก2ขานั่นเอง
SOURCE CODE
/*
* File: EE.C
* Author:
sc
* INTERNAL
CLOCK USE PIC18FXXK20
* Created
on 27 ,มิย 2558, 12:00
*/
#include <xc.h>
//#pragma config FOSC =
HS//External Crystal 4MHZ-20MHZ
//#pragma config FOSC = INTIO7// Oscillator Selection bits (Internal oscillator block, CLKOUT
function on RA6, port function on RA7)
#pragma config FOSC = INTIO67// Oscillator
Selection bits (Internal oscillator block, port function on RA6
and RA7)
#define _XTAL_FREQ 4000000//4MHZ
FOR __delay
void main(void)
{
TRISA=0;
while(1) {
PORTA=255;
__delay_ms(197);//197 MAX IN XC8
V3.00
PORTA=0;
__delay_ms(197);//197 MAX IN XC8
V3.00
}
}
ไม่มีความคิดเห็น:
แสดงความคิดเห็น