• 大小: 355KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: PIC单片机  

资源简介

该软件系统可以实现压力传感器mpx4250的压力测量,能够实现将电信号转变为数字信号,并能够在lcd1602液晶显示上显示相应的压力值。实测可用值得推广

资源截图

代码片段和文件信息


#include            //调用PIC16F87XA单片机的头文件
#include “LCD1602.h“    




//1602液晶用延时函数
//---------------------------------------
void Delay1602_US(unsigned int t)

     unsigned int k;      //定义一个16位寄存器用来做延时用 
     for(k=0;k

void Delay1602_MS(unsigned int t)

     while(t--)
     Delay1602_US(200);

void LCD1602_BusyTest(void)

     busy_init=1;            //将RD7口设置为输入口,为读做准备 
     RS=0;                //RS=0、RW=1、E=1时,忙信号输出到DB7,由RD7读入
     RW=1;                //RS=0、RW=1、E=1时,忙信号输出到DB7,由RD7读入
     E=1;                 //RS=0、RW=1、E=1时,忙信号输出到DB7,由RD7读入
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     while(busy==1);       //由RD7读入1,表示1602液晶忙,需要等待
     E=0;                 //读完以后,恢复E的电平
     busy_init=0;            //将RD7口设置为输出口




//---------------------------------------
//名称:1602写命令函数(带忙检测)
//---------------------------------------
void LCD1602_Write_Instruction(unsigned char combuf)

     LCD1602_BusyTest();            //调用忙检测函数
     RS=0;                //选择指令寄存器
     RW=0;                //选择写状态
     E=0;  
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     Lcd_Date=combuf;        //将命令字通过RD口送至DB
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     E=1;                 //E高电平将命令字写入1602液晶
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     E=0;                 //写完以后,恢复E的电平


//---------------------------------------
//名称:1602写数据函数(带忙检测)

//---------------------------------------
void LCD1602_Write_data_busy(unsigned char databuf)

     LCD1602_BusyTest();      //调用忙检测函数
     RS=1;                //选择数据寄存器
     RW=0;                //选择写状态
      E=0;  
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     Lcd_Date=databuf;        //将命令字通过RD口送至DB
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     E=1;                 //E高电平将命令字写入1602液晶
     asm(“NOP“);          //添加一个空操作,使高电平至少维持1us
     E=0;                 //写完以后,恢复E的电平


 


//---------------------------------------
//名称:1602液晶初始化函数
//---------------------------------------
void LCD1602_init(void)

     Delay1602_US(1500);          //调用延时函数
     LCD1602_Write_Instruction(0x38);  //8位数据总线,两行显示模式,5*7点阵显示
     Delay1602_US(500);           //调用延时函数
     LCD1602_Write_Instruction(0x38);  //8位数据总线,两行显示模式,5*7点阵显示
     Delay1602_US(500);           //调用延时函数
     LCD1602_Write_Instruction(0x38);  //8位数据总线,两行显示模式,5*7点阵显示
     LCD1602_Write_Instruction(0x38);  //8位数据总线,两行显示模式,5*7点阵显示
     LCD1602_Write_Instruction(0x08);  //显示功能关,无光标
     LCD1602_Write_Instruction(0x01);  //清屏
     LCD1602_Write_Instruction(0x06);  //写入新的数据后,光标右移,显示屏不移动
     LCD1602_Write_Instruction(0x0C);  //显示功能开,无光标


/****************显示指定坐标的一个字符子函数*************/

void DisplayOneChar(unsigned char Xunsigned char Yunsigned char DData)
{

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-04-17 09:50  pressure2\
     文件        4420  2019-04-17 09:49  pressure2\1602.c
     文件         344  2019-04-17 09:44  pressure2\1602.dep
     文件       53262  2019-04-17 09:49  pressure2\1602.p1
     文件       14902  2019-04-17 09:49  pressure2\1602.pre
     文件      198606  2019-04-17 09:49  pressure2\KEY.as
     文件       90823  2019-04-17 09:49  pressure2\KEY.cof
     文件       22179  2019-04-17 09:49  pressure2\KEY.hex
     文件       10032  2019-04-17 09:49  pressure2\KEY.hxl
     文件      345831  2019-04-17 09:49  pressure2\KEY.lst
     文件       44497  2019-04-17 09:49  pressure2\KEY.map
     文件        1200  2019-04-17 09:50  pressure2\KEY.mcp
     文件        7840  2019-04-17 09:50  pressure2\KEY.mcs
     文件     2750464  2019-04-17 09:50  pressure2\KEY.mcw
     文件       94682  2019-04-17 09:49  pressure2\KEY.obj
     文件      539184  2019-04-17 09:49  pressure2\KEY.rlf
     文件       22392  2019-04-17 09:49  pressure2\KEY.sdb
     文件       21345  2019-04-17 09:49  pressure2\KEY.sym
     文件        8689  2019-04-15 09:43  pressure2\KEY.zip
     文件         886  2019-04-17 09:49  pressure2\LCD1602.H
     文件       45863  2019-04-14 15:40  pressure2\delay.p1
     文件       12724  2019-04-14 15:40  pressure2\delay.pre
     文件       29589  2019-04-17 09:49  pressure2\doprnt.p1
     文件       12003  2019-04-17 09:49  pressure2\doprnt.pre
     文件         987  2019-04-17 09:49  pressure2\funclist
     文件      127093  2019-04-14 15:40  pressure2\key.cPreview
     文件         253  2019-04-14 15:40  pressure2\key.dep
     文件       49634  2019-04-14 15:40  pressure2\key.p1
     文件       13833  2019-04-14 15:40  pressure2\key.pre
     文件       27021  2019-04-14 15:40  pressure2\lcd1602.p1
     文件       18443  2019-04-14 15:40  pressure2\lcd1602.pre
............此处省略8个文件信息

评论

共有 条评论