Tải bản đầy đủ (.docx) (7 trang)

Lập trình pic 18f4520 led 7 thanh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (45.92 KB, 7 trang )

Nhớ dùng 7seg CC, còn code của thầy thì dùng 7seg CA
++++++++++++++++++++++++Đếm từ 0 đến 99+
#include
#include<delays.h>
#pragma config OSC=HS
#pragma config WDT = OFF
#pragma config MCLRE = OFF
unsigned char Code7Seg[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
0x6F};
void main()
{
unsigned dem,chuc,dvi;
unsigned int i;
TRISC=0x00;
TRISD=0x00;
ADCON1=0x0f;
while(1)
{
for(dem=0;dem<99;dem++)
{
chuc=dem/10;
dvi=dem%10;
for(i=0;i<50;i++)
{
PORTC=Code7Seg[chuc];
PORTDbits.RD0=0;
Delay1KTCYx(10);


PORTDbits.RD0=1;
PORTC=Code7Seg[dvi];


PORTDbits.RD1=0;
Delay1KTCYx(10);
PORTDbits.RD1=1;
}
}
}
}

++++++++++++++++++++++++++++Hiện số bất kỳ +
#include
#include<delays.h>
#pragma config OSC=HS
#pragma config WDT = OFF
#pragma config MCLRE = OFF
unsigned char Code7Seg[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
0x6F};
void main()
{
unsigned dem,chuc,dvi;
unsigned int i;
TRISC=0x00;
TRISD=0x00;
ADCON1=0x0f;
dem=24;


while(1)
{
chuc=dem/10;
dvi=dem%10;

PORTC=Code7Seg[chuc];
PORTDbits.RD0=0;
Delay1KTCYx(10);
PORTDbits.RD0=1;
PORTC=Code7Seg[dvi];
PORTDbits.RD1=0;
Delay1KTCYx(10);
PORTDbits.RD1=1;
}
}

++++++++++++++++++++++++Hai led7seg nhấp nháy +
#include
#include<delays.h>
#pragma config OSC=HS
#pragma config WDT = OFF
#pragma config MCLRE = OFF
unsigned char Code7Seg[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
0x6F};
void main()
{


unsigned dem,chuc,dvi;
unsigned int i;
TRISC=0x00;
TRISD=0x00;
ADCON1=0x0f;
while(1)
{

PORTC=0x5B;
PORTDbits.RD0=0;
Delay10KTCYx(30);
PORTDbits.RD0=1;
PORTC=0x7D;
PORTDbits.RD1=0;
Delay10KTCYx(30);
PORTDbits.RD1=1;
}
}

+++++++++++++++++++++++nhấn công tắc tăng thêm 1+++
#include
#include<delays.h>
#pragma config OSC=HS
#pragma config WDT = OFF
#pragma config MCLRE = OFF


unsigned char Code7Seg[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
0x6F};
#define key PORTBbits.RB3
void main()
{
unsigned dem,chuc,dvi;
unsigned int i;
TRISB=0b00010000;
TRISC=0x00;
TRISD=0x00;
ADCON1=0x0f;

dem=0;
while(1)
{
chuc=dem/10;
dvi=dem%10;
PORTC=Code7Seg[chuc];
PORTDbits.RD0=0;
Delay1KTCYx(10);
PORTDbits.RD0=1;
PORTC=Code7Seg[dvi];
PORTDbits.RD1=0;
Delay1KTCYx(10);
PORTDbits.RD1=1;
if(key==1)
{
Delay1KTCYx(100);
if(key==1)


{
dem++;
}
if(dem==99)
{
dem=0;
}
}
}
}
Tiếp tục code

#include
#include<delays.h>
#pragma config OSC=HS
#pragma config WDT = OFF
#pragma config MCLRE = OFF
unsigned char Code7Seg[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
0x6F};
#define key PORTBbits.RB3
void main()
{
unsigned dem,chuc,dvi;
unsigned int i;
TRISB=0b00010000;
TRISC=0x00;
TRISD=0x00;
ADCON1=0x0f;
dem=0;
while(1)
{


if(key==1)
{
Delay10KTCYx(20);
{
dem++;
}
if(dem==99)
{
dem=0;

}
}
chuc=dem/10;
dvi=dem%10;
PORTC=Code7Seg[chuc];
PORTDbits.RD0=0;
Delay1KTCYx(10);
PORTDbits.RD0=1;
PORTC=Code7Seg[dvi];
PORTDbits.RD1=0;
Delay1KTCYx(10);
PORTDbits.RD1=1;

}
}



×