求51单片机用的的 TCS230D颜色识别模块c语言程序

求51单片机用的的TCS230D颜色识别模块c语言程序... 求51单片机用的的 TCS230D颜色识别模块c语言程序 展开
 我来答
百度网友d7dea40
2013-10-27 · 超过12用户采纳过TA的回答
知道答主
回答量:29
采纳率:100%
帮助的人:16.1万
展开全部
//转自某某大侠的(名字忘了)此程序用于颜色模块TCS230D的51驱动(2010.08.26大侠)
//鉴于你应该知道TCS230D芯片的资料,芯片引脚功能我就不说了

#include<reg52.h>

unsigned  char tmp;

 

/*******************************************

定义颜色识别模块引脚

*******************************************/

sbit  clr_S0=P3^0;

sbit  clr_S1=P3^1;

//设置p3.0脚3.1脚分别接到tcs230d芯片的s0和s1脚

sbit  clr_OE=P3^2;

sbit   clr_OUT=P3^5;

//设置p3.2脚3.5脚分别接到tcs230d芯片的OE和OUT脚

sbit  clr_S2=P3^4;

sbit  clr_S3=P3^3;

//设置p3.4脚3.3脚分别接到tCS230D芯片的S2和S3脚

/*******************************************/
/**********

串口初始化

***********************/

/*******************************************/

 

void  init_ser()//初始化串口

{

    TMOD=0x20;

    TH1=0xfd;

    TL1=0xfd;

    SCON=0x50;

    PCON&=0xef;

    TR1=1;

    IE=0x00;

}

 

void  ser_sendchar(unsigned char a)//串口发送一个字节

    SBUF=a;

    while(!TI);

    TI=0;

}

/*******************************************/

 

/********

颜色识别模块配置

*******************/

 

/*******************************************/ 

void init_clr()

{

    clr_OE=1;

}

unsigned int clr_get(unsigned char a)

{

    unsigned int time;

    TMOD=0x61;//设置定时器0工作方式为16位

    TH0=TL0=0x00;//设置定时器0从0计时

    TH1=TL1=0x00;

    clr_S0=1;

    clr_S1=1;

    clr_S2=a&0x02;

    clr_S3=a&0x01;

    clr_OE=0;

    TR1=TR0=1;

    while(TL1<250);

    TR1=TR0=0;

    clr_OE=1;

    time=TH0*256+TL0;

    return(time);

}

 

/*******************************************/
/*******************************************/

/*******************************************/

void main()

{

    unsigned int a;

    init_ser();

    init_clr();

    while(1)

    {

        if(RI)

        {

            RI=0;

            tmp=SBUF;

            a=clr_get(tmp);

            init_ser();

            ser_sendchar(a&0x00ff);

            ser_sendchar(a/256);

        }

    }

}

以上就是整个代码部分,希望有帮助

意法半导体(中国)投资有限公司
2023-06-12 广告
单片机是一种集成电路芯片。又称单片微控制器,是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。一块芯片就成了一台计算机。特点是体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。 单... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式