PIC单片机及FPGA实验系统设计 第20页
{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00}}; //9
unsigned int timecount=0;
unsigned char cnta=0;
unsigned char cntb=0;
void T0_Initial(void); //T0初始化程序
void dislay(void); //显示子程序
void main(void){
TRISC=0x00;
TRISD=0x00;
TO_Initial();
while(1){
;
}
}
void T0_Intial(void){ //中断产生2ms延时
OPTION=0x04; //设定分频比为1:8
T0IF=0;
T0IE=1;
GIE=1;
}
void interrupt T0(void){
if(T0IF==1){
T0IE=0;
display();
T0IF=0;
T0IE=1;
}
}
void dislay(void){ //显示子程序,显示时间为大约为0.5s
PORTD=tab[cata];
PORTC=colcode[cntb][cnta];
cna++;
if(cnta==8){
cnta=0;
}
timecount++;
if(timecount==333){
timecount=0;
cntb++;
if(cntb==10){
cntb=0;
}
}
}
附录(十):声音程序:shengyin.c
//产生1KMHZ的方波,让SPEAKER产生滴滴声音
#include<pic.h>
void T0_initial(void);
void main(void){
T0_initial();
while(1){
;
}
}
void T0_initial(void){
OPTION=0x08; //预分频器给WDT
T0IF=0;
T0IE=1;
GIE=1;
}
void interrupt T0(void){
if(T0IF==1){
T0IE=0;
PORTD0=~PORTD0; //取反操作
T0IF=0;
T0IE=1;
}
}
附录(十一):AD转换:AD.C
//通过内部自带的AD转换来实现电压的测量,实现数据采集
//中断的判断,PIC内部自带的中断没有优先级之分,人为来定
#include<pic.h>
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //显示代码
unsigned char duan[]={0,16,16,16,16};
void delay(unsigned char z);
void AD_initial(void); //AD初始化
void T0_initial(void); //T0初始化
void display(void); //显示
void AD_convert(void); //结果存储
void main(void){
AD_initial();
T0_initial();
while(1){
;
}
}
void AD_initial(void){
ADCON0=0x41; //选择系统时钟为8TOSC,选择通道0(RA0),并且启用ADC
ADCON1=0x8e; //ADRESH高6位读做0,结果右移,RA0为模拟口,其他为数字口
//参考电压为VDD,VSS
TRISA=TRISA|0x01; //设置RA0口为输入
PEIE=1;
ADIF=0; //清中断标志
ADIE=1; //A/D中断使能
GIE=1; //开总中断
ADGO=1; //启动A/D转换
}
void T0_Intial(void){ //中断产生16ms延时
OPTION=0x05; //设定分频比为1:64
T0IF=0;
T0IE=1;
GIE=1;
}
void display(void){ //动态显示
TRISD=0x00;
TRISC=0x00;
delay(8);
PORTC=PORTC&0xfe;
PORTD=dispcode[duan[0]]; //最底位
delay(8);
PORTC=PORTC|0xff; //消隐
PORTC=PORTC&0xfd;
PORTD=dispcode[duan[1]];
delay(8);
PORTC=PORTC|0xff;
PORTC=PORTC&0xfb;
PORTD=dispcode[duan[2]];
delay(8);
PORTC=PORTC|0xff;
PORTC=PORTC&0xf7;
PORTD=dispcode[duan[3]];
delay(8);
PORTC=PORTC|0xff;
PORTC=PORTC&0xef;
<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>
PIC单片机及FPGA实验系统设计 第20页下载如图片无法显示或论文不完整,请联系qq752018766