📄 u_dis.c
字号:
#include<pic.h>
#define uchar unsigned char
#define uint unsigned int
#define OK 0xf0
#define ERROR 0xf1
#define R 1
#define W 0
#define IIC_SCL RB3 //IIC通信时钟
#define IIC_SDA RB4 //IIC数据线
#define IIC_SDA_OUT TRISB4 = 0 //IO口设为输出口
#define IIC_SDA_IN TRISB4 = 1 //IO口设为输入口
#define LCM_CS RB7
#define LCM_WR RB6
#define LCM_DATA RB5
#define ModeKey RB1 //模式选择按键
uchar dis[10];
uchar Mode; //模式记数
/********************************************************************
*
* 名称: wait_ms
* 说明: 4MHz晶体,PIC16F873
* 功能: 延时n ms
* 调用: 无
* 输入: ms 延时毫秒数,ms=n 延时n ms.
* 返回值: 无
***********************************************************************/
void wait_ms(uchar ms)
{
uchar i;
for(;ms>0;--ms)
for(i=168;i>0;--i)
asm("CLRWDT");
return;
}
#include"e:\code\ultra_dis\lcm103.c"
#include"e:\code\ultra_dis\wr.c"
void MCU_Initi(void)
{
TRISB = 0b00000011;
OPTION = 0b00000000; //分配前分频器给Timer0 1:2 预分频
PEIE = 1;
GIE = 0;
T1CON = 0b00000001; //Timer1前分频为1:1,现在是关闭的
TMR1IE = 0; //Timer1中断禁止
TMR1IF = 0;
wait_ms(250);
wait_ms(250);
lcm103_initi();
}
void main(void)
{
uchar DataBuff[4] = {0x44,0x44,0x44,0x44};
uchar i,Temp,Temp2;
uint DataInt;
MCU_Initi();
for(Temp=0;Temp<10;Temp++)
{
dis[Temp]=Temp;
}
WR_DATA10();
wait_ms(250);
wait_ms(250);
wait_ms(250);
wait_ms(250);
Mode = 1;
while(1)
{
if(ModeKey == 0)
{
wait_ms(10);
if(ModeKey == 0)
{
if(Mode == 7)
Mode = 1;
else
Mode++;
}
while(!ModeKey);
}
switch(Mode)
{
case 1:
case 2:
case 3:
case 4: AD_Test(Mode);
break;
case 5: DisplayTemper();
break;
case 6: DisplayUltra();
break;
case 7: EEPROM_Test();
wait_ms(250);
wait_ms(250);
wait_ms(250);
wait_ms(250);
Mode = 1;
break;
default :
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -