基于MSP430颜色传感器.doc

基于MSP430颜色传感器.doc

ID:51794028

大小:37.00 KB

页数:3页

时间:2020-03-15

基于MSP430颜色传感器.doc_第1页
基于MSP430颜色传感器.doc_第2页
基于MSP430颜色传感器.doc_第3页
资源描述:

《基于MSP430颜色传感器.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于MSP430颜色传感器(TCS230)的学习总结一、颜色传感器的使用手册1、引脚功能必须清楚S0、S1用于选择输出比例因子或电源关断模式;S2、S3用于选择滤波器的类型;OE反是频率输出使能引脚,可以控制输出的状态,当有多个芯片引脚共用微处理器的输出引脚时,也可以作为片选信号,OUT是频率输出引脚,GND是芯片的接地引脚,VCC为芯片提供工作电压,表1是S0、S1及S2、S3的可用组合。2、颜色识别原理(1)三原色的感应原理通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的

2、一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。(2)TCS230由三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS230来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其他原色的通过。例如:当选择红色

3、滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同时,选择其他的滤波器,就可以得到蓝色光和绿色光的光强。通过这三个值就可以分析投射到TCS230传感器上的光的颜色。二、颜色传感器的引脚定义问题定义引脚时最好不要直接把引脚定义成某个串口,如:#defineTCS_S0P4OUT

4、=BIT0,这样在下面写程序时会非常麻烦,因为你要令它等一或零,还要重新设置下引脚。可以如下设置:#defineCLR_TCS_S0P4OUT&=~BIT0;//清零#defineSET_TC

5、S_S0P4OUT

6、=BIT0;//置一#defineCLR_TCS_S1P4OUT&=~BIT1;#defineSET_TCS_S1P4OUT

7、=BIT1;#defineCLR_TCS_S2P4OUT&=~BIT2;#defineSET_TCS_S2P2OUT

8、=BIT2;#defineCLR_TCS_S3P4OUT&=~BIT3;#defineSET_TCS_S3P4OUT

9、=BIT3;这样用的时候就方便多了。三、颜色传感器的算法1、原理(1)依次选通三颜色的滤波器,然后对TCS230的输出脉冲依

10、次进行计数。当计数到255时停止计数,分别计算每个通道所用的时间,这些时间对应于实际测试时TCS230每种滤波器所采用的时间基准,在这段时间内所测得的脉冲数就是所对应的R、G和B的值。(2)、设置定时器为一固定时间(例如10ms),然后选通三种颜色的滤波器,计算这段时间内TCS230的输出脉冲数,计算出一个比例因子,通过这个比例因子可以把这些脉冲数变为255。在实际测试时,室外同样的时间进行计数,把测得的脉冲数再乘以求得的比例因子,然后就可以得到所对应的R、G和B的值。2、应用原理(2)的算法例程uc

11、hari;r=0.0,b=0.0,g=0.0;for(i=0;i<3;i++){r=r+TCS230_Read_Colour(Red);g=g+TCS230_Read_Colour(Green);b=b+TCS230_Read_Colour(Blue);}r=r/3;g=g/3;b=b/3;if((r>1.2*g)&&(r>1.2*b))returnBrown;if((r>=0.0)&&(r<=40.0)&&(b>=0.0)&&(b<=40.0)&&(g>=0.0)&&(g<=40.0))return

12、Black;if((r>=30)&&(g>=30)&&(r>=30))returnWhite;elsereturn0;}颜色范围的设置可根据画图调整或实际测量四、msp430应用中断计脉冲问题1、因为我们要计脉冲数,所以我们很容易想到捕获模块,需要我们注意的是捕获模块是捕获软件内部的脉冲,不是外部的。我就在陷了很久,所以我们要注意端口的使用。2、端口是单片机中最常用的外设资源。一般在程序的初始化阶段对端口进行配置,配置时,先配置功能选择器PxSEL,若为I/O端口功能,则继续配置方向寄存器PxDIR;

13、若为输入,则继续配置中断使能寄存器PxIE;若允许中断,则继续配置中断处发沿选择寄存器PxIES。需要注意的是当Px端口上的8个引脚中任何一个有中断触发时,都会进入到一个中断服务程序,在中断服务程序中,首先应该通过PxIFG判断是哪个引脚触发的中断。在执行相应的程序,最后还要用软件清除相应的PxIFG标志位。3、应用端口中断的举例单片机在P3.1产生方波,并把P3.1与P1.7相连,在P1.7接收中断,在中断服务程序中让P3.3产生方波。P3DIR

14、=0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。