传感器实验四讲课稿Word格式.docx

上传人:b****6 文档编号:22064580 上传时间:2023-02-02 格式:DOCX 页数:17 大小:665.19KB
下载 相关 举报
传感器实验四讲课稿Word格式.docx_第1页
第1页 / 共17页
传感器实验四讲课稿Word格式.docx_第2页
第2页 / 共17页
传感器实验四讲课稿Word格式.docx_第3页
第3页 / 共17页
传感器实验四讲课稿Word格式.docx_第4页
第4页 / 共17页
传感器实验四讲课稿Word格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

传感器实验四讲课稿Word格式.docx

《传感器实验四讲课稿Word格式.docx》由会员分享,可在线阅读,更多相关《传感器实验四讲课稿Word格式.docx(17页珍藏版)》请在冰豆网上搜索。

传感器实验四讲课稿Word格式.docx

(2)掌握七段数码管显示控制程序的编程方法。

2.实验内容

在IAR集成开发环境中编写七段数码管显示控制程序。

3.相关电路图

4.程序

5.实验现象

按下S2后数码管从0-F以400ms间隔循环递增,S1按住后暂停,松开后数码管显示的数字是加上按住的间隔时间。

比如按住时显示6,800ms松开后数码管会直接显示8。

(2)温湿度传感器采集实验

(1)掌握温湿度传感器的操作方法。

(2)掌握温湿度传感器采集程序的编程方法。

在IAR集成开发环境中编写定时器中断程序。

4.程序

在设置的间隔时间内开始循环显示温度和湿度的值,在传感器周边吹气,温度和湿度的值会改变。

(3)压力传感器实验

(1)掌握压力传感器的工作原理。

(2)掌握压力传感器采集程序的编程方法。

在IAR集成开发环境中编写定时器中断程序

#include"

ioCC2530.h"

#defineuint8unsignedchar

#defineuint16unsignedint

#defineuint32unsignedlong

externvoidSensor_PIN_INT(void);

externuint16ReadAdcValue(uint8ChannelNum,uint8DecimationRate,uint8RefVoltage);

charuart_buffer;

voiddelay(void)

{

unsignedinti;

unsignedcharj;

for(i=0;

i<

1500;

i++)

{

for(j=0;

j<

200;

j++)

{

asm("

NOP"

);

}

}

}

voidUartTX_Send_String(unsignedchar*Data,intlen)//串口发送函数

intj;

for(j=0;

len;

U0DBUF=*Data++;

while(UTX0IF==0);

UTX0IF=0;

}

voidUartTX_Send_Data(unsignedcharData,intlen)//串口发送函数

U0DBUF=Data;

#pragmavector=URX0_VECTOR//uart0中断函数

__interruptvoiduart0(void){

URX0IF=0;

//清中断标志

P0_0=~P0_0;

uart_buffer=U0DBUF;

//UartTX_Send_String("

welcome"

10);

UartTX_Send_Data(uart_buffer,1);

voidmain(void)

unsignedcharbuf[8];

uint16temp;

P0DIR|=0x01;

//设置P0.0为输出方式;

P0.4和P0.5为输入方式

P2DIR|=0x01;

//设置P2.0为输出方式

P0_0=1;

P2_0=1;

//熄灭LED

CLKCONCMD&

=~0x40;

//选择32M晶振

while(!

(SLEEPSTA&

0x40));

//等待XSOC稳定

CLKCONCMD=0xb8;

//TICHSPD128分频,CLKSPD不分频

SLEEPCMD|=0x04;

//关闭不用的RC振荡器

PERCFG=0x00;

//位置1P0口

P0SEL=0x3c;

//P0用作串口

U0CSR|=0x80;

//UART方式

U0GCR|=10;

//baud_e=10;

U0BAUD|=216;

//波特率设为57600

UTX0IF=1;

U0CSR|=0X40;

//允许接收

IEN0|=0x84;

//开总中断,接收中断

Sensor_PIN_INT();

UartTX_Send_String("

Testing...\r\n"

12);

while

(1){

P2_0=~P2_0;

temp=ReadAdcValue(7,3,0x2);

//P0.7采集气象或血压值,12bit,AVDD5作为参考

temp=(temp>

>

4);

buf[0]=(uint8)(temp&

0xff);

buf[1]=(buf[0]>

4)&

0xf;

buf[2]=buf[0]&

if(buf[1]>

0x9)

buf[1]=buf[1]-0XA+'

A'

;

else

buf[1]=buf[1]+'

0'

if(buf[2]>

buf[2]=buf[2]-0XA+'

buf[2]=buf[2]+'

Pressure="

11);

UartTX_Send_String(&

buf[1],1);

UartTX_Send_String(&

buf[2],1);

"

4);

\r\n"

2);

delay();

}//endofmain()

在设置的间隔时间内串口循环显示压力的值,改变压力串口输出发生变化。

(4)三轴加速度实验

(1)掌握三轴加速度传感器的工作原理。

(2)掌握三轴加速度传感器采集程序的编程方法。

在IAR集成开发环境中编写睡眠定时器程序。

在设置的间隔时间内循环显示加速度的值。

三:

心得体会

虽然在打开下载串行口助手调试时,有点小问题不能正常运行结果,但是仔细检查后找到原因。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1