📄 lesson6.lst
字号:
1: #include<pic.h>
2: #define uchar unsigned char
3: #define uint unsigned int
4: __CONFIG(0x3B31);
5: uint CCPDE;
6: const uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
7: void delay(uint x)
8: {
9: uint j,i;
10: for(i=x;i>0;i--)
11: for(j=110;j>0;j--);
12: }
13: uchar temp;
14: void init();
15: void display();
16: void xianshi(uchar num1,uchar num2,uchar num3,uchar num4);
17: void main()
18: {
19: uchar a1=0,a2=0,a3=0,a4=0;
20: init();
21: while(1)
22: {
23: a1=CCPDE/1000;
24: a2=CCPDE%1000/100;
25: a3=CCPDE%100/10;
26: a4=CCPDE%10;
27: xianshi(a4,a3,a2,a1);
28: }
29: }
30: void init()
31: {
32: TRISB=0X00;
33: PORTB=0x06;
34: TRISC=0x0f;
35: CCP1IE=1;
36: T1CON=0X01;
37: CCP1CON=0X05;
38: GIE=1;
39: PEIE=1;
40: }
41: void xianshi(uchar num1,uchar num2,uchar num3,uchar num4)
42: {
43: PORTB=table[num1];
44: PORTC=0x7f;
45: delay(45);
46:
47: PORTB=table[num2];
48: PORTC=0xbf;
49: delay(45);
50:
51: PORTB=table[num3];
52: PORTC=0xdf;
53: delay(45);
54:
55: PORTB=table[num4];
56: PORTC=0xef;
57: delay(45);
58: }
59: void interrupt CCP1e()
60: {
61: uint temp;
62: static uint pv;
63: if(CCP1IF)
64: {
65: CCP1IF=0;
66: temp=CCPR1H;
67: temp*=256;
68: temp+=CCPR1L;
69: CCPDE=temp-pv;
70: pv=temp;
71: }
72: }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -