Professional Documents
Culture Documents
2. B nh ROM
B nh ROM ( Read Olly Memory - B nh ch c ) : y l b nh c nh, d liu khng b mt
khi mt in, b nh ny dng np cc chng trnh BIOS ( Basic Input Output System - Chng trnh
vo ra c s ) y l chng trnh phc v cho qu trnh khi ng my tnh v chng trnh qun l cu
hnh ca my
3. B nh Flash
B nh flash l mt loi b nh my tnh c th xa v ghi li bng in. y l cng ngh c
s dng trong cc th nh, USB flash lu tr v truyn d liu gia cc my tnh v cc thit b k
thut s khc. Khng nh EEPROM, n c xa v ghi li theo khi gm nhiu v tr
4. Bng so snh gia cc loi b nh
PIC C compiler gm c 3 phn ring bit l PCB, PCM v PCH. PCB dng cho h MCU vi b
lnh 12 bit, PCM dng cho h MCU vi b lnh 14 bit v PCH dng cho h MCU vi b lnh 16 v
18 bit. Mi phn khc nhau trong PIC C compiler ch dng c cho h MCU tng ng m khng
cho php dng chung (V d khng th dng PCM hoc PCH cho MCU 12 bit c m ch c th
dng PCB cho MCU 12 bit).
Trong ca s chng trnh ca PIC C compiler gm c cc thc n (Menu): File, Project, Edit,
Options, Compile, View, Tools v Help. Chi tit v cc thc n nh sau:
a. File (tp): File l thc n qun l tp gm cc thc n nh hnh
+ New: To file.c mi
+ Open: M mt file.c c, c lu tr trong a.
+ Save: Lu file.c vo a.
+ Save As: Lu tr file.c vo a cng vi tn khc.
+ Save All: Lu tr tt c cc file c m vo a.
+ Close: ng file hin hnh.
+ Close All: ng tt c cc file.
+ Print: In file hin hnh.
b. Project (D n): L thc n qun l d n (mt chng trnh ng dng). Thc n Project
gm cc thc n nh hnh
Cc thnh phn trong thc n Edit c chc nng tng t nh trong cc trnh ng dng trn mi
trng window quen thuc nh word, excel
Debug File: File g ri chng trnh cht trn MPLAB. Chn Standard.COD nu mun chy g
ri chng trnh, chn None nu khng cn chy g ri.
Error File: Xut ra file li khi chng trnh c li trong qu trnh bin dch. Chn Standard cho
cc MCU chun hin hnh ca Microchip, chn Original cho cc MCU th h trc ca
Microchip.
List Format:Chn Simple cho nh dng c bn vi m C v ASM. Chn Standard nh dng
chun MPASM vi m my. Chn Old cho nh dng MPASM th h trc. Chn Symbolic
nh dng gm m C trong ASSEMBLY.
Object File: Chn kiu cho file.hex, Chn 8 bit HEX cho file hex intel 8 bit v chn 16 HEX cho
file hex intel 16 bit.
Sau khi chn la kiu nh dng file xut ra sau khi bin dch, click OK.
+ Global Defines: Cho php t #define s dng cho bin dch chng trnh. iu ny tng t nh
vic khai bo #define u chng trnh.
+ Debug/Programer: Cho php xc nh thit b lp trnh c s dng khi chn la cng c lp trnh cho
chip.
+ Include Dirs: Tng t nh trong thc n Project.
C/ASM List: M file.lst ch ch c, file ny phi c bin dch trc t file.c. Khi c m,
file ny s trnh by theo dng va c m C va c m Assembly.
V d File.lst
delay_ms(3);
0F2: MOVLW 05
0F3: MOVWF 08
0F4: DESCZ 08,F
0F5: GOTO 0F4
.while input(pin_0));
0F6: BSF 0B,3
Symbol Map: M file dng m ASM ch ch c. File ny phi c bin dch t file.c. File ny
cho bit a ch ca cc thanh ghi s dng trong chng trnh.
+ Binary file: M file nh phn ch ch c, File ny c hin th m HEX v m ASCII.
g. Tool: Thc n Tool qun l mt s cng c c bit. Cc thnh phn trong thc n tool nh
hnh.
h. Help: thc n tr gip, trong thc n ny cha phn hng dn s dng PIC C compiler di dng
HYML.
Kiu d liu M t
int1 nh ngha mt d liu 1 bit (kiu nguyn)
int8 nh ngha mt d liu 8 bit (kiu nguyn
int16 nh ngha mt d liu 16 bit (kiu nguyn)
int32 nh ngha mt d liu 32 bit (kiu nguyn)
char nh ngha mt d liu kiu k t 8 bit
float nh ngha mt d liu 32 bit dng du chm ng (kiu thc)
short Mc nhin l int1
int Mc nhin l int8
long Mc nhin l int16
void Ch mt kiu d liu khng xc nh
static nh ngha bin tnh ton cc v c gi tr ban u bng 0. Khi khai
bo bin ny th b nh s dnh mt vng nh tu theo kiu bin
lu tr v vng nh ny c gi cho d bin khng c s
dng
auto nh ngha mt bin kiu ng, bin ny ch tn ti khi hm s dng
n hot ng, vng nh cha bin ny s c tr li khi hm thc
hin xong.
double D tr mt word nh nhng khng h tr kiu d liu
extern Kiu d liu m rng
register Kiu thanh ghi
d. nh ngha cc hm
nh ngha cc hm (Function) c dng thc hin gii thut ca chng trnh. Hm c cu
trc nh sau:
Tn hm (Cc i s ca hm)
{
Cc pht biu
}
Trong Tn hm c t tu ca ngi vit chng trnh. Cc i s ca hm l cc
thng s dng trao i d liu ca hm, i s c th l rng nu hm khng trao i d liu hoc
c th c nhiu i s, cc i s phn cch nhau bng du ,
V d:
void lcd_putc(char c ) // nh ngha hm
{
...
}
2. Cc pht biu iu kin v vng lp trong chng trnh
a. Pht biu iu kin if - else
Pht biu iu kin if else c dng r nhnh chng trnh, pht biu if else c dng nh
sau:
If (iu kin)
{
Cc lnh trong chng trnh
}
else
{
Cc lnh trong chng trnh
}
b. Vng lp WHILE
Vng lp while c dng lp chng trnh. Cu trc ca vng lp while nh sau:
while (biu thc iu kin)
{
Cc lnh trong chng trnh
}
Hot ng ca vng lp while l s thc hin cc lnh trong cp t kho {} khi m biu thc iu
kin l ng.
c. Vng lp do while
Vng lp do while c s dng tng t nh vng lp while tuy nhin, vng lp while kim tra
iu kin trc khi thc hin cc lnh cn vng lp do while s kim tra iu kin sau khi thc hin
cc lnh. Cu trc ca vng lp do while nh sau:
do
{
Cc lnh trong chng trnh
}
while (biu thc iu kin);
d. Vng lp for
Vng lp for c dng lp li chng trnh theo mt bin m. Cu trc ca vng lp for nh
sau:
For (biu thc 1; biu thc 2; biu thc 3)
{
Cc lnh trong chng trnh
}
Trong biu thc 1 l gi tr khi u ca bin m, biu thc 2 l gi tr cui ca bin m,
biu thc 3 l biu thc m.
e. Pht biu SWITCH CASE