基于单片机电容测量仪仿真设计-学习笔记

仿真电路:

 

/*      预处理区    */
#include<reg52.h>   //加载"reg52.h"头文件
#include<math.h>    //加载"math.h"头文件

/*  宏定义   */
#define unchar unsigned char    //无符号字符型
#define unint unsigned int      //无符号整型
#define N 10                    //延时参数

/*      数组常量定义  */
unchar code row1[] = ">>Capacitance:<<";    //液晶输出的第一行显示编码
unchar code row2[] = {"0123456789"};        //液晶的0~9编码
unchar code tip_1[] = "Please lini cap";    //液晶输出行
unchar code tip_2[] = "then push'start'";   //液晶输出行
/*  位定义   */
sbit lcd_rs = P2 ^ 0;   //液晶的数据命令选择端
sbit lcd_rw = P2 ^ 1;   //液晶的读写选择端
sbit lcd_en = P2 ^ 2;   //液晶的使能端
sbit show = P1 ^ 0;     //开始按键
sbit clear = P1 ^ 1;    //清屏按键
sbit led = P1 ^ 2;      //电源灯
/*      变量定义    */
unint flag = 0;             //标志位
double count = 0;           //计数
double final = 0;           //高电平时间
double cx = 0;              //电容数值
unint w1, w2, w3, w4, i;    //变量定义 百位,十位,个位,十分位,循环计数位。

/*  自定义函数声明   */
void init();            //初始化函数
void delay(unint);      //延时函数
void write_com(unchar); //液晶写指令
void write_data(unchar);//液晶写数据
void firstline();       //液晶第一行显示
void display();         //电容大小输出函数
void tip();             //初始显示函数
void chose();           //判断按键函数

 

 

posted @ 2021-03-11 09:22  MCU创新DIY  阅读(63)  评论(0)    收藏  举报