单片机源程序如下:
- #include <C8051F020.H>
- #include <intrins.h>
- #include<stdio.h>
- #include <string.h>
- #include <vref.h>
- #include <init.h>
- #include <IO.h>
- #include <dacai.h>
- #include <display.h>
- #include <key.h>
- //#include <ds18b20.h>
- void main()
- {// word DS18B20T;
- WDTCN=0XDE;
- WDTCN=0XAD;
- PORT_Init();
- SYSCLK_Init();
- Timer_Init();
- UART1_Init();
- set_init();
- jump();
- T1_cont=0;
-
- /* DS18B20T=ReadTemperature(); //上电第一次采集可能数据不对
- delay(65535);delay(65532);
- delay(65534);delay(65533);
- delay(65531);delay(65530);
- DS18B20T=ReadTemperature(); //上电进行第二次采集 */
- EA=1;
- while(1)
- {
-
- read_do();
- key_s1();
- if(dis_cont>25)
- {
- dis_cont=0;display();
- /* EA=0;
- DS18B20T=ReadTemperature();
- EA=1;
- int_asic(DS18B20T);
-
- DisArea_Image(0,0, 1, 1);
- DisText(30,45,0,2,asic ); */
- }
-
-
- }
- }
- void T1_ISR (void) interrupt 3 { //定时器1 溢出中断
-
- T1_cont += 1;
- uS +=555;
- mS +=35;
- dis_cont++;
- }
- void UART1_ISR (void) interrupt 20
- {
- byte t;
- if(SCON1&0x01)
- {
- SCON1 &= 0xfe;
- t = SBUF1;
- table[i++]=t;
- if(i==10)
- {
- if(table[0]==0xee)
- {
- i=0;
- TouchValueX=(table[2]*256)+table[3] ;
- TouchValueY=(table[4]*256)+table[5] ;
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
11912909LY720.zip
(133.34 KB, 下载次数: 27)
|