Báo cáo VXL

36
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG ====o0o==== BÁO CÁO BÀI TẬP LỚN VI XỬ LÝ ĐỀ TÀI: THIẾT KẾ MẠCH ĐỒNG HỒ VÀ ĐO NHIỆT ĐỘ Nhóm: 03 TC406 kỳ 20142 GVHD: PGS.TS. PHẠM NGỌC NAM

description

VXLBài tập lớnPIC 16F887A

Transcript of Báo cáo VXL

  • TRNG I HC BCH KHOA H NI

    VIN IN T VIN THNG

    ====o0o====

    BO CO

    BI TP LN VI X L TI:

    THIT K MCH NG H

    V O NHIT

    Nhm: 03 TC406 k 20142

    GVHD: PGS.TS. PHM NGC NAM

  • Bo co BTL Vi X L 2015

    2

    H Ni, 6/2015

    TRNG I HC BCH KHOA H NI

    VIN IN T VIN THNG

    ====o0o====

    BO CO

    BI TP LN VI X L TI:

    THIT K MCH NG H

    V O NHIT

    Nhm: 03 TC406 k 20142

    GVHD: PGS.TS. PHM NGC NAM

  • Bo co BTL Vi X L 2015

    3

    H Ni, 6/2015

    NHM 03 TC406

    Thnh vin (#1 l trng nhm):

    STT H v Tn MSSV im

    1 Nguyn Vit Anh 20121228

    2 Trn Trung Hiu 20121698

    3 o Tun Minh 20121072

    4 Trnh Vn Tin 20122558

    Nhn xt (phn GVHD ghi):

    .......................................................................................................................................

    .......................................................................................................................................

    .......................................................................................................................................

    .......................................................................................................................................

    .......................................................................................................................................

  • Bo co BTL Vi X L 2015

    4

    MC LC

    MC LC ......................................................................................................................................... 4

    DANH MC HNH V ..................................................................................................................... 5

    LI NI U ................................................................................................................................... 6

    CHNG 1: M T TI .......................................................................................................... 7

    1.1 Yu cu chc nng ............................................................................................................. 7

    1.2 Yu cu phi chc nng ....................................................................................................... 7

    1.3 S khi h thng ........................................................................................................... 7

    1.4 K hoch thc hin v phn chia cng vic ....................................................................... 8

    CHNG 2: THIT K H THNG .............................................................................................. 9

    Chng2. ...................................................................................................................................... 9

    2.1 Khi ngun ......................................................................................................................... 9

    2.2 Khi iu khin .................................................................................................................. 9

    2.3 Khi Setup........................................................................................................................ 12

    2.4 Khi o nhit ............................................................................................................... 13

    2.5 Khi thi gian thc .......................................................................................................... 14

    2.6 Khi hin th..................................................................................................................... 15

    2.7 Khi bo thc ................................................................................................................... 17

    2.8 Hon thin sn phm ........................................................................................................ 19

    2.9 S nguyn l ton mch .............................................................................................. 20

    2.10 S Layout mch .......................................................................................................... 21

    2.11 Hnh nh tht sn phm .................................................................................................... 22

    CHNG 3: KT LUN ............................................................................................................... 23

    TI LIU THAM KHO ................................................................................................................ 24

    PH LC A: NG GP CC THNH VIN ........................................................................... 25

    PH LC B: SOFTWARE CODE.................................................................................................. 26

    PH LC C: HNG DN S DNG ........................................................................................ 36

  • Bo co BTL Vi X L 2015

    5

    DANH MC HNH V

    Hnh 1.1 S khi h thng ..................................................................................... 7

    Hnh 1.2 Phn cng nhim v ..................................................................................... 8

    Hnh 2.1 S nguyn l jack DC ............................................................................. 9

    Hnh 2.2 S chn PIC 16F887 ........................... Error! Bookmark not defined.0

    Hnh 2.3 S nguyn l khi iu khin ..............................................................101

    Hnh 2.4 S nguyn l thch anh ngoi v nt reset ..........................................111

    Hnh 2.5 S nguyn jump np code ...................................................................122

    Hnh 2.6 S nguyn l khi ci t ....................................................................122

    Hnh 2.7 IC LM35 ...................................................................................................133

    Hnh 2.8 S nguyn l khi o nhit ............................................................144

    Hnh 2.9 S chn ic DS1307 ..............................................................................144

    Hnh 2.10 S nguyn l khi thi gian thc ......................................................145

    Hnh 2.11 LED ma trn 8x8 ...................................................................................... 15

    Hnh 2.12 S d chn ic 74HC595 ........................................................................... 16

    Hnh 2.13 S nguyn l khi hin th .................................................................. 17

    Hnh 2.14 S nguyn l jump m rng ................................................................ 18

    Hnh 2.15 Ci bo thc 5v ........................................................................................ 18

    Hnh 2.16 S nguyn khi bo thc ..................................................................... 18

    Hnh 2.17 S nguyn l ton mch ....................................................................200

    Hnh 2.18 S layout ton h thng .....................................................................211

    Hnh 2.19 Hnh nh mch tht ................................................................................222

  • Bo co BTL Vi X L 2015

    6

    LI NI U

    Ngy nay, nhng ng dng ca vi iu khin i su vo i sng sinh

    hot v sn xut ca con ngi, l mt phn tt yu khng th thiu trong i sng

    hin i. Th k 21 c xem l th k ca khoa hc cng ngh, l th k m my

    mc c thit k v lp trnh mt cch t ng thay th hot ng ca conngi

    trong sn xut, cng nh phc v cc cng vic trong sinh hot. Trong cuc sng

    mang tnh t ng ha cao th cc vi x l nh l mt cng c c lc h tr cho

    con ngi thc hin nhu cu ngy cng cao v cng hon thin ca mnh.

    ang l sinh vin ngi trn gh nh trng, c hi tip cn, hc tp nhng

    cng ngh tin tin, hin i cha nhiu, nn trong qu trnh t hc v nghin cu,

    chng em c gng tm hiu v b vi x l, cng nh cc ng dng ca n, c

    bit l vi x l PIC16F877. Vi nhng g nghin cu c nhm chng em lm

    thc hnh ng dng thng qua vic thit k ng h a nng c th hin th nhit

    . y l c hi rt ln cho chng em trau di kin thc thc t, p dng l thuyt

    hc v rn luyn bn thn trong mi trng lm vic nhm.

    Do thi gian thc hin v kin thc cn hn ch nn cn nhiu sai st trong

    qu trnh thc hin ti, rt mong c s b sung ng gp ca cc thy c v

    cc bn.

    Chng em xin chn trng cm n thy TS. Phm Ngc Nam v anh Ho

    nhit tnh hng dn chng em sut qu trnh hc tp.

  • Bo co BTL Vi X L 2015

    7

    CHNG 1: M T TI

    1.1 Yu cu chc nng

    ng h

    o Hin th ngy, gi theo ch 12h v 24h trn LED ma trn

    o Chnh ngy, gi ca mch

    o Hn gi bo thc

    Nhit : hin th nhit hin ti ca phng

    1.2 Yu cu phi chc nng

    S dng PIC16F887A

    M ngun s dng c C v assembly

    PCB c tn cc thnh vin

    Mch nh gn, d s dng, gi thnh thp

    1.3 S khi h thng

    Khi iu khin

    Khithi gian

    Khi ci t

    Khi nhit

    Khi hin th

    Khi Ngun

    Khi bo thc

    Hnh 1.1 S khi h thng

  • Bo co BTL Vi X L 2015

    8

    1.4 K hoch thc hin v phn chia cng vic

    Hnh 1.2 Phn cng nhim v

  • Bo co BTL Vi X L 2015

    9

    CHNG 2: THIT K H THNG

    2.1 Khi ngun

    Khi ngun s s dng cp ngun cho vi iu khin (trong project ny l

    PIC) v cc module (nu cn). V th nn khi ngun s phi a ra c ngun 5v

    cho vi iu khin, ng thi dng 1 pin 3V nui khi thi gian thc. lm

    c iu ny ta c th s dng adapter 5V. Gii php ny c u im: d kt ni,

    d mua v nh gn.

    Hnh 2.1 S nguyn l jack DC

    2.2 Khi iu khin

    Theo yu cu ca project, ta s dng PIC. Trong d n ny, nhm chng ti

    s dng PIC 16F877.

    PIC16F877 c cc c im :

    - PIC 16F877 l loi vi iu khin 8bit tm trung ca hng microchip.

    - PIC 16F877 c kin trc Havard, s dng tp lnh kiu RISC (Reduced

    Instruction Set Computer) vi ch 35 lnh c bn.

    - Tt c cc lnh c thc hin trong mt chu k lnh ngoi tr cc

    lnh r nhnh.

    - S chn vi chip loi cm 40 chn:

  • Bo co BTL Vi X L 2015

    10

    Hnh 2.2 S chn PIC16F887

    Cc chc nng c bn ca PIC16F877 l:

    - PIC16F877 c tt c 5 PORT I/O (RA, RB, RC, RD, RE) vi tng cng

    33 chn I/O.

    - TIMER: c 3 b timer/counter l Timer 0 (8bit) ; Timer 1 (16bit) ; Timer

    2 (8bit).

    - COMPARE /CAPTURE/PWM: C 2 b COMPARE 16bit ; 2 b

    CAPTURE 16bit; PWM phn gii 10bit.

    - Chun giao tip : PIC16F877 h tr cc chun giao tip l UART, SPI,

    I2C, PSI.

    - ADC: c 14 knh ADC 10bit.

    - B nh: 8K x 14Words Flash; 368x8 Bytes RAM; 256x8Bytes EEPROM

    - Ngoi ra cn c 2 b so snh tng t.

    Khi iu khin s c thit lp cc chn vo ra giao tip vi cc khi khc:

  • Bo co BTL Vi X L 2015

    11

    Hnh 2.3 S nguyn l khi iu khin

    Ngoi ra, to tn s dao ng ngoi cho PIC, chng ta dng thch anh v

    reset mch s s dng thm phm bm.

    Hnh 2.4 S nguyn l thch anh ngoi v nt reset

  • Bo co BTL Vi X L 2015

    12

    Vic np code s c thc hin thng qua cc jump np code (dng kt

    ni vi mch np PIC s dng phn mm np Burn E)

    Hnh 2.5 S nguyn l jump np code

    2.3 Khi Setup

    Hnh 2.2 S nguyn l khi ci t

    Mi nt bm u c ni vi PIC iu chnh nhng chc nng ring.

    SW1 c ni vi chn RB1 gip ta chuyn gia cc ch . SW2 cho php ta tng

    cc gi tr hin th. SW3 gim cc gi tr hin th.

  • Bo co BTL Vi X L 2015

    13

    2.4 Khi o nhit

    o c nhit mi trng, chng ta s dng LM35 lm cm bin nhit .

    Cu trc ca LM35:

    Hnh 2.3 IC LM35

    LM35 c 3 chn: 1 chn Ucc, 1 chn t(ground) v 1 chn u ra(output).

    Cm bin ny giao tip vi PIC theo con ng sau: LM35ADCVK. Chng

    ta c phng trnh th hin mi quan h gia nhit v in p u ra ca ADC

    U= T x K

    Trong ,

    U l in p u vo

    T l nhit mi trng

    K l h s theo nhit ca LM35, 10mV/1C

  • Bo co BTL Vi X L 2015

    14

    Hnh 2.4 S nguyn l khi o nhit

    2.5 Khi thi gian thc

    Module thi gian s dng IC thi gian thc DS1307.

    Hnh 2.5 S chn ic DS1307

    i km vi n l thch anh to xung nhp ng h. DS1307 l chip thi

    gian thc hay RTC (Read time clock). y l mt IC tch hp cho thi gian

    bi v tnh chnh xc v thi gian tuyt i cho thi gian: Th, ngy, thng,

    nm, gi, pht, giy. DS1307 c ch to bi Dallas. Chip ny c 7 thanh ghi 8

    bit mi thanh ghi ny cha : Th, ngy, thng, nm, gi, pht, giy. Ngoi ra

    DS1307 cn cha 1 thanh ghi iu khin ng ra ph v 56 thanh ghi trng

    cc thanh ghi ny c th dng nh l RAM. DS1307 c c thng qua

    chun truyn thng I2C nn do c c v ghi t DS1307 thng qua

    chun truyn thng ny. Do n c giao tip chun Xung nhp thch anh s

  • Bo co BTL Vi X L 2015

    15

    c a vo chn X1 v X2. Vbat l ngun cung cp cho DS1307, thng l 2.5-

    3V. V vy ta c th s dng ngun pin 3,3V cp cho DS1307. Vcc l ngun

    cho giao tip I2C, trong project ny l s dng cho PIC nn Vcc s l chun 5V.

    Chn SCL v SDA l 2 chn ghi v truyn d liu s c ni vi vi x l. Sau khi

    nhn c d liu t DS1307 th vi x l s pht tn hiu hin th ngy, gi, thng,

    nm ln LCD, cng nh bt tt cho n.

    Hnh 2.6 S nguyn l khi thi gian thc

    2.6 Khi hin th

    Vi yu cu ca project, chng ta dng led ma trn 8x8.

    Hnh 2.7 LED ma trn 8x8

    Nh chng ta nhn thy, mi 1 led trong bng sng cn phi cp ngun

    cho hng R v ni t ct C. Nu nh vy ti 1 thi im ta khng th lm sng cc

    n theo mun. Do iu khin c led ma trn chng ta s dng thut ton

  • Bo co BTL Vi X L 2015

    16

    qut led, hiu mt cch n gin l chng ta s cho cc hng led sng lin tc trong

    thi gian ngn hn kh nng lu nh ca mt. Tuy nhin nu lm nh vy s lng

    chn ca led rt ln nn ta s dng 74HC595.

    Hnh 2.8 S d chn ic 74HC595

    N l IC ghi dch 8bit kt hp cht d liu, u vo ni tip u ra song song

    c dng tit kim s chn VK (ti a 3 chn). lm c iu ny, chn

    Q7 ca IC trc c ni vi chn 14 (DATA) ca IC tip theo. Bng cc ny

    chng ta c th kim sot s chn ca VK theo mun.

  • Bo co BTL Vi X L 2015

    17

    Hnh 2.9 S nguyn l khi hin th

    2.7 Khi bo thc

    Khi bt tay v lm mch, c th linh hot hn trong vic pht trin cc

  • Bo co BTL Vi X L 2015

    18

    chc nng, chng ti c thit k thm cc jump m rng.

    Hnh 2.14 S nguyn l jump m rng

    Cc chn t 1 n 9 ca khi m rng c ni tng ng vi cc chn t 2

    n 10 ca PIC. Chc nng c nhm pht trin trn jump m rng ny bo thc

    dng ci chip 5V.

    Hnh 2.15 Ci bo thc 5v

    Ci c 2 chn v c s dng rt n gin.

    Hnh 2.16 S nguyn l khi bo thc

  • Bo co BTL Vi X L 2015

    19

    2.8 Hon thin sn phm

    Sau khi nghin cu v dng vi iu khin PIC, nhm chng ti bt tay vo

    tin hnh thit k v ch to cc module ca sn phm. Trnh t thit k bao gm.

    - Xy dng s nguyn l, vit code, m phng v test trn board trng

    kim tra mch.

    - Sau khi kim tra chnh xc ca mch, nhm tin hnh v mch

    schematic v layout cc khi.

    - Tip theo l thc hin lm mch. project ny, nhm thng nht t

    mch in mch c th nh gn vi 7 LED hin th v nhiu chi tit phc tp.

    - Sau khi lm mch xong, nhm tin hnh hn mch v hon thin sn

    phm. Trong qu trnh lm mch, nu c sai st th kim tra v chnh sa thit k

  • Bo co BTL Vi X L 2015

    20

    2.9 S nguyn l ton mch

    Hnh 2.17 S nguyn l khi hin th

  • Bo co BTL Vi X L 2015

    21

    2.10 S Layout mch

    Hnh 2.18 S layout ton h thng

  • Bo co BTL Vi X L 2015

    22

    2.11 Hnh nh tht sn phm

    Hnh 2.19 Hnh nh mch tht

  • Bo co BTL Vi X L 2015

    23

    CHNG 3: KT LUN

    Trong thi gian lm project va qua, chng em tm hiu, nghin cu v

    ch to thnh cng mt s chc nng ca ng h a nng.

    Tuy nhin, do gii hn v thi gian cng nh trnh nn trong khi thc

    hin project ny chng em cng khng th trnh khi nhng hn ch. Chng em

    mong c s gp ca thy, cc anh ch kha trn cng nh cc bn c th

    hon thin tt hn project cng nh thm cc chc nng mi cho project trong thi

    gian ti.

    Chng em xin chn thnh cm n!

  • Bo co BTL Vi X L 2015

    24

    TI LIU THAM KHO

    [1] http://codientu.org/

    [2] http://www.picvietnam.com/

    [3] http://www.dientuvietnam.net/

    [4] http://vidieukhien.net/

  • Bo co BTL Vi X L 2015

    25

    PH LC A: NG GP CC THNH VIN

    A.1 Nguyn Vit Anh: Ph trch khi thi gian thc, cc phm bm, ghp ni

    modul, v mch in chnh.

    A.2 Trn Trung Hiu: Ph trch khi khi cm bin nhit , vit chnh bo co.

    A.3 o Tun Minh: Ph trch v timer v vn qut led, chnh sa bo co.

    A.4 Trnh Vn Tin: Ph trch v ic 74HC595.

    C nhm tham gia hn mch v test mch.

  • Bo co BTL Vi X L 2015

    26

    PH LC B: SOFTWARE CODE

    /* NGUYEN VIET ANH MSSV: 20121228 DTTT04-K57 */ #include // CONFIG1 #pragma config FOSC = HS // Oscillator Selection bits (RC oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, RC on RA7/OSC1/CLKIN) #pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT enabled) #pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled) #pragma config MCLRE = ON // RE3/MCLR pin function select bit (RE3/MCLR pin function is MCLR) #pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled) #pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled) #pragma config BOREN = OFF // Brown Out Reset Selection bits (BOR enabled) #pragma config IESO = OFF // Internal External Switchover bit (Internal/External Switchover mode is enabled) #pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is enabled) #pragma config LVP = OFF // Low Voltage Programming Enable bit (RB3/PGM pin has PGM function, low voltage programming enabled) // CONFIG2 #pragma config BOR4V = BOR40V // Brown-out Reset Selection bit (Brown-out Reset set to 4.0V) #pragma config WRT = OFF // Flash Program Memory Self Write Enable bits (Write protection off) #define _XTAL_FREQ 20000000L #define SCK PORTCbits.RC0 #define DATA PORTCbits.RC1 #define STR PORTCbits.RC2 #define SCL_PIN PORTCbits.RC3 #define SDA_PIN PORTCbits.RC4 #define SCL_TRIS TRISC3 #define SDA_TRIS TRISC4 unsigned char mang1[8]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}; const unsigned char mang2[31][8]={ 0x00,0x7E,0x81,0x81,0x81,0x81,0x7E,0x00, //0 0x00,0x00,0x21,0x41,0xff,0x01,0x01,0x00, //1

  • Bo co BTL Vi X L 2015

    27

    0x00,0x61,0x83,0x85,0x89,0x91,0x61,0x00, //2 0x00,0x42,0x81,0x91,0x91,0x91,0x6E,0x00, //3 0x00,0x0C,0x14,0x24,0x44,0xFF,0x04,0x00, //4 0x00,0xF2,0x91,0x91,0x91,0x91,0x0E,0x00, //5 0x00,0x7E,0x91,0x91,0x91,0x91,0x0E,0x00, //6 0x00,0x80,0x80,0x87,0x88,0x90,0xE0,0x00, //7 0x00,0x6E,0x91,0x91,0x91,0x91,0x6E,0x00, //8 0x00,0x72,0x89,0x89,0x89,0x89,0x7E,0x00, //9 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //off 0x00,0x8E,0x9F,0x91,0xFF,0x7F,0x00,0x00, //a 0x00,0x7e,0xff,0x81,0x89,0x8f,0x8e,0x00, //G 0x00,0xff,0x08,0x10,0x10,0x10,0x0f,0x00, //h 0x00,0xfe,0xff,0x03,0x03,0xff,0xfe,0x00, //U 0x00,0x70,0xf1,0x89,0x89,0x8f,0x06,0x00, //S 0x00,0x80,0x80,0xff,0xff,0x80,0x80,0x00, //T 0x00,0xff,0xff,0x91,0x91,0x91,0x00,0x00, //E 0x00,0xff,0x90,0x90,0x90,0x60,0x00,0x00, //P 0x00,0xff,0xff,0x60,0x1c,0xff,0xff,0x00, //D 0x00,0xff,0x40,0x20,0x10,0x08,0xff,0x00, //N 0x00,0x60,0x90,0x90,0x60,0x00,0x00,0x00, //' 0x00,0x7E,0xff,0x81,0x81,0x81,0x66,0x00, //C 0x00,0x80,0x80,0xff,0x80,0x80,0x00,0x00, //t 0x00,0xe0,0x10,0x0f,0x10,0xe0,0x00,0x00, //y 0x7e,0x81,0x81,0x81,0xB1,0x89,0x85,0x81, // dong ho bao thuc 0x7e,0x00,0xff,0x91,0x91,0x91,0x6e,0x00, 0x00,0x80,0x80,0xff,0x80,0x80,0x00,0x00, 0xc0,0x38,0xc0,0x00,0xf8,0xa8,0xa8,0x00, // year G3 0xb8,0xa8,0xf8,0x00,0xf8,0x80,0xc0,0x00, 0x1f,0x11,0x13,0x00,0x15,0x15,0x1f,0x00, }; const unsigned char mang3[10][8]= { 0x01,0x00,0x7E,0x81,0x81,0x81,0x81,0x7E, //.0 0x01,0x00,0x00,0x21,0x41,0xff,0x01,0x01, //.1 0x01,0x00,0x61,0x83,0x85,0x89,0x91,0x61, //.2 0x01,0x00,0x42,0x81,0x91,0x91,0x91,0x6E, //.3 0x01,0x00,0x0C,0x14,0x24,0x44,0xFF,0x04, //.4 0x01,0x00,0xF2,0x91,0x91,0x91,0x91,0x0E, //.5 0x01,0x00,0x7E,0x91,0x91,0x91,0x91,0x0E, //.6 0x01,0x00,0x80,0x80,0x87,0x88,0x90,0xE0, //.7 0x01,0x00,0x6E,0x91,0x91,0x91,0x91,0x6E, //.8 0x01,0x00,0x72,0x89,0x89,0x89,0x89,0x7E,

  • Bo co BTL Vi X L 2015

    28

    //.9 }; unsigned int sec_1,sec_2,min_1,min_2,hour_1,hour_2,hour_cd=24,hour_cd1,hour_cd2,day_1,day_2, date_1,date_2,month_1,month_2,year_1,year_2,gio_hg1,gio_hg2,phut_hg1,phut_hg2; long long ADC_GTri; float T,T10; int sec,min,hour,day,date,month,year,gio_hg=0,phut_hg=1; /* KHOI TAO I2C */ /*******************************************************************************/ void I2C_Start() { SDA_TRIS = 0; SCL_TRIS = 0; SDA_PIN = 1; SCL_PIN = 1; __delay_us(5); SDA_PIN = 0; SCL_PIN = 0; } void I2C_Stop() { SDA_TRIS=0; SCL_TRIS=0; SDA_PIN=0; SCL_PIN=1; SDA_PIN=1; } void I2C_Write(unsigned char data_send) { unsigned char i; SDA_TRIS=0; SCL_TRIS=0; for(i=0;i

  • Bo co BTL Vi X L 2015

    29

    unsigned char get_data,i; SCL_PIN=0; SDA_TRIS=1; for(i=0;i

  • Bo co BTL Vi X L 2015

    30

    } void DS1307_write(unsigned char address, unsigned char data) { I2C_Start(); I2C_Write(0xD0); I2C_Write(address); I2C_Write(DEC_BCD(data)); I2C_Stop(); } void ds1307_start() { sec = BCD_DEC(DS1307_read(0));//__delay_ms(1); min = BCD_DEC(DS1307_read(1));//__delay_ms(1); hour = BCD_DEC(DS1307_read(2));//__delay_ms(1); day = BCD_DEC(DS1307_read(3));//__delay_ms(1); date = BCD_DEC(DS1307_read(4));//__delay_ms(1); month = BCD_DEC(DS1307_read(5));//__delay_ms(1); year = BCD_DEC(DS1307_read(6));__delay_ms(1); } /* KHOI TAO ADC */ /*******************************************************************************/ void ADC_setup() { ANSELHbits.ANS10 = 1; // bat che do analog cho chan RB1/AN10 ADCON1bits.ADFM = 1; // ADC thuc hien can le phai ADCON1bits.VCFG0 = 0; // dien ap tham chieu Vdd ADCON1bits.VCFG1 = 0; // dien ap tham chieu Vss ADCON0bits.ADCS = 10; // tan so lay mau la Fosc/32 ADCON0bits.CHS = 10; // Chon kenh xuat analog AN10 ADCON0bits.ADON = 1; // Turn on ADC } /* QUET LED MATRIX */ /*******************************************************************************/ void quet_hc595( unsigned char x) { unsigned char p,i; for(i=0;i

  • Bo co BTL Vi X L 2015

    31

    } void HienThi(int h4,int h3,int h2,int h1,int m,int n, int l) // Ham hien thi { for(int a=0;a

  • Bo co BTL Vi X L 2015

    32

    if(status==0)status = 69; if(status==3){if(hour_cd==12)hour_cd=24;else hour_cd = 12;}; if(status==96){phut_hg++;if(phut_hg >= 60) phut_hg = 0;}; if(status==97) { if(hour_cd==24){gio_hg++;if(gio_hg >= 24) gio_hg = 0;} if(hour_cd==12){gio_hg++;if(gio_hg >= 13) gio_hg = 1;} }; if(status==4) { if(hour_cd==24){ hour++;if(hour>=24)hour = 0;DS1307_write(2,hour);} if(hour_cd==12){ hour++;if(hour>=13)hour = 1;DS1307_write(2,hour);} }; if(status==5){min++; if(min >= 60) min = 0;DS1307_write(1,min);}; if(status==6){date++;if(date>31)date= 1;DS1307_write(4,date);}; if(status==7){month++;if(month>=13)month= 1;DS1307_write(5,month);}; if(status==8){year++;if(year>=100)year= 0;DS1307_write(6,year);}; } else if(INTCONbits.RBIF == 1) // Ham ngat on change PORT B { if(PORTBbits.RB5==0) // Ham ngat tren chan RB5 { INTCONbits.RBIF = 0; if(status==96) status = 97; else { status++; if(status==70)status =0; if(status==98) status = 0; if(status==9)status = 0; } } else if(PORTBbits.RB4==0) // Ham ngat tren chan RB4 { INTCONbits.RBIF = 0; if(status==0)status = 96; if(status==96){phut_hg--; if(phut_hg < 0) phut_hg = 59;}; if(status==97) { if(hour_cd==24){gio_hg--;if(gio_hg < 0) gio_hg = 23;} if(hour_cd==12){gio_hg--;if(gio_hg < 0) gio_hg = 12;} } if(status==4) { if(hour_cd==24){ hour--;if(hour

  • Bo co BTL Vi X L 2015

    33

    } INTCONbits.RBIF = 0; } else if(INTCONbits.T0IF == 1) // Ham ngat timer0 { INTCONbits.T0IF = 0; //xoa co ngat timer 0 TMR0 = 6; //cho TMR0 chay tu 6 delayTime++; if(delayTime >= 40) { ds1307_start(); if((++delay_ADC>=100)&&(status==69)) { delay_ADC=0; ADCON0bits.GO = 1; // bat dau chuyen doi ADC while(ADCON0bits.GO==1){}; // doi cho den khi chuyen doi ket thuc ADC_GTri = ((ADRESH

  • Bo co BTL Vi X L 2015

    34

    /* HAM MAIN */ /*******************************************************************************/ int main() { TRISC = 0x00; // set port C is output TRISD = 0x00; // set port D is output TRISA = 0; // set port A is output TRISB = 0x33; ANSEL = 0x00; // Disable all analog ports ANSELH = 0x00; //******************* CAI DAT NGAT TIMER0 *********************// OPTION_REGbits.PSA = 0; //Prescaler assigned to Timer 0 (other option is to //the Watchdog timer (WDT)) OPTION_REGbits.PS = 0b001; //cai dat prescaler la 1:4 OPTION_REGbits.T0CS = 0; //su dung dao dong ngoai 20000000/4 INTCONbits.T0IF = 0; //xoa co ngat timer 0 TMR0 = 6; //dat gia tri TMR0 bat dau tu 6 INTCONbits.T0IE = 1; //bat co ngat timer 0 //******************** CAI DAT NGAT NGOAI **********************// INTCONbits.INTF = 0; // tat co ngat OPTION_REGbits.INTEDG = 0; // ngat canh xuong ( 1 to 0 ) INTCONbits.INTE = 1; // cho phep ngat ngoai //*************** CAI DAT NGAT ON CHANGE PORTB ****************// INTCONbits.RBIF = 0; INTCONbits.RBIE = 1; // bat ngat PORT B IOCBbits.IOCB4 = 1; IOCBbits.IOCB5 = 1; WPUBbits.WPUB4 = 1; WPUBbits.WPUB5 = 1; WPUBbits.WPUB0= 0; IOCBbits.IOCB0 = 0; OPTION_REGbits.nRBPU = 1; INTCONbits.GIE = 1; // ngat toan cuc ADC_setup(); // bat ham cai dat ADC // DS1307_write(0,0); // DS1307_write(1,54); // DS1307_write(2,8); // DS1307_write(3,0); // DS1307_write(4,21); // DS1307_write(5,6); // DS1307_write(6,15);

  • Bo co BTL Vi X L 2015

    35

    PORTAbits.RA5 = 1; while(1) { if((hour_cd==12)&(hour>12)){hour=hour-12;DS1307_write(2,hour);t=1;}; sec_1 = sec / 10;sec_2= sec % 10; min_1 = min / 10;min_2= min % 10; hour_1 = hour/10;hour_2 = hour % 10; hour_cd1=hour_cd/10;hour_cd2=hour_cd%10; // day_1 = day / 10;day_2 = day % 10; date_1 = date/10;date_2 = date % 10; month_1 = month / 10;month_2 = month %10; year_1 = year /10;year_2= year%10; gio_hg1 = gio_hg/10;gio_hg2 = gio_hg%10; phut_hg1 = phut_hg/10;phut_hg2 = phut_hg%10; if(hour==gio_hg && min == phut_hg) { for( j=0;j

  • Bo co BTL Vi X L 2015

    36

    PH LC C: HNG DN S DNG

    Khi nhn phm RESET, ton mch s v trng thi ban u(mn hnh chnh), hin th gi, pht, giy.

    Phm BT4 ng vai tr nh menu, gip ta xem c ngy, nm. ng thi khi tip tc nhn phm ta s i vo qu trnh ci t ch 24h, t gi, t pht, t ngy, t thng, t nm.

    Phm BT2 ng vai tr nh phm iu chnh tng. mi ch ci t, khi mun tng gi tr ta s dng BT2. Ngoi ra, mn hnh chnh, khi ta nhn BT2 s c th xem nhit .

    Phm BT2 ng vai tr nh phm iu chnh gim. mi ch ci t, khi mun tng gi tr ta s dng BT2. Ngoi ra, mn hnh chnh, khi ta nhn BT2 s c th i vo qu trnh hn gi.

    Mun tt chung hn gi, ta phi nhn phm RESET.