资源简介
该工程,是用KEIL开发的适合单片机的采集AD值,并且通过串口传输数据,采用了协议传输,通过相应的上位机显示波形图,很有用
代码片段和文件信息
/**********************
文件名称:ad_wave.c
作者:王伟
说明:串口发送AD例程
修改记录:
***********************/
/**********************
基于STC15F2K60S2系列单片机C语言编程实现
使用如下头文件
***********************/
#include “STC15F2K60S2.h“
/**********************
宏定义
/*********************/
#define Machine_Focs 11059200L
#define BAUD 115200
/**********************
引脚别名定义
***********************/
/**********************
全局变量定义
***********************/
char rec_flag=0; //用于标识接收的数据
unsigned char a=0b=1c=0; //用于保存并校验收到的数据
char flag=0;
unsigned char i=1;
unsigned char zero=0; //发送高8位
unsigned char one=0;
unsigned char temp=0;
unsigned char light=0;
unsigned char zero_t=0; //发送低2位
unsigned char one_t=0;
unsigned char temp_t=0;
unsigned char light_t=0;
unsigned char other=0; //另外凑齐的一个字节
unsigned char sum=0;//存放校验和
/****************************************************************************
*Uart1_Init()
*初始化串口1的相关设置,设定串口的波特率等
***************************************************************/
void Uart1_Init(void)
{
AUXR=0X00; //改为定时器T0为12T工作模式注意工作模式的切换
SCON|=0X50; //允许接收
TL1=(65536-(Machine_Focs/4/BAUD));
TH1=(65536-(Machine_Focs/4/BAUD))>>8;
AUXR|=0X40;
RI=0;
TI=0;
TR1=1;
//使用定时器T0定时为1ms
TMOD=0x00;
IE=0xB2;//包括允许总中断,AD中断,T0中断,串口中断
TH0=(65535-1000)/256;
TL0=(65535-1000)%256;
TR0=1;//启动定时器T0
PS = 1 ; //串口1中断高优先级
}
/********************************************************************************************
*Uart1()
*串口1中断服务程序,只有当接收到数据时才应用串口中断,当发送数据时关闭串口中断
*/
void Uart1_fun() interrupt 4 using 1
{
if(RI==1)
{
RI=0;
if(c==b)
{
b=1;
return;
}
if((rec_flag==0)&&(SBUF==0x5A))
{
// IE=0x90;//测试
a=SBUF;
rec_flag++;
}
else if(rec_flag==1)
{
b=SBUF;
if(b==0x5A)
{
rec_flag=1;
a=0x5A;
return;
}
rec_flag++;
}
else if(rec_flag==2)
{
c=SBUF;
if(c==0x5A)
{
rec_flag=1;
a=0x5A;
return;
}
if(c!=a+b)
{
b=1;
}
rec_flag=0;
// IE=0xB2;
}
}
// if(RI==1)
// {
//
// RI=0;
//
//
// if(rec_flag==2)
// {
// c=SBUF;
// c=~c;
// if(c!=a+b)
// {
// b=1;
// }
// rec_flag=0;
// }
// if(rec_flag==1)
// {
// b=SBUF;
// rec_flag++;
// }
// if(SBUF==0x5A)
// {
// a=SBUF;
// rec_flag++;
// }
//
//
//
//
// }
}
/********************************************************************/
/*
延时函数
*/
void Delay(int n)
{
int y;
while(n--)
{
y=60;
while(y--);
}
}
//发送数据
void SendData(int byt)
{
SBUF=0;//缓冲区清零
SBUF=byt;
while(!TI);
TI=0;
}
//T0中断并且定时发送数据给上位机
void t0int() interrupt 1
{
if(i==b)
{
//TR0=0;
IE=0x00;//发送数据的时候所有关闭所有中断
SendDa
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 32581 2014-08-22 19:49 采集AD值显示波形图工程03\采集AD值显示波形图工程02\参考资料\测光和温度和电压.jpg
文件 65536 2014-08-22 21:40 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD串口传输说明.doc
文件 9226 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave
文件 5403 2014-08-24 01:19 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\ad_wave.c
文件 2131 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.hex
文件 46 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.lnp
文件 15054 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\ad_wave.LST
文件 14533 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.M51
文件 10984 2014-08-24 01:20 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\ad_wave.OBJ
文件 1674 2014-08-24 01:35 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.plg
....... 55728 2014-08-24 01:35 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.uvopt
文件 13473 2014-08-22 18:47 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave.uvproj
....... 55728 2014-08-24 01:35 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave_uvopt.bak
文件 13469 2014-08-22 18:45 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\AD_Wave_uvproj.bak
文件 9064 2014-03-29 12:51 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程\STC15F2K60S2.H
目录 0 2014-08-23 21:31 采集AD值显示波形图工程03\采集AD值显示波形图工程02\参考资料
目录 0 2014-08-24 01:35 采集AD值显示波形图工程03\采集AD值显示波形图工程02\采集AD值显示波形图工程
目录 0 2014-08-23 21:31 采集AD值显示波形图工程03\采集AD值显示波形图工程02
目录 0 2014-08-23 23:41 采集AD值显示波形图工程03
----------- --------- ---------- ----- ----
304630 19
- 上一篇:各大商家统一存储产品分析
- 下一篇:JADE开发多Agent系统.zip
相关资源
- MSP430系列单片机例程(msp430f235)
- 5路循迹模块详细资料
- 灭火小车程序
- 单片机原理及接口技术C51编程张毅刚
- 单片机原理与应用设计课件\\张毅刚编
- 哈工大单片机教材课后答案张毅刚编
- 电动车智能充电桩全套
- 单片机原理与应用设计[张毅刚等编著
- 五路循迹智能小车
- 基于51单片机的交通灯设计
- 51 教室智能灯 控制系统
- 基于单片机的立体车库控制系统设计
- 毕业设计 - 单片机控制LED显示及音乐
- Proteus单片机仿真大全几百个part4
- AD7746采集程序
- 51单片机125Khz ID卡读卡程序
- 基于单片机的室内空气质量检测仪的
- 51单片机课程设计内含50多个课程设计
- keil调试仿真技巧-从入门到精通
- 基于单片机的GPS定位及显示系统设计
- 51单片机实现蜂鸣器的简易歌曲播放器
- 基于51单片机的智能十字路口交通灯系
- 51单片机编写的标准modbus协议通信模版
- SIM900A通过51单片机拨打电话程序
- 基于单片机的家庭无线红外测温仪
- 单片机原理及接口技术C51编程
- at89c51单片机外文翻译
- nec78系列单片机例程
- 肌电信号采集
- Lcd12864大时钟万年历 农历生肖温度
评论
共有 条评论