攀藤PMS5003主动式传输协议:
官方推荐的电路:
我的连接方式:
主程序:
/*
功能说明:
读取攀藤PMS5003空气质量传感器数据并显示PM2.5和PM10的值。
*/
#include "config.h"
#include "lcd1602.h"
void UART_init()
{
TMOD = 0x20; //T1工作模式2 8位自动重装
TH1 = 0xfd;
TL1 = 0xfd; //比特率9600
TR1 = 1; //启动T1定时器
SM0 = 0;
SM1 = 1; //串口工作方式1 10位异步
REN = 1; //串口读数使能
ET1 = 0; //禁止T1中断
ES = 0; //禁止串口中断
}
void main()
{
uint8 i, strf;
uint8 strDEC[4]; //用于LCD显示的字符串
uint8 tmp[32]; //用于保存PMS5003发送的32位数据
uint16 local_code, check_code; //校验码相关
uint16 pm5, pm6; //5和6对应的是PMS5003数据5、6(大气环境下PM2.5和PM10)
UART_init(); //串口初始化
LCD1602_init();
LCD1602_dis_str(0, 0, "PM2.5:");
LCD1602_dis_str(0, 1, "PM10 :");
local_code = 0;
while(1)
{
//从第1个字节开始读取32字节数据
do{
while(RI==0); RI = 0; //等待1帧数据接收完毕,完了会自动置1,软件重新置0接收数据
strf = SBUF;
if (strf == 0x42) i = 0; //PMS5003数据串第1个字节为0x42
tmp[i] = strf;
i++;
}while(i<32);
for(i=0; i<30; i++)
{
local_code = local_code + tmp[i]; //本地校验码
}
check_code = ((uint16)tmp[30] << 8) + tmp[31]; //PMS5003发送的校验码
if (local_code == check_code)
{
pm5 = ((uint16)tmp[12] << 8) + tmp[13];
pm6 = ((uint16)tmp[14] << 8) + tmp[15];
int2str(pm5, strDEC);
LCD1602_dis_str(7, 0, " ");
LCD1602_dis_str(7, 0, strDEC);
int2str(pm6, strDEC);
LCD1602_dis_str(7, 1, " ");
LCD1602_dis_str(7, 1, strDEC);
}
check_code = 0;
local_code = 0;
}
}
上一篇:单片机模拟空调温度控制器,按键设定温度和控制风力
下一篇:基于51单片机的智能家居控制系统
推荐阅读
史海拾趣
昆泰芯微电子坚持以人为本,践行合作共赢的企业文化。公司注重员工的个人发展和团队协作,鼓励员工积极参与公司的各项活动和决策。同时,公司也积极与合作伙伴建立良好的合作关系,共同推动行业的发展。公司以正直、求实、进取、创新、协同、分享的十二字箴言作为公司从上至下贯彻的做人做事理念,让员工和企业共同成长,共创前程,共享收获。
以上五个故事概述了昆泰芯微电子在电子行业中的重要发展历程和成就。这些故事不仅展现了公司的技术实力和市场竞争力,也体现了公司的企业文化和发展理念。
Delkin Devices始终将客户放在第一位,致力于为客户提供优质的服务和体验。公司建立了完善的客户服务体系,包括售前咨询、售后服务、技术支持等多个方面。通过专业的服务团队和高效的服务流程,Delkin Devices能够及时解决客户的问题和需求,赢得了客户的信任和好评。同时,Delkin Devices还注重品牌塑造和宣传推广,通过参加行业展会、举办技术研讨会等方式,不断提升品牌知名度和影响力。这些努力使得Delkin Devices在电子行业中树立了良好的口碑和形象。
以上是关于Delkin Devices在电子行业发展的五个故事线索的概述。你可以根据这些线索进一步扩展和深入研究,以了解更多关于Delkin Devices的发展历程和成功经验。
Delkin Devices公司成立于1986年,总部设在美国加利福尼亚州的圣迭戈市。公司由一群富有远见和创造力的工程师和企业家创立,他们看到了未来数据存储技术的巨大潜力。在创立初期,Delkin Devices专注于研发和生产高质量的闪存存储设备,以满足当时市场对数据存储不断增长的需求。通过不断的技术创新和优质的客户服务,Delkin Devices逐渐在电子行业中崭露头角。
随着企业规模的扩大和影响力的提升,泽耀科技(Ashining)开始积极承担社会责任,推动可持续发展。公司注重环保和节能技术的应用,致力于生产环保型电子产品,减少生产过程中的能源消耗和环境污染。同时,泽耀科技还积极参与社会公益事业,为社会的发展贡献自己的力量。
这些故事展示了泽耀科技(Ashining)在电子行业中的发展历程和取得的成就,也体现了公司不断创新、追求卓越的精神。未来,泽耀科技将继续秉持这一精神,为电子行业的发展贡献更多的力量。
进入1950年代,Eclipse Magnetics迎来了一次重要的创新。公司决定将磁铁涂上红色,这一独特的红色磁铁迅速在市场上获得了认可。同时,公司还设计了与红色磁铁相配的马蹄形标志,这一标志后来成为Eclipse Magnetics的国际通用标记。随着品牌的国际化,Eclipse Magnetics的产品开始进入全球市场。
Acculin Inc最初是一家专注于电子元器件研发的小型企业。随着物联网和智能家居的兴起,公司敏锐地捕捉到了市场的机遇,开始研发一款低功耗、高集成度的传感器芯片。经过数年的努力,Acculin成功推出了这款芯片,并凭借出色的性能获得了市场的认可。随后,公司逐渐扩大了产品线,涵盖了多个电子领域,成为行业内技术创新的领军者。
很久没来这里转转,今天发点牢骚吧,本人专职电源,其他系统也做,主要是硬件,软件丢光了. 五年前的10月份开始,我也是一个即将毕业的大学生(二流的),同样在为工作而到处奔波,经过一个月的奔波应聘进入联想深圳研发中心,现在在一家外企做电源FAE.结合大 ...… 查看全部问答∨ |
|
我新建了个项目,程序编好了,运行也对,按这种方法做了,KEIL uvision2 ,进去后点击Project,然后点击Options for Target 然后进去后,找到Output,然后对应的Create HEX FILE 选中,就可以输出HEX文件啦。 不知道还怎么做才能生成HEX文件,或者 ...… 查看全部问答∨ |
|
就是DDK带的那个ndisprot的例子,我绑定一个有线网卡,在2台机器上都安装ndisprot驱动.一个发送,一个接收,(有线对有线)一切都OK.我发送的是自己填充的包,1024bytes的. 但是如果我绑定到无线网卡上,(无线对无线)同样的发送,但它只能接收59bytes的数据, ...… 查看全部问答∨ |
|
函数里面的% !等都什么意思?这个函数Diab编译器可以通过,Green Hills的Multi编译器通不过。应该是PowerPC指令或者汇编指令。asm void MOVE_TO_SPR(unsigned long reg, unsigned long value){% con reg; reg value;! mtspr reg,v ...… 查看全部问答∨ |