资源简介
基于51的压力传感器C语言实现代码,非常不错,绝对可以运行得通
代码片段和文件信息
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define BUSY 0x80 //常量定义
#define DATAPORT P0
//ADC0832的引脚
sbit ADCS =P3^5; //ADC0832 chip seclect
sbit ADDI =P3^7; //ADC0832 k in
sbit ADDO =P3^7; //ADC0832 k out
sbit ADCLK =P3^6; //ADC0832 clock signal
sbit LCM_RS=P2^0;
sbit LCM_RW=P2^1;
sbit LCM_EN=P2^2;
uchar ad_data; //采样值存储
sbit Alarm_led_red =P1^5; //超过压力表量程最大值红色led报警定义
sbit Alarm_led_green=P1^6; //低于压力表量程最小值绿色led报警定义
//adc采样值存储单元
char press_data; //标度变换存储单元
unsigned char ad_alarm; //报警值存储单元
unsigned char press_bai=0; //显示值百位
unsigned char press_shi=0; //显示值十位
unsigned char press_ge=0; //显示值个位
unsigned char press_dot=0; //显示值十分位
uchar code str0[]={“Press: . kpa. “};
uchar code str1[]={“ Check BY Jack “};
void delay(uint);
void lcd_wait(void);
void delay_LCM(uint); //LCD延时子程序
void initLCM( void); //LCD初始化子程序
void lcd_wait(void); //LCD检测忙子程序
void WriteCommandLCM(uchar WCLCMuchar BusyC); //写指令到ICM子函数
void WriteDataLCM(uchar WDLCM); //写数据到LCM子函数
void DisplayOneChar(uchar Xuchar Yuchar DData); //显示指定坐标的一个字符子函数
void DisplayListChar(uchar Xuchar Yuchar code *DData); //显示指定坐标的一串字符子函数
void display(void); //系统显示子函数
uchar Adc0832(unsigned char channel);
void alarm(void);
void data_pro(void);
/**********main funcation************/
void main(void)
{
delay(500); //系统延时500ms启动
// ad_data=0; //采样值存储单元初始化为0
initLCM( );
WriteCommandLCM(0x011); //清显示屏
DisplayListChar(00str0);
DisplayListChar(01str1);
while(1)
{
ad_data =Adc0832(0); //采样值存储单元初始化为0
alarm();
data_pro();
display();
}
}
/*********延时K*1ms12.000mhz**********/
void delay(uint k)
{
uint ij;
for(i=0;i {
for(j=0;j<60;j++)
{;}
}
}
/**********写指令到ICM子函数************/
void WriteCommandLCM(uchar WCLCMuchar BusyC)
{
if(BusyC)lcd_wait();
DATAPORT=WCLCM;
LCM_RS=0; // 选中指令寄存器
LCM_RW=0; // 写模式
LCM_EN=1;
_nop_();
_nop_();
_nop_();
LCM_EN=0;
}
/**********写数据到LCM子函数************/
void WriteDataLCM(uchar WDLCM)
{
lcd_wait( ); //检测忙信号
DATAPORT=WDLCM;
LCM_RS=1; // 选中数据寄存器
LCM_RW=0;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-03-31 22:23 yl\
文件 6376 2009-05-07 14:37 yl\STARTUP.A51
文件 14048 2011-11-16 22:05 yl\STARTUP.LST
文件 758 2011-11-16 22:05 yl\STARTUP.OBJ
文件 17018 2011-11-16 22:05 yl\ylcg
文件 14428 2011-11-16 22:05 yl\ylcg.LST
文件 19478 2011-11-16 22:05 yl\ylcg.M51
文件 17528 2011-11-16 22:05 yl\ylcg.OBJ
文件 8262 2011-11-16 22:05 yl\ylcg.c
文件 5385 2011-11-16 22:05 yl\ylcg.hex
文件 41 2011-11-16 22:05 yl\ylcg.lnp
文件 590 2011-11-16 22:05 yl\ylcg.plg
文件 55655 2011-11-16 22:34 yl\ylcg.uvopt
文件 13396 2011-11-16 22:34 yl\ylcg.uvproj
文件 0 2011-11-16 22:04 yl\ylcg_uvproj.bak
- 上一篇:工程规划(project)
- 下一篇:C++Primer中文版第五版
相关资源
- C51单片机技术教程(304页)
- C语言模块化编程(我见过最好的)
- 基于esp32的摄像头采集图像代码
- C51单片机交通
- PCA9539驱动程序
- STM32连接EC20使用内置MQTT协议接入阿里
- TM4C123中文手册
- 单片机C语言实战开发108例
- stm32 AD7506
- stc-isp-15xx-v6.86G
- Linux那些事儿之我是USB core
- STC8G1K08A红外遥控点灯
- C语言的嵌入式汇编基本使用.docx(2页
- stm32f103c8t6开发板原理图+pcb
- Arduino 敲琴MIDI电子琴 程序报告.docx
- CAN实验
- LCD驱动芯片ST7701SI SPI接口底层驱动配
- 显示屏操作(stm32f103c8t6(SAN))
- USB CAN Tool 源代码(LabVIEW 2011环境)
- Proteus 8.6仿真STM32F103C6
- atmega128 串口通讯(RS485.c)
- C语言嵌入式Modbus协议栈,支持主站和
- stm32 +w5500 裸机 远程升级 自动dns pi
- 永磁同步电机的FOC控制算法
- arduino I2C设备扫描并串口返回地址(
- Proteus仿真:LCD液晶屏显示.rar
- STM32 PCB封装库 全系列 全网不好找
- 基于STM32F407的W5500 tcpserver(官网例程
- 步进电机调速原理.c
- tm1650+stm32f103源码(board_tm1650.c)
评论
共有 条评论