CYPRESS psoc4初次使用感想三 —— 电子温度计

原创 2013年12月03日 15:46:46

PsoC4内置了温度传感模块,因此可以使用此模块取得环境温度并将结果输出到显示屏上,实现同时显示摄氏温度和绝对温度的功能。


要用到的材料:

公头杜邦线12根;

1602液晶屏一个;

PsoC4开发板一块;

1.1KOhm电阻一枚;

USB线一条。


温度信息在1602上这样显示,上方显示绝对温度, 下方显示摄氏温度:

TempK = 300.15 °K

TempS  = 27        °C


然后设计需要用到的组件:



根据针脚定义图确定接线位置:

http://blog.csdn.net/firedom/article/details/17028489

http://pan.baidu.com/s/1f7r3B 第13页说明



连接好后会像这个样子:


然后链接电源和背光线和对比度控制线:


将一个1.1KOhm电阻接在对比度控制端,使文字更容易辨认。

然后是程序:

#include <device.h>
#include <stdio.h>
#define CH0_N           0x00u
#define TEMP_CH         0x01u
#define DELAY_1SEC      1000u
volatile uint32 dataReady = 0u;
volatile int16 result[ADC_SAR_SEQ_TOTAL_CHANNELS_NUM];
volatile uint32 timer_delay = 0u;


void main()
{
    float temperature;
    LCD_Start();
    LCD_Position(0u,0u);
    LCD_PrintString("TempK =       ");
    LCD_PutChar(LCD_CUSTOM_0);
    LCD_PutChar('K');
    LCD_Position(1u,0u);
    LCD_PrintString("TempS =       ");
    LCD_PutChar(LCD_CUSTOM_0);
    LCD_PutChar('C');
    PWM_Start();
    PWM_TriggerCommand(PWM_MASK, PWM_CMD_START);
    ADC_SAR_SEQ_Start();
    ADC_SAR_SEQ_StartConvert();
    ADC_SAR_SEQ_IRQ_StartEx(ADC_SAR_SEQ_ISR_LOC);
    ISR_TIMER_StartEx(ISR_TIMER_LOC);
    CyGlobalIntEnable;

    while(1)
    {
        if((dataReady & ADC_SAR_SEQ_INJ_EOC_MASK) != 0u)
        {
            dataReady &= ~ADC_SAR_SEQ_INJ_EOC_MASK;
            temperature = DieTemp_CountsTo_Celsius(result[TEMP_CH]);
            LCD_Position(0u,8u);
            LCD_PrintString("    ");
            LCD_Position(0u,8u);      
            LCD_PrintNumber(temperature + 273);
            LCD_PutChar('.');
            LCD_PrintNumber(15);
            LCD_Position(1u,8u);
            LCD_PrintString("     ");
            LCD_Position(1u,8u);
            LCD_PrintNumber((float)temperature);
        }
    }
}



最后是成品展示:


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

CYPRESS psoc4初次使用感想二 —— 应用总览

为期两天的数电+口语考试终于结束了,终于可以静下心来写代码了。嗯,还有继续测试psoc。 本想安装最新版的psoc开发环境,结果发现在我的电脑上每次安装时都会蓝屏。尝试各种解决办法后蓝屏依旧。没办...

CYPRESS psoc4初次使用感想

最近成功收到了tengfei发给我的psoc4kit。记得第一次听说CYPRESS是在某个群里知道的。有人在群中共享了一份cypress workshop研讨会的报名表。大概看了一下报名表,在7月30...

【PSOC4】入门学习笔记6——电容触摸滑条控制LED灯

今天主要是学习电容式感应组件,通过滑动板子上的触摸滑条来改变LED灯的亮度。 试验步骤: 1、在原理图界面中放置一个CapSense CSD组件,一个时钟组件,一个PWM组件以及一个数字量输出引脚...

PSOC 5LP cypress register PDF

  • 2015-03-07 11:21
  • 4.88MB
  • 下载

Psoc Creator 入门——接近感应组件的使用

关于传感器的设计这里不做介绍,本文仅涉IDE的方面,哪天脑壳坏了再写一篇关于pcb设计的注意事项。 1、打开TopDesign.cysch文件,选择CapSense CSD[v2.40] ...

CyPress PSoC中文介绍

  • 2011-08-22 10:04
  • 2.08MB
  • 下载

Eink电子书--博阅G10二代 使用感想

1.关于字体 2.关于词典 3.关于书架 4.评价 ------------------------------------ 1.关于字体         可以将ttf 格式的字体放到 机器内存或...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)