-
大小: 355KB文件類型: .zip金幣: 2下載: 0 次發(fā)布日期: 2021-05-29
- 語言: 其他
- 標(biāo)簽: PIC單片機(jī)??
資源簡介
該軟件系統(tǒng)可以實(shí)現(xiàn)壓力傳感器mpx4250的壓力測量,能夠?qū)崿F(xiàn)將電信號(hào)轉(zhuǎn)變?yōu)閿?shù)字信號(hào),并能夠在lcd1602液晶顯示上顯示相應(yīng)的壓力值。實(shí)測可用值得推廣

代碼片段和文件信息
#include????????????//調(diào)用PIC16F87XA單片機(jī)的頭文件
#include?“LCD1602.h“????
//1602液晶用延時(shí)函數(shù)
//---------------------------------------
void?Delay1602_US(unsigned?int?t)
{?
?????unsigned?int?k;??????//定義一個(gè)16位寄存器用來做延時(shí)用?
?????for(k=0;k }?
void?Delay1602_MS(unsigned?int?t)
{?
?????while(t--)
?????Delay1602_US(200);
}?
void?LCD1602_BusyTest(void)
{?
?????busy_init=1;????????????//將RD7口設(shè)置為輸入口,為讀做準(zhǔn)備?
?????RS=0;????????????????//RS=0、RW=1、E=1時(shí),忙信號(hào)輸出到DB7,由RD7讀入
?????RW=1;????????????????//RS=0、RW=1、E=1時(shí),忙信號(hào)輸出到DB7,由RD7讀入
?????E=1;?????????????????//RS=0、RW=1、E=1時(shí),忙信號(hào)輸出到DB7,由RD7讀入
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????while(busy==1);???????//由RD7讀入1,表示1602液晶忙,需要等待
?????E=0;?????????????????//讀完以后,恢復(fù)E的電平
?????busy_init=0;????????????//將RD7口設(shè)置為輸出口
}?
//---------------------------------------
//名稱:1602寫命令函數(shù)(帶忙檢測)
//---------------------------------------
void?LCD1602_Write_Instruction(unsigned?char?combuf)
{?
?????LCD1602_BusyTest();????????????//調(diào)用忙檢測函數(shù)
?????RS=0;????????????????//選擇指令寄存器
?????RW=0;????????????????//選擇寫狀態(tài)
?????E=0;??
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????Lcd_Date=combuf;????????//將命令字通過RD口送至DB
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????E=1;?????????????????//E高電平將命令字寫入1602液晶
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????E=0;?????????????????//寫完以后,恢復(fù)E的電平
}?
//---------------------------------------
//名稱:1602寫數(shù)據(jù)函數(shù)(帶忙檢測)
//---------------------------------------
void?LCD1602_Write_data_busy(unsigned?char?databuf)
{?
?????LCD1602_BusyTest();??????//調(diào)用忙檢測函數(shù)
?????RS=1;????????????????//選擇數(shù)據(jù)寄存器
?????RW=0;????????????????//選擇寫狀態(tài)
??????E=0;??
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????Lcd_Date=databuf;????????//將命令字通過RD口送至DB
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????E=1;?????????????????//E高電平將命令字寫入1602液晶
?????asm(“NOP“);??????????//添加一個(gè)空操作,使高電平至少維持1us
?????E=0;?????????????????//寫完以后,恢復(fù)E的電平
}?
?
//---------------------------------------
//名稱:1602液晶初始化函數(shù)
//---------------------------------------
void?LCD1602_init(void)
{?
?????Delay1602_US(1500);??????????//調(diào)用延時(shí)函數(shù)
?????LCD1602_Write_Instruction(0x38);??//8位數(shù)據(jù)總線,兩行顯示模式,5*7點(diǎn)陣顯示
?????Delay1602_US(500);???????????//調(diào)用延時(shí)函數(shù)
?????LCD1602_Write_Instruction(0x38);??//8位數(shù)據(jù)總線,兩行顯示模式,5*7點(diǎn)陣顯示
?????Delay1602_US(500);???????????//調(diào)用延時(shí)函數(shù)
?????LCD1602_Write_Instruction(0x38);??//8位數(shù)據(jù)總線,兩行顯示模式,5*7點(diǎn)陣顯示
?????LCD1602_Write_Instruction(0x38);??//8位數(shù)據(jù)總線,兩行顯示模式,5*7點(diǎn)陣顯示
?????LCD1602_Write_Instruction(0x08);??//顯示功能關(guān),無光標(biāo)
?????LCD1602_Write_Instruction(0x01);??//清屏
?????LCD1602_Write_Instruction(0x06);??//寫入新的數(shù)據(jù)后,光標(biāo)右移,顯示屏不移動(dòng)
?????LCD1602_Write_Instruction(0x0C);??//顯示功能開,無光標(biāo)
}?
/****************顯示指定坐標(biāo)的一個(gè)字符子函數(shù)*************/
void?DisplayOneChar(unsigned?char?Xunsigned?char?Yunsigned?char?DData)
{
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????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個(gè)文件信息
- 上一篇:VHDL頻率計(jì)
- 下一篇:接觸角測量軟件免費(fèi)版
評(píng)論
共有 條評(píng)論