查看: 5405|回复: 6

[分享] LPC824Breakout Mbed+DHT11温湿度

[复制链接]
  • TA的每日心情
    开心
    2025-1-21 08:52
  • 签到天数: 861 天

    连续签到: 1 天

    [LV.10]以坛为家III

    75

    主题

    2523

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5867
    最后登录
    2025-1-22
    发表于 2016-12-11 19:21:18 | 显示全部楼层 |阅读模式
    试着在mbed,用DHT11测试了一下温湿度,可能是lpc824的针太细了,插得不是很牢,显示的误差也特别大,附上代码

    1. #include "mbed.h"


    2. Serial pc(USBTX, USBRX);
    3. DigitalOut myled(LED1);

    4. //DigitalIn mybutton(USER_BUTTON); // Activate button
    5. DigitalInOut data_pin(A0); // Activate digital in/out (pio0_6)

    6. Timer tmr; //initialize timer
    7. uint64_t adat; // 64 bit variable for temporary data
    8. int i;

    9. void dht_read(void) {
    10.     data_pin.output(); // Set A0 as output
    11.     // Initialize measurement > 18 ms low
    12.     data_pin = 0;
    13.     wait_ms(20);
    14.     // After high and release the pin switch input mode
    15.     data_pin = 1;
    16.     data_pin.input();
    17.     // Wait until the end of 80 us low
    18.     while(!data_pin.read()) {}
    19.     // Wait until end of 80 us high
    20.     while(data_pin.read()) {}
    21.     // 40 bit, 40 read out cycle
    22.     for(i=0; i<40; i++) {
    23.         adat = adat << 1; // Shift for new number
    24.         tmr.stop(); // Stop timer if runs
    25.         tmr.reset();  // Reset timer
    26.         // Wait until pin
    27.         while(!data_pin.read()) {}         
    28.         tmr.start();            
    29.         while(data_pin.read()) {}
    30.         // If DHT11 HIGH longer than 40 micro seconds (hopefully 70 us)
    31.         if(tmr.read_us() > 40) {
    32.             // bit is 1
    33.             adat++;
    34.         }
    35.     }
    36. }




    37. int main() {

    38.         
    39.    
    40.    
    41.      pc.printf("Read the DHT11 temperature and humidity sensor!\r\n"); //Welcome message
    42.     while(1) {
    43.         
    44.         adat = 0;
    45.             myled = !myled; // LED is ON
    46.             dht_read(); // Call the function
    47.             // Send result through UART result
    48.             pc.printf("Humidity: ");
    49.             pc.printf("%d", (adat  & 0x000000ff00000000) >> 32); // Humidity
    50.             pc.printf("\n\r"); // Send a new line and carriage return.
    51.              pc.printf("Temperature: ");
    52.             pc.printf("%d", (adat & 0x0000000000ff0000) >> 16 ); // Temperature
    53.             pc.printf("\n\r");
    54.             pc.printf("Checksum: ");
    55.             pc.printf("%d", adat & 0x00000000000000ff); // Checksum.
    56.             pc.printf("\n\r");
    57.             //wait(2); // Wait 2 sec till continue.
    58.       
    59.       
    60.     }
    61. }
    复制代码


    编译后下载,依然不能超过18k

    编译后下载,依然不能超过18k

    串口返回的信息,跳动比较大,接触不良

    串口返回的信息,跳动比较大,接触不良
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:16
  • 签到天数: 191 天

    连续签到: 1 天

    [LV.7]常住居民III

    11

    主题

    664

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1722
    最后登录
    2017-10-15
    发表于 2016-12-11 20:03:02 | 显示全部楼层
    谢谢分享                        
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-21 08:52
  • 签到天数: 861 天

    连续签到: 1 天

    [LV.10]以坛为家III

    75

    主题

    2523

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5867
    最后登录
    2025-1-22
     楼主| 发表于 2016-12-11 21:04:37 | 显示全部楼层

    多谢支持
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-5-29 08:54
  • 签到天数: 2992 天

    连续签到: 8 天

    [LV.Master]伴坛终老

    45

    主题

    5548

    帖子

    22

    金牌会员

    Rank: 6Rank: 6

    积分
    12035
    最后登录
    2025-5-29
    发表于 2016-12-12 09:34:49 | 显示全部楼层
    赞一个,谢谢分享。
    签到签到
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-21 08:52
  • 签到天数: 861 天

    连续签到: 1 天

    [LV.10]以坛为家III

    75

    主题

    2523

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5867
    最后登录
    2025-1-22
     楼主| 发表于 2016-12-12 10:48:10 | 显示全部楼层
    感谢鼓励
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-1-13 13:54
  • 签到天数: 32 天

    连续签到: 1 天

    [LV.5]常住居民I

    5

    主题

    236

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    423
    最后登录
    2017-10-31
    发表于 2016-12-12 12:42:15 | 显示全部楼层
    怎么都是Ubuntu编译啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-21 08:52
  • 签到天数: 861 天

    连续签到: 1 天

    [LV.10]以坛为家III

    75

    主题

    2523

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5867
    最后登录
    2025-1-22
     楼主| 发表于 2016-12-12 15:04:15 | 显示全部楼层
    残虹断梦 发表于 2016-12-12 12:42
    怎么都是Ubuntu编译啊

    GCC选这个比较合适点吧,也可以用你自己喜欢的操作系统哦
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 21:02 , Processed in 0.099273 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表