|
#include<pic.h> //包含单片机内部资源预定义
#include "DelayMs.h"
__CONFIG(0x3B31);
//定义常数0-9的数据表格
const unsigned char TABLE[] = {0x3f,0x6,0x5b,0x4f,0x66,0x6d,0x7c,0x7,0x7f,0x6f};
void Display(unsigned char num,unsigned char data)
{
PORTD = TABLE[data]; //取出数据,送D口显示
PORTC = 0x01;
switch(num)
{
case 0:
PORTA = 0x01;
break;
case 1:
PORTA = 0x02;
break;
case 2:
PORTA = 0x04;
break;
case 3:
PORTA = 0x06;
break;
case 4:
PORTA = 0x08;
break;
case 5:
PORTA = 0x0A;
break;
case 6:
PORTA = 0x0C;
break;
case 7:
PORTA = 0x0E;
break;
default:
PORTA = 0x00;
}
DelayMs(1);
}
/*void main()
{
unsigned char i;
TRISD = 0; //portd 输出
TRISA = 0; //porta 输出
TRISC = 0; //porta 输出
PORTC = 0x01; //74HC138控制端口
while (1) //死循环,让数码管持续点亮
{
for(i=0;i<8;i++)
{
Display(i,i+1);
DelayMs(3);
}
}
}
*/
|
|