Z3JPZUTz

ls_pi elf (learning board)

 
Overview

硬件原理
一、这次硬件设计有
1、ds1302时钟设计
2、DHT12湿度传感器
3、DA播放音乐(程序正在设计)
4、esp01s
5、2个led彩灯
二、支持展板的程序(点击跳转相应代码)
1、点灯控制
2、lcd屏幕(参考官方啊)
3、key按键
4、esp(请先用AT指令设置ap)串口打印
因为要用到2个串口(USART0、USART1),这时候就与要独立的串口打印“usartPrintf”(不能同时重定义到printf)、在配合cjson非常丝滑,
5、dht11程序
6、ds1302程序
7、delay函数实现
请期待
>>>>>>>>>>>>>
x、u8g2
x、什么时候想好  就来(狗头保命)
三、Cjson库的使用
cjson的使用   到官网去下载cjson,或者移步下方
示例
 
#include "gd32f4xx.h"#include #include "led.h"#include  "usart.h"#include  "string.h"#include "stdlib.h"#include "dht11.h"#include "delay.h"#include "cJSON.h"

void parse_led(const char *JSON){    cJSON *json,*led0 , *led1;    printf("data before:%s
",JSON);    json = cJSON_Parse(JSON);//解析串口的JSON数据    if(json==NULL)    {        printf("json_erro:[%s]
",cJSON_GetErrorPtr());//输出语法错误的位置    }    else    {        led0 = cJSON_GetObjectItem(json,"led1");        led1 = cJSON_GetObjectItem(json,"led2");        printf("led1=%d
",led0->valueint);        printf("led2=%d
",led1->valueint);        if(led0->valueint==1 ){led1_on();}else{led1_off();}                if(led1->valueint==1 ){led2_on();}else{led2_off();}        //memset(g_recv_buff, 0, g_recv_length);      // 清空数组    }    cJSON_Delete(json); // 释放内存    }

int main(void){       nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2); // 优先级分组    LED_GPIO_Init();    Usart_gpio_Init(115200);    DHT11_Init();     printf("Interrupt receive
");   while (1)    {                 if(g_recv_complete_flag==1)          {            delay_ms(10);            parse_led ((const char *)g_recv_buff );            g_recv_complete_flag=0;          }   }}


后续有时间在肝
 
工程文件放在下面   本人学生一枚,诸君共勉!  同时感谢JLC的技术支持人员*v*!
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-06-20 15:18:36

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号