├── LICENSE ├── OneNET_Demo_EMW3081_EDP_Bin ├── Driver │ ├── led.c │ ├── led.h │ ├── main.h │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ ├── emw3081.c │ └── emw3081.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h └── object │ ├── cjson.crf │ ├── cjson.d │ ├── cjson.o │ ├── edpkit.crf │ ├── edpkit.d │ ├── edpkit.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ └── onenetdemo.tra ├── OneNET_Demo_ESP8266_EDP_Led ├── Driver │ ├── key.c │ ├── key.h │ ├── led.c │ ├── led.h │ ├── main.h │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── EDP │ ├── Common.h │ ├── EdpKit.c │ ├── EdpKit.c.pre │ ├── cJSON.c │ ├── cJSON.h │ └── edpkit.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ ├── esp8266.c │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── Nu_Link_Driver.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_OneNET_Demo_ESP8266_EDP_LED.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h └── object │ └── onenetdemo.plg ├── OneNET_Demo_ESP8266_EDP_Picture ├── Hal │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvgui.zjx │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_OneNET_demo_ESP8266_bin.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── edp │ │ ├── EdpDemo.c │ │ ├── EdpKit.c │ │ └── EdpKit.h ├── User │ ├── image_2k.c │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── gpio.__i │ ├── gpio.crf │ ├── gpio.d │ ├── hal_i2c.__i │ ├── hal_i2c.crf │ ├── hal_i2c.d │ ├── hal_i2c.o │ ├── led.__i │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ ├── ringbuffer.o │ ├── sht20.__i │ ├── sht20.crf │ ├── sht20.d │ ├── sht20.o │ ├── stm32f10x_adc.crf │ ├── stm32f10x_adc.d │ ├── stm32f10x_adc.o │ ├── stm32f10x_bkp.crf │ ├── stm32f10x_bkp.d │ ├── stm32f10x_bkp.o │ ├── stm32f10x_can.crf │ ├── stm32f10x_can.d │ ├── stm32f10x_can.o │ ├── stm32f10x_cec.crf │ ├── stm32f10x_cec.d │ ├── stm32f10x_cec.o │ ├── stm32f10x_crc.crf │ ├── stm32f10x_crc.d │ ├── stm32f10x_crc.o │ ├── stm32f10x_dac.crf │ ├── stm32f10x_dac.d │ ├── stm32f10x_dac.o │ ├── stm32f10x_dbgmcu.crf │ ├── stm32f10x_dbgmcu.d │ ├── stm32f10x_dbgmcu.o │ ├── stm32f10x_dma.crf │ ├── stm32f10x_dma.d │ ├── stm32f10x_dma.o │ ├── stm32f10x_fsmc.crf │ ├── stm32f10x_fsmc.d │ ├── stm32f10x_fsmc.o │ ├── stm32f10x_iwdg.crf │ ├── stm32f10x_iwdg.d │ ├── stm32f10x_iwdg.o │ ├── stm32f10x_pwr.crf │ ├── stm32f10x_pwr.d │ ├── stm32f10x_pwr.o │ ├── stm32f10x_rtc.crf │ ├── stm32f10x_rtc.d │ ├── stm32f10x_rtc.o │ ├── stm32f10x_sdio.crf │ ├── stm32f10x_sdio.d │ ├── stm32f10x_sdio.o │ ├── stm32f10x_spi.crf │ ├── stm32f10x_spi.d │ ├── stm32f10x_spi.o │ ├── stm32f10x_tim.crf │ ├── stm32f10x_tim.d │ ├── stm32f10x_tim.o │ ├── stm32f10x_wwdg.crf │ ├── stm32f10x_wwdg.d │ └── stm32f10x_wwdg.o ├── OneNET_Demo_ESP8266_EDP_Push ├── Hal │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── edp │ │ ├── EdpDemo.c │ │ ├── EdpKit.c │ │ └── EdpKit.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── gpio.__i │ ├── gpio.crf │ ├── gpio.d │ ├── hal_i2c.__i │ ├── hal_i2c.crf │ ├── hal_i2c.d │ ├── hal_i2c.o │ ├── led.__i │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ ├── ringbuffer.o │ ├── sht20.__i │ ├── sht20.crf │ ├── sht20.d │ └── sht20.o ├── OneNET_Demo_ESP8266_EDP_Sensors ├── Devices │ ├── adxl345.c │ ├── adxl345.h │ ├── at24c02.c │ ├── at24c02.h │ ├── bh1750fvi.c │ ├── bh1750fvi.h │ ├── hal_i2c.c │ ├── hal_i2c.h │ ├── hmc5883l.c │ ├── hmc5883l.h │ ├── sht20.c │ └── sht20.h ├── Hal │ ├── gpio.c │ ├── gpio.h │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_OneNET_Demo_ESP8266_EDP_Sensors.dep │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── edp │ │ ├── Common.h │ │ ├── EdpDemo.c │ │ ├── EdpDemo.h │ │ ├── EdpKit.c │ │ └── EdpKit.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── at24c02.__i │ ├── at24c02.crf │ ├── at24c02.d │ ├── at24c02.o │ ├── gpio.crf │ ├── gpio.d │ ├── gpio.o │ ├── led.__i │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ └── ringbuffer.o ├── OneNET_Demo_ESP8266_HTTP_HT ├── Devices │ ├── hal_i2c.c │ ├── hal_i2c.h │ ├── sht20.c │ └── sht20.h ├── Hal │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── http │ │ ├── HTTP_Demo.c │ │ └── HTTP_Demo.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── utils.c │ └── utils.h └── object │ ├── cjson.__i │ ├── cjson.crf │ ├── cjson.d │ ├── cjson.o │ ├── edpdemo.__i │ ├── edpdemo.crf │ ├── edpdemo.d │ ├── edpdemo.o │ ├── edpkit.crf │ ├── edpkit.d │ ├── edpkit.o │ ├── gpio.__i │ ├── gpio.crf │ ├── gpio.d │ ├── gpio.o │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── onenetdemo_sct.Bak │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ └── ringbuffer.o ├── OneNET_Demo_ESP8266_MODBUS ├── Hal │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvgui_zhangjian.bak │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── modbus │ │ ├── modbus.c │ │ └── modbus.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── cjson.crf │ ├── cjson.d │ ├── cjson.o │ ├── edpdemo.crf │ ├── edpdemo.d │ ├── edpdemo.o │ ├── edpkit.crf │ ├── edpkit.d │ ├── edpkit.o │ ├── gpio.__i │ ├── gpio.crf │ ├── gpio.d │ ├── gpio.o │ ├── hal_i2c.crf │ ├── hal_i2c.d │ ├── hal_i2c.o │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ ├── ringbuffer.o │ ├── sht20.crf │ ├── sht20.d │ └── sht20.o ├── OneNET_Demo_ESP8266_MQTT ├── Devices │ ├── hal_i2c.c │ ├── hal_i2c.h │ ├── sht20.c │ └── sht20.h ├── Hal │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ └── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvgui.zhangjian │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── mqtt │ │ ├── config.h │ │ ├── mqtt.c │ │ ├── mqtt.h │ │ ├── mqtt_buffer.c │ │ ├── mqtt_buffer.h │ │ ├── mqtt_loop.c │ │ └── mqtt_loop.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── cjson.crf │ ├── cjson.d │ ├── cjson.o │ ├── edpdemo.crf │ ├── edpdemo.d │ ├── edpdemo.o │ ├── edpkit.crf │ ├── edpkit.d │ ├── edpkit.o │ ├── gpio.__i │ ├── gpio.crf │ ├── gpio.d │ ├── led.__i │ ├── led.crf │ ├── led.d │ ├── led.o │ ├── lpb100.__i │ ├── lpb100.d │ ├── modbus.__i │ ├── modbus.crf │ ├── modbus.d │ ├── modbus.o │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ ├── onenetdemo.tra │ ├── ringbuffer.__i │ ├── ringbuffer.crf │ ├── ringbuffer.d │ └── ringbuffer.o ├── OneNET_Demo_M6311_EDP_SHT20 - copy ├── Devices │ ├── hal_i2c.c │ ├── hal_i2c.h │ ├── sht20.c │ └── sht20.h ├── Hal │ ├── gpio.c │ ├── gpio.h │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ ├── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h │ └── m6311 │ │ ├── M6311.c │ │ └── m6311.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvgui.zhangjian │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── edp │ │ ├── Common.h │ │ ├── EdpDemo.c │ │ ├── EdpDemo.h │ │ ├── EdpKit.c │ │ └── EdpKit.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ └── onenetdemo.tra ├── OneNET_Demo_M6311_EDP_SHT20 ├── Devices │ ├── hal_i2c.c │ ├── hal_i2c.h │ ├── sht20.c │ └── sht20.h ├── Hal │ ├── gpio.c │ ├── gpio.h │ ├── usart1.c │ ├── usart1.h │ ├── usart2.c │ └── usart2.h ├── Libraries │ ├── CMSIS │ │ ├── core_cm3.c │ │ ├── core_cm3.h │ │ ├── startup │ │ │ └── arm │ │ │ │ ├── startup_stm32f10x_cl.s │ │ │ │ ├── startup_stm32f10x_hd.s │ │ │ │ ├── startup_stm32f10x_hd_vl.s │ │ │ │ ├── startup_stm32f10x_ld.s │ │ │ │ ├── startup_stm32f10x_ld.s.bak │ │ │ │ ├── startup_stm32f10x_ld_vl.s │ │ │ │ ├── startup_stm32f10x_md.s │ │ │ │ ├── startup_stm32f10x_md_vl.s │ │ │ │ └── startup_stm32f10x_xl.s │ │ ├── stm32f10x.h │ │ ├── system_stm32f10x.c │ │ └── system_stm32f10x.h │ └── STM32F10x_StdPeriph_Driver │ │ ├── Release_Notes.html │ │ ├── inc │ │ ├── misc.h │ │ ├── stm32f10x_adc.h │ │ ├── stm32f10x_bkp.h │ │ ├── stm32f10x_can.h │ │ ├── stm32f10x_cec.h │ │ ├── stm32f10x_crc.h │ │ ├── stm32f10x_dac.h │ │ ├── stm32f10x_dbgmcu.h │ │ ├── stm32f10x_dma.h │ │ ├── stm32f10x_exti.h │ │ ├── stm32f10x_flash.h │ │ ├── stm32f10x_fsmc.h │ │ ├── stm32f10x_gpio.h │ │ ├── stm32f10x_i2c.h │ │ ├── stm32f10x_iwdg.h │ │ ├── stm32f10x_pwr.h │ │ ├── stm32f10x_rcc.h │ │ ├── stm32f10x_rtc.h │ │ ├── stm32f10x_sdio.h │ │ ├── stm32f10x_spi.h │ │ ├── stm32f10x_tim.h │ │ ├── stm32f10x_usart.h │ │ └── stm32f10x_wwdg.h │ │ └── src │ │ ├── misc.c │ │ ├── stm32f10x_adc.c │ │ ├── stm32f10x_bkp.c │ │ ├── stm32f10x_can.c │ │ ├── stm32f10x_cec.c │ │ ├── stm32f10x_crc.c │ │ ├── stm32f10x_dac.c │ │ ├── stm32f10x_dbgmcu.c │ │ ├── stm32f10x_dma.c │ │ ├── stm32f10x_exti.c │ │ ├── stm32f10x_flash.c │ │ ├── stm32f10x_fsmc.c │ │ ├── stm32f10x_gpio.c │ │ ├── stm32f10x_i2c.c │ │ ├── stm32f10x_iwdg.c │ │ ├── stm32f10x_pwr.c │ │ ├── stm32f10x_rcc.c │ │ ├── stm32f10x_rtc.c │ │ ├── stm32f10x_sdio.c │ │ ├── stm32f10x_spi.c │ │ ├── stm32f10x_tim.c │ │ ├── stm32f10x_usart.c │ │ └── stm32f10x_wwdg.c ├── Network │ ├── esp8266 │ │ ├── esp8266.c │ │ └── esp8266.h │ └── m6311 │ │ ├── M6311.c │ │ └── m6311.h ├── Project │ ├── JLinkLog.txt │ ├── JLinkSettings.ini │ ├── onenetdemo.plg │ ├── onenetdemo.uvgui.zhangjian │ ├── onenetdemo.uvopt │ ├── onenetdemo.uvproj │ ├── onenetdemo_Target 1.dep │ ├── onenetdemo_uvopt.bak │ └── onenetdemo_uvproj.bak ├── Protocol │ └── edp │ │ ├── Common.h │ │ ├── EdpDemo.c │ │ ├── EdpDemo.h │ │ ├── EdpKit.c │ │ └── EdpKit.h ├── User │ ├── main.c │ ├── stm32f10x_conf.h │ ├── stm32f10x_it.c │ └── stm32f10x_it.h ├── Utils │ ├── cJSON.c │ ├── cJSON.h │ ├── utils.c │ └── utils.h └── object │ ├── onenetdemo.plg │ ├── onenetdemo.sct │ └── onenetdemo.tra ├── OneNET_Demo_User_Guide.pdf ├── README.md ├── aaate ├── mqtt_app_src ├── Makefile ├── mqtt.c ├── mqtt │ ├── config.h │ ├── mqtt.h │ └── mqtt_buffer.h ├── run.sh └── src │ ├── mqtt.c │ └── mqtt_buffer.c ├── test.txt.txt └── test2.txt /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Driver/led.c: -------------------------------------------------------------------------------- 1 | #include "main.h" 2 | 3 | /** 4 | * @brief 延时函数 5 | **/ 6 | void Delay(unsigned int i) 7 | { 8 | unsigned int j=0; 9 | for(;i>0;i--) 10 | { 11 | for(j=0;j<10000;j++); 12 | } 13 | } 14 | 15 | 16 | /** 17 | * @brief LED指示灯初始化函数 18 | **/ 19 | void LED_Init(void) 20 | { 21 | GPIO_InitTypeDef GPIO_InitStructure; 22 | //PC7--对应开发板红色指示灯;PC8--对应开发板绿色指示灯;PC10--对应开发板黄色指示灯 23 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); 24 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_10; 25 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 26 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 27 | GPIO_Init(GPIOC, &GPIO_InitStructure); 28 | 29 | //PA12---对应开发板蓝色指示灯 30 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 31 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12; 32 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 33 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 34 | GPIO_Init(GPIOA, &GPIO_InitStructure); 35 | 36 | } 37 | 38 | /** 39 | * @brief LED指示灯操作函数,点亮和熄灭指示灯 40 | **/ 41 | void LED_Switch(const uint8_t statu,const uint8_t mode) 42 | { 43 | if(statu) 44 | { 45 | LED_RED_OFF; 46 | LED_GREEN_OFF; 47 | LED_YELLOW_OFF; 48 | LED_BLUE_OFF; 49 | 50 | if(mode&0x01) 51 | { 52 | LED_RED_ON; 53 | } 54 | if(mode&0x02) 55 | { 56 | LED_GREEN_ON; 57 | } 58 | if(mode&0x04) 59 | { 60 | LED_YELLOW_ON; 61 | } 62 | if(mode&0x08) 63 | { 64 | LED_BLUE_ON; 65 | } 66 | } 67 | else 68 | { 69 | if(mode&0x01) 70 | { 71 | LED_RED_OFF; 72 | } 73 | if(mode&0x02) 74 | { 75 | LED_GREEN_OFF; 76 | } 77 | if(mode&0x04) 78 | { 79 | LED_YELLOW_OFF; 80 | } 81 | if(mode&0x08) 82 | { 83 | LED_BLUE_OFF; 84 | } 85 | } 86 | } 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Driver/led.h: -------------------------------------------------------------------------------- 1 | #ifndef LED_H_H 2 | #define LED_H_H 3 | 4 | #define LED_RED_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_7) //熄灭红色LED指示灯 5 | #define LED_GREEN_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_8) //熄灭绿色LED指示灯 6 | #define LED_YELLOW_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_10) //熄灭黄色LED指示灯 7 | #define LED_BLUE_OFF GPIO_ResetBits(GPIOA,GPIO_Pin_12) //熄灭蓝色LED指示灯 8 | 9 | #define LED_RED_ON GPIO_SetBits(GPIOC,GPIO_Pin_7) //点亮红色LED指示灯 10 | #define LED_GREEN_ON GPIO_SetBits(GPIOC,GPIO_Pin_8) //点亮绿色LED指示灯 11 | #define LED_YELLOW_ON GPIO_SetBits(GPIOC,GPIO_Pin_10) //点亮黄色LED指示灯 12 | #define LED_BLUE_ON GPIO_SetBits(GPIOA,GPIO_Pin_12) //点亮蓝色LED指示灯 13 | 14 | 15 | #define LED_R 0X01 16 | #define LED_G 0X02 17 | #define LED_Y 0X04 18 | #define LED_B 0X08 19 | 20 | #define LED_OFF 0 21 | #define LED_ON (!LED_OFF) 22 | 23 | 24 | extern void LED_Init(void); 25 | extern void LED_Switch(const uint8_t statu,const uint8_t mode); 26 | 27 | extern void Delay(unsigned int i); 28 | #endif 29 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Driver/main.h: -------------------------------------------------------------------------------- 1 | #ifndef MAIN_H_H 2 | #define MAIN_H_H 3 | 4 | 5 | #include "stm32f10x.h" 6 | #include "stdio.h" 7 | #include "stdlib.h" 8 | #include "string.h" 9 | #include "usart1.h" 10 | #include "usart2.h" 11 | #include "led.h" 12 | #include "emw3081.h" 13 | 14 | 15 | 16 | #define RET_OK 0 17 | #define RET_ERR ( !RET_OK) 18 | 19 | 20 | #endif 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Driver/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | 4 | extern void usart1_config(void); 5 | extern void usart1_write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 6 | 7 | extern unsigned char usart1_rcv_buf[512]; 8 | extern volatile unsigned int usart1_rcv_len; 9 | extern volatile unsigned int usart1_rcv_flag; 10 | extern volatile unsigned int usart1_rcv_start; 11 | 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Driver/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | 4 | #define MAX_RCV_LEN 1024 5 | 6 | extern void usart2_config(void); 7 | extern void usart2_write(USART_TypeDef* USARTx, uint8_t *Data,uint32_t len); 8 | 9 | 10 | extern unsigned char usart2_rcv_buf[MAX_RCV_LEN]; 11 | extern volatile unsigned int usart2_rcv_len; 12 | 13 | #endif 14 | 15 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Network/emw3081.h: -------------------------------------------------------------------------------- 1 | #ifndef EMW3081_H_H 2 | #define EMW3081_H_H 3 | 4 | /** 5 | * @brief ONENET版本AT指令 6 | **/ 7 | #define REBOOT "AT+REBOOT\r" //重启EMW3081 8 | #define WSTATUS "AT+WSTATUS\r" //查询EMW3081网络状态 9 | #define CIOT "AT+CIOT?\r" //查询设备的本地参数是否存在 10 | #define CIOTMKEY "AT+CIOTMKEY?\r" //查询主APIKEY本地参数是否存在 11 | #define CIOTMKEYA "AT+CIOTMKEYA=Sezt7lZFiwVUcYZeWLZM91kOMBw=\r" //设置住APIKEY 12 | #define CIOTID "AT+CIOTID?\r" //查询设备ID 13 | #define CIOTIDC "AT+CIOTIDC\r" //删除设备ID 14 | #define CIOTINIT "AT+CIOTINIT\r" //设备参数初始化 15 | #define CIOTKEY "AT+CIOTKEY?\r" //查询设备APIKEY 16 | #define CIOTKEYC "AT+CIOTKEYC\r" //删除设备APIKEY 17 | #define CIOTSTATUS "AT+CIOTSTATUS\r" //查询设备连接状态 18 | #define CIOTSTART "AT+CIOTSTART=0\r" //启动设备的数据传送 19 | #define CIOTDAT "AT+CIOTDAT=TEMP3,,20\r" //向ONENET平台发送数据流名为TEMP3,值为20的数据点。 20 | 21 | 22 | #define CIOTBINSET "AT+CIOTBINSET=PIC4,5636\r" //发送二进制文件的参数设备信息 23 | #define CIOTBINEND "AT+CIOTBINEND\r" //结束二进制文件发送 24 | 25 | extern unsigned char dat1[1024]; 26 | extern unsigned char dat2[1024]; 27 | extern unsigned char dat3[1024]; 28 | extern unsigned char dat4[1024]; 29 | extern unsigned char dat5[1024]; 30 | extern unsigned char dat6[1024]; 31 | 32 | extern void SendCmd(char* cmd, char* result, int timeOut); 33 | extern void EMW3081_Reboot(void); 34 | extern void EMW3081_SendBinDat(void); 35 | 36 | #endif 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/User/stm32f10x_it.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/User/stm32f10x_it.c -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/cjson.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/object/cjson.crf -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/cjson.d: -------------------------------------------------------------------------------- 1 | ..\object\cjson.o: ..\EDP\cJSON.c 2 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 3 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\math.h 5 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 6 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\float.h 7 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\limits.h 8 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\ctype.h 9 | ..\object\cjson.o: ..\EDP\cJSON.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/cjson.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/object/cjson.o -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/edpkit.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/object/edpkit.crf -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/edpkit.d: -------------------------------------------------------------------------------- 1 | ..\object\edpkit.o: ..\EDP\EdpKit.c 2 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 5 | ..\object\edpkit.o: ..\EDP\EdpKit.h 6 | ..\object\edpkit.o: ..\EDP\Common.h 7 | ..\object\edpkit.o: ..\EDP\cJSON.h 8 | -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/edpkit.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/object/edpkit.o -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_EMW3081_EDP_Bin/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_EMW3081_EDP_Bin/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Driver/key.h: -------------------------------------------------------------------------------- 1 | #ifndef KEY_H_H 2 | #define KEY_H_H 3 | 4 | extern void mDelay(uint32_t i); 5 | extern void KEY_Init(void); 6 | 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Driver/led.h: -------------------------------------------------------------------------------- 1 | #ifndef LED_H_H 2 | #define LED_H_H 3 | 4 | #define LED_RED_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_7) 5 | #define LED_GREEN_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_8) 6 | #define LED_YELLOW_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_10) 7 | #define LED_BLUE_OFF GPIO_ResetBits(GPIOA,GPIO_Pin_12) 8 | 9 | #define LED_RED_ON GPIO_SetBits(GPIOC,GPIO_Pin_7) 10 | #define LED_GREEN_ON GPIO_SetBits(GPIOC,GPIO_Pin_8) 11 | #define LED_YELLOW_ON GPIO_SetBits(GPIOC,GPIO_Pin_10) 12 | #define LED_BLUE_ON GPIO_SetBits(GPIOA,GPIO_Pin_12) 13 | 14 | 15 | #define LED_R 0X01 16 | #define LED_G 0X02 17 | #define LED_Y 0X04 18 | #define LED_B 0X08 19 | 20 | #define LED_OFF 0 21 | #define LED_ON (!LED_OFF) 22 | 23 | extern volatile unsigned char red_value; 24 | extern volatile unsigned char yellow_value; 25 | extern volatile unsigned char blue_value; 26 | extern volatile unsigned char green_value; 27 | 28 | extern void LED_Init(void); 29 | extern void LED_CmdCtl(void); 30 | extern void LED_Switch(const uint8_t statu,const uint8_t mode); 31 | extern void LED_GetValue(void); 32 | 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Driver/main.h: -------------------------------------------------------------------------------- 1 | #ifndef MAIN_H_H 2 | #define MAIN_H_H 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "edpkit.h" 11 | #include "led.h" 12 | #include "key.h" 13 | #include "esp8266.h" 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Driver/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | 4 | extern void USART1_Init(void); 5 | extern void usart1_write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 6 | 7 | extern unsigned char usart1_rcv_buf[512]; 8 | extern volatile unsigned int usart1_rcv_len; 9 | extern volatile unsigned int usart1_rcv_flag; 10 | extern volatile unsigned int usart1_rcv_start; 11 | 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Driver/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | 4 | #define MAX_RCV_LEN 1024 5 | #define MAX_CMD_LEN 256 6 | 7 | 8 | extern void USART2_Init(void); 9 | extern void usart2_write(USART_TypeDef* USARTx, uint8_t *Data,uint32_t len); 10 | 11 | extern volatile unsigned char rcv_cmd_start; 12 | extern volatile unsigned char rcv_cmd_flag; 13 | 14 | extern unsigned char usart2_rcv_buf[MAX_RCV_LEN]; 15 | extern volatile unsigned int usart2_rcv_len; 16 | 17 | extern unsigned char usart2_cmd_buf[MAX_CMD_LEN]; 18 | extern volatile unsigned int usart2_cmd_len; 19 | 20 | 21 | 22 | #endif 23 | 24 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/EDP/Common.h: -------------------------------------------------------------------------------- 1 | #ifndef __COMMON_H__ 2 | #define __COMMON_H__ 3 | 4 | /*---------------------------------------------------------------------------*/ 5 | /* Type Definition Macros */ 6 | /*---------------------------------------------------------------------------*/ 7 | 8 | typedef unsigned char uint8; 9 | typedef char int8; 10 | typedef unsigned short uint16; 11 | typedef short int16; 12 | typedef unsigned int uint32; 13 | typedef int int32; 14 | typedef unsigned int size_t; 15 | #endif /* __COMMON_H__ */ 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/EDP/edpkit.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/EDP/edpkit.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Network/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef ESP8266_H_H 2 | #define ESP8266_H_H 3 | 4 | #define DEVICEID "771323" 5 | #define APIKEY "0f3FXdmZ7od0iuVYVZBkiJeaJbg=" 6 | 7 | #define AT "AT\r\n" 8 | #define CWMODE "AT+CWMODE=1\r\n" 9 | #define RST "AT+RST\r\n" 10 | #define CIFSR "AT+CIFSR\r\n" 11 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" 12 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 13 | #define CIPMODE "AT+CIPMODE=1\r\n" 14 | #define CIPSEND "AT+CIPSEND\r\n" 15 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 16 | 17 | #define MAX_SEND_BUF_LEN 1024 18 | 19 | extern EdpPacket* send_pkg; 20 | extern char send_buf[MAX_SEND_BUF_LEN]; 21 | 22 | extern void ESP8266_Init(void); 23 | extern void GetSendBuf(void); 24 | extern void SendCmd(char* cmd, char* result, int timeOut); 25 | extern void ESP8266_DevLink(const char* devid, const char* auth_key, int timeOut); 26 | extern int ESP8266_CheckStatus(int timeOut); 27 | extern void ESP8266_SendDat(void); 28 | 29 | #endif 30 | 31 | 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Project/Nu_Link_Driver.ini: -------------------------------------------------------------------------------- 1 | [Version] 2 | Nu_LinkVersion=V2.1 3 | [Process] 4 | ProcessID=0x00000000 5 | ProcessCreationTime_L=0x00000000 6 | ProcessCreationTime_H=0x00000000 7 | NuLinkID=0x00000000 8 | [ChipSelect] 9 | ;ChipName= 10 | ChipName=NUC1xx 11 | [NUC1xx] 12 | Reset=Autodetect 13 | MaxClock=1MHz 14 | MemoryVerify=1 15 | IOVoltage=3300 16 | FlashSelect=APROM 17 | Erase=1 18 | Program=1 19 | Verify=1 20 | ResetAndRun=0 21 | EnableFlashBreakpoint=1 22 | RAMForAlgorithmStart=0x20000000 23 | RAMForAlgorithmSize=0x1000 24 | ProgramAlgorithm=NUC1xx_AP_128.FLM 25 | [N572] 26 | Reset=Autodetect 27 | MaxClock=1MHz 28 | MemoryVerify=1 29 | IOVoltage=3300 30 | Erase=1 31 | Program=1 32 | Verify=1 33 | ResetAndRun=0 34 | EnableFlashBreakpoint=1 35 | RAMForAlgorithmStart=0x20000000 36 | RAMForAlgorithmSize=0x2000 37 | ProgramAlgorithm=N572F064.FLM 38 | [M05x] 39 | Reset=Autodetect 40 | MaxClock=1MHz 41 | MemoryVerify=1 42 | IOVoltage=3300 43 | FlashSelect=APROM 44 | Erase=1 45 | Program=1 46 | Verify=1 47 | ResetAndRun=0 48 | EnableFlashBreakpoint=1 49 | RAMForAlgorithmStart=0x20000000 50 | RAMForAlgorithmSize=0x800 51 | ProgramAlgorithm=NU_M0516_64.FLM 52 | [Nano100] 53 | Reset=Autodetect 54 | MaxClock=1MHz 55 | MemoryVerify=1 56 | IOVoltage=3300 57 | FlashSelect=APROM(LDROM invisiable) 58 | Erase=1 59 | Program=1 60 | Verify=1 61 | ResetAndRun=0 62 | EnableFlashBreakpoint=1 63 | RAMForAlgorithmStart=0x20000000 64 | RAMForAlgorithmSize=0x1000 65 | ProgramAlgorithm=Nano100_AP_64.FLM 66 | [Mini51] 67 | Reset=Autodetect 68 | MaxClock=1MHz 69 | MemoryVerify=1 70 | IOVoltage=3300 71 | FlashSelect=APROM 72 | Erase=1 73 | Program=1 74 | Verify=1 75 | ResetAndRun=0 76 | EnableFlashBreakpoint=1 77 | RAMForAlgorithmStart=0x20000000 78 | RAMForAlgorithmSize=0x800 79 | ProgramAlgorithm=Mini51_AP_16.FLM 80 | [General] 81 | Reset=Autodetect 82 | MaxClock=1MHz 83 | MemoryVerify=1 84 | IOVoltage=3300 85 | Erase=1 86 | Program=1 87 | Verify=1 88 | ResetAndRun=0 89 | RAMForAlgorithmStart=0x20000000 90 | RAMForAlgorithmSize=0x4000 91 | ProgramAlgorithm= 92 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Led/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Led/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | 4 | extern void USART1_Config(void); 5 | extern void usart1_write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 6 | 7 | extern unsigned char usart1_rcv_buf[512]; 8 | extern volatile unsigned int usart1_rcv_len; 9 | extern volatile unsigned int usart1_rcv_flag; 10 | extern volatile unsigned int usart1_rcv_start; 11 | 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | 4 | #include 5 | #include 6 | #define MAX_RCV_LEN 1024 7 | 8 | extern void USART2_Config(void); 9 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 10 | extern void USART2_Clear(void); 11 | extern volatile unsigned char gprs_ready_flag; 12 | extern volatile unsigned char gprs_ready_count; 13 | uint32_t USART2_GetRcvNum(void); 14 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 15 | extern unsigned char usart2_rcv_buf[MAX_RCV_LEN]; 16 | extern volatile unsigned int usart2_rcv_len; 17 | void SendCmd(char* cmd, char* result, int timeOut); 18 | #endif 19 | 20 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | #include "usart2.h" 3 | 4 | /* 5 | * @brief ESP8266模块初始化 6 | */ 7 | void ESP8266_Init(void) 8 | { 9 | #if 1 10 | SendCmd(AT, "OK", 1000); //模块有效性检查 11 | SendCmd(CWMODE, "OK", 1000); //模块工作模式 12 | SendCmd(RST, "OK", 2000); //模块重置 13 | SendCmd(CIFSR, "OK", 1000); //查询网络信息 14 | SendCmd(CWJAP, "OK", 2000); //配置需要连接的WIFI热点SSID和密码 15 | SendCmd(CIPSTART, "OK", 2000); //TCP连接 16 | SendCmd(CIPMODE1, "OK", 1000); //配置透传模式 17 | SendCmd(CIPSEND, ">", 1000); //进入透传模式 18 | USART2_Clear(); 19 | #endif 20 | } 21 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #define AT "AT\r\n" 2 | #define CWMODE "AT+CWMODE=3\r\n" //STA+AP模式 3 | #define RST "AT+RST\r\n" 4 | #define CIFSR "AT+CIFSR\r\n" 5 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" //ssid: onenet 密码:空 6 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" //EDP服务器 183.230.40.39/876 7 | #define CIPMODE0 "AT+CIPMODE=0\r\n" //非透传模式 8 | #define CIPMODE1 "AT+CIPMODE=1\r\n" //透传模式 9 | #define CIPSEND "AT+CIPSEND\r\n" 10 | #define CIPSTATUS "AT+CIPSTATUS\r\n" //网络状态查询 11 | 12 | 13 | void ESP8266_Init(void); 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | 7 | void hexdump(const unsigned char *buf, uint32_t); 8 | unsigned char prvucMBBIN2CHAR(unsigned char ucByte); 9 | void Delay(unsigned int i); 10 | unsigned short usMBCRC16( unsigned char * pucFrame, unsigned short usLen ); 11 | void mDelay(uint32_t i); 12 | void uDelay(uint32_t i); 13 | #endif 14 | 15 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/gpio.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\gpio.o" --omf_browse "..\object\gpio.crf" --depend "..\object\gpio.d" "..\Hal\gpio.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/hal_i2c.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\hal_i2c.o" --omf_browse "..\object\hal_i2c.crf" --depend "..\object\hal_i2c.d" "..\Devices\hal_i2c.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/hal_i2c.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/hal_i2c.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/hal_i2c.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/hal_i2c.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/led.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\led.o" --omf_browse "..\object\led.crf" --depend "..\object\led.d" "..\Hal\led.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/sht20.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\sht20.o" --omf_browse "..\object\sht20.crf" --depend "..\object\sht20.d" "..\Devices\sht20.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/sht20.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/sht20.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/sht20.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/sht20.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_adc.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_adc.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_adc.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_adc.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_bkp.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_bkp.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_bkp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_bkp.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_can.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_can.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_can.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_can.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_cec.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_cec.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_cec.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_cec.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_crc.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_crc.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_crc.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_crc.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dac.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dac.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dac.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dac.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dbgmcu.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dbgmcu.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dbgmcu.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dbgmcu.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dma.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dma.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dma.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_dma.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_fsmc.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_fsmc.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_fsmc.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_fsmc.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_iwdg.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_iwdg.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_iwdg.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_iwdg.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_pwr.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_pwr.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_pwr.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_pwr.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_rtc.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_rtc.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_rtc.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_rtc.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_sdio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_sdio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_sdio.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_sdio.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_spi.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_spi.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_spi.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_spi.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_tim.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_tim.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_tim.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_tim.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_wwdg.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_wwdg.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_wwdg.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Picture/object/stm32f10x_wwdg.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | 4 | extern void USART1_Config(void); 5 | extern void usart1_write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 6 | 7 | extern unsigned char usart1_rcv_buf[512]; 8 | extern volatile unsigned int usart1_rcv_len; 9 | extern volatile unsigned int usart1_rcv_flag; 10 | extern volatile unsigned int usart1_rcv_start; 11 | 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | 4 | #include 5 | #include 6 | #define MAX_RCV_LEN 1024 7 | 8 | extern void USART2_Config(void); 9 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 10 | extern void USART2_Clear(void); 11 | extern volatile unsigned char gprs_ready_flag; 12 | extern volatile unsigned char gprs_ready_count; 13 | uint32_t USART2_GetRcvNum(void); 14 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 15 | extern unsigned char usart2_rcv_buf[MAX_RCV_LEN]; 16 | extern volatile unsigned int usart2_rcv_len; 17 | void SendCmd(char* cmd, char* result, int timeOut); 18 | #endif 19 | 20 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | #include "usart2.h" 3 | 4 | /* 5 | * @brief ESP8266模块初始化 6 | */ 7 | void ESP8266_Init(void) 8 | { 9 | #if 1 10 | SendCmd(AT, "OK", 1000); //模块有效性检查 11 | SendCmd(CWMODE, "OK", 1000); //模块工作模式 12 | SendCmd(RST, "OK", 2000); //模块重置 13 | SendCmd(CIFSR, "OK", 1000); //查询网络信息 14 | SendCmd(CWJAP, "OK", 2000); //配置需要连接的WIFI热点SSID和密码 15 | SendCmd(CIPSTART, "OK", 2000); //TCP连接 16 | SendCmd(CIPMODE0, "OK", 1000); //配置非透传模式 17 | //SendCmd(CIPSEND, ">", 1000); //进入透传模式 18 | USART2_Clear(); 19 | #endif 20 | } 21 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #define AT "AT\r\n" 2 | #define CWMODE "AT+CWMODE=3\r\n" //STA+AP模式 3 | #define RST "AT+RST\r\n" 4 | #define CIFSR "AT+CIFSR\r\n" 5 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" //ssid: onenet 密码:空 6 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" //EDP服务器 183.230.40.39/876 7 | //#define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.33\",80\r\n" //HTTP 8 | #define CIPMODE0 "AT+CIPMODE=0\r\n" //非透传模式 9 | #define CIPMODE1 "AT+CIPMODE=1\r\n" //透传模式 10 | #define CIPSEND "AT+CIPSEND\r\n" 11 | #define CIPSTATUS "AT+CIPSTATUS\r\n" //网络状态查询 12 | 13 | 14 | void ESP8266_Init(void); 15 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | 7 | void hexdump(const unsigned char *buf, uint32_t); 8 | unsigned char prvucMBBIN2CHAR(unsigned char ucByte); 9 | void Delay(unsigned int i); 10 | unsigned short usMBCRC16( unsigned char * pucFrame, unsigned short usLen ); 11 | void mDelay(uint32_t i); 12 | void uDelay(uint32_t i); 13 | #endif 14 | 15 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/gpio.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\gpio.o" --omf_browse "..\object\gpio.crf" --depend "..\object\gpio.d" "..\Hal\gpio.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/hal_i2c.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\hal_i2c.o" --omf_browse "..\object\hal_i2c.crf" --depend "..\object\hal_i2c.d" "..\Devices\hal_i2c.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/hal_i2c.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/hal_i2c.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/hal_i2c.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/hal_i2c.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/led.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\led.o" --omf_browse "..\object\led.crf" --depend "..\object\led.d" "..\Hal\led.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/sht20.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\sht20.o" --omf_browse "..\object\sht20.crf" --depend "..\object\sht20.d" "..\Devices\sht20.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/sht20.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/sht20.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Push/object/sht20.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Push/object/sht20.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/adxl345.c: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "utils.h" 5 | #define ADXL345_ADDRESS 0x53 6 | void ADXL345_init(void) 7 | { 8 | uint8_t ret = 0; 9 | 10 | uint8_t devid; 11 | 12 | //0 ±16g,13位模式 13 | #define DATA_FORMAT_REG 0x31 14 | //0x08 测量模式 15 | #define POWER_CTL 0x2d 16 | //0x80 使能DATA_READY中断,需要吗,需要禁止的吧。 17 | #define INT_ENABLE 0x2e 18 | #define BW_RATE 0x2c 19 | #define OFSX 0x1e 20 | #define OFSY 0x1f 21 | #define OFSZ 0x20 22 | mDelay(20); 23 | Hal_I2C_ByteRead(I2C2, ADXL345_ADDRESS, 0x00, &devid); 24 | printf("\r\ndevice ID=%x,\r\n", devid); 25 | #if 0 26 | mDelay(500); 27 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, POWER_CTL, &pw_ctl); //链接使能,测量模式 28 | mDelay(2000); 29 | #endif 30 | ret = 0X2B; 31 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, DATA_FORMAT_REG, &ret); //低电平中断输出,13位全分辨率,输出数据右对齐,16g量程 32 | ret = 0x0A; 33 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, BW_RATE, &ret); //数据输出速度为100Hz 34 | ret = 0x28; 35 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, POWER_CTL, &ret); //链接使能,测量模式 36 | ret = 0x00; 37 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, INT_ENABLE, &ret); //不使用中断 38 | ret = 0x00; 39 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, OFSX, &ret); 40 | ret = 0x00; 41 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, OFSY, &ret); 42 | ret = 0x00; 43 | Hal_I2C_ByteWrite(I2C2, ADXL345_ADDRESS, OFSZ, &ret); 44 | mDelay(500); 45 | } 46 | uint8_t data[6]; 47 | /** 48 | * @brief 获取ADXL345传感器数值,各方向LSB RAW数据. 49 | * @param data_out:存储传感器采集结果 50 | * @retval None 51 | **/ 52 | void ADXL345_GETXYZ(int16_t data_out[3]) 53 | { 54 | ADXL345_init(); //每次读写寄存器之前都要先读device ID 55 | 56 | Hal_I2C_MutiRead(I2C2, data, ADXL345_ADDRESS, 0x32, 6); 57 | data_out[0] = (int16_t)(data[0] + ((uint16_t)data[1] << 8)); 58 | data_out[1] = (int16_t)(data[2] + ((uint16_t)data[3] << 8)); 59 | data_out[2] = (int16_t)(data[4] + ((uint16_t)data[5] << 8)); 60 | printf("ADXL345 ******X=%d,Y=%d,Z=%d*****\n", data_out[0], data_out[1], data_out[2]); 61 | } 62 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/adxl345.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "utils.h" 5 | #define ADXL345_ADDRESS 0x53 6 | //#define ADXL345_ADDRESS 0x1D 7 | 8 | /** 9 | * @brief ADXL345模块初始化. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void ADXL345_init(void); 14 | 15 | /** 16 | * @brief 获取ADXL345传感器数值,各方向LSB RAW数据.X:data_out[0],Y:data_out[1],Z:data_out[2] 17 | * @param data_out:存储传感器采集结果 18 | * @retval None 19 | **/ 20 | void ADXL345_GETXYZ(int16_t data_out[3]); -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/at24c02.c: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stm32f10x_i2c.h" 3 | #include "hal_i2c.h" 4 | #include "stdio.h" 5 | #include "at24c02.h" 6 | 7 | /* 从AT24CXX的指定地址开始读出一个字节 */ 8 | uint8_t AT24CXX_ReadByte(uint8_t ReadAddr) 9 | { 10 | uint8_t ret = 0; 11 | Hal_I2C_ByteRead(I2C2, AT24CX_ADDR, ReadAddr, &ret); 12 | return ret; 13 | } 14 | 15 | /* 向AT24CXX的指定地址开始写入一个字节 */ 16 | void AT24CXX_WriteByte(uint8_t WriteAddr, uint8_t Data) 17 | { 18 | Hal_I2C_ByteWrite(I2C2, AT24CX_ADDR, WriteAddr, &Data); 19 | } 20 | 21 | void AT24CXX_loop(void) 22 | { 23 | uint32_t i; 24 | uint8_t buf[256] = {0}; 25 | 26 | Hal_I2C_Init(); 27 | printf("%s %d\n", __func__, __LINE__); 28 | for(i = 0; i < 255; i++) 29 | { 30 | AT24CXX_WriteByte(i, (u8)((i + 255) % 255)); 31 | printf("i:%d val=:%d\n", i, (u8)((i + 255) % 255)); 32 | /* NOTE: 根据datasheet,两次字节写之间必须延迟5ms,也就是stop和start之间的间隔时间*/ 33 | mDelay(30); 34 | } 35 | printf("Write completed \r\n"); 36 | printf("*********\r\n"); 37 | for(i = 0; i < 255; i++) 38 | { 39 | printf("i:%d val=:%d\n", i, (u8)AT24CXX_ReadByte(i)); 40 | mDelay(30); 41 | } 42 | printf("\r\n"); 43 | } -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/at24c02.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stm32f10x_i2c.h" 3 | #include "hal_i2c.h" 4 | #include "stdio.h" 5 | #include "utils.h" 6 | #define AT24CX_ADDR 0x50 7 | 8 | /* 从AT24CXX的指定地址开始读出一个字节 */ 9 | uint8_t AT24CXX_ReadByte(uint8_t ReadAddr); 10 | 11 | /* */ 12 | /** 13 | * @brief 向AT24CXX的指定地址开始写入一个字节 14 | * @param WriteAddr:E2PROM中偏移地址 15 | * @param Data:写入的数据 16 | * @retval None 17 | **/ 18 | void AT24CXX_WriteByte(uint8_t WriteAddr, uint8_t Data); 19 | /** 20 | * @brief AR24CXX E2PROM读写测试循环. 21 | * @param None 22 | * @retval None 23 | **/ 24 | void AT24CXX_loop(void); 25 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/bh1750fvi.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stm32f10x_i2c.h" 3 | #include "hal_i2c.h" 4 | #include "stdio.h" 5 | 6 | #define BH1750FVI_ADDR 0x23 7 | 8 | #define BH1750_DOWN 0x0 9 | #define BH1750_ON 0x01 10 | #define BH1750_RSET 0x07 11 | //commended 12 | #define BH1750_Con_High_RM 0x10 13 | //commended 14 | #define BH1750_Con_High_RM2 0x11 15 | #define BH1750_Con_Low_RM 0x13 16 | //auto power down 17 | #define BH1750_Once_High_RM 0x20 18 | #define BH1750_Once_High_RM2 0x21 19 | #define BH1750_Once_Low_RM 0x23 20 | 21 | /* 从BH1750FVI的指定地址开始读出一个字节 */ 22 | uint8_t BH1750FVI_ReadByte(uint8_t ReadAddr); 23 | /* 向BH1750FVI的指定地址开始写入一个字节 */ 24 | 25 | void BH1750FVI_WriteByte(uint8_t WriteAddr, uint8_t *Data); 26 | /** 27 | * @brief 测试循环 28 | * @param None 29 | * @retval None 30 | **/ 31 | void BH1750FVI_loop(void); 32 | 33 | /** 34 | * @brief 初始化传感器 35 | * @param None 36 | * @retval None 37 | **/ 38 | void BH1750_Init(void); 39 | 40 | /** 41 | * @brief 获得传感器数值 42 | * @param None 43 | * @retval 返回光照,单位lx 44 | **/ 45 | uint16_t Read_BH1750(void); 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/hal_i2c.h: -------------------------------------------------------------------------------- 1 | #ifndef __Hal_I2C_H 2 | #define __Hal_I2C_H 3 | 4 | #include "stm32f10x.h" 5 | 6 | /** 7 | * @brief I2C 使用的GPIO配置 8 | * @param I2Cx:选择I2C接口,I2C1,I2C2 9 | * @retval None 10 | **/ 11 | void GPIO_I2C_Configuration(I2C_TypeDef* I2Cx); 12 | 13 | /** 14 | * @brief I2C控制器配置 15 | * @param I2Cx:选择I2C接口,I2C1,I2C2 16 | * @retval None 17 | **/ 18 | void I2C_Configuration(I2C_TypeDef* I2Cx); 19 | 20 | /** 21 | * @brief 初始化所使用的I2C接口 22 | * @param None 23 | * @retval None 24 | **/ 25 | void Hal_I2C_Init(void); 26 | 27 | /** 28 | * @brief 用户自行实现,用于检测I2C设备是否准备好,否则继续调用I2C可能会陷入死循环或其他错误状态 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Check_I2C_Device_Ready(void); 33 | 34 | /** 35 | * @brief I2C写数据 36 | * @param I2Cx:I2C1,I2C2,选择接口号 37 | * @param i2c_slave_addr:从设备地址 38 | * @param RegAddr:需要写入数据的寄存器地址 39 | * @param data:需要写入的寄存器值 40 | * @retval ret:0,操作成功,-1,失败 41 | **/ 42 | int8_t Hal_I2C_ByteWrite(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t RegAddr,uint8_t *data); 43 | 44 | /** 45 | * @brief I2C读数据 46 | * @param I2Cx:I2C1,I2C2,选择接口号 47 | * @param i2c_slave_addr:从设备地址 48 | * @param RegAddr:需要读取数据的寄存器地址 49 | * @param val:保存I2C读取返回值 50 | * @retval ret:0,操作成功,-1,失败 51 | **/ 52 | int8_t Hal_I2C_ByteRead(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t regAddr,uint8_t *val); 53 | 54 | /** 55 | * @brief I2C一次读多个数据 56 | * @param I2Cx:I2C1,I2C2,选择接口号 57 | * @param buf:存储返回数据的缓冲区 58 | * @param RegAddr:需要读取数据的寄存器地址 59 | * @param i2c_slave_addr:从设备地址 60 | * @param num:读取字节数 61 | * @retval ret:0,操作成功,-1,失败 62 | **/ 63 | int8_t Hal_I2C_MutiRead(I2C_TypeDef* I2Cx,uint8_t* buf, uint8_t i2c_slave_addr, uint8_t regAddr,uint8_t num); 64 | 65 | #define STM32_PHER_I2C2 66 | //#define STM32_PHER_I2C1 67 | 68 | #ifdef STM32_PHER_I2C2 69 | #define STM32_PHER_I2C2_SDA GPIO_Pin_11 70 | #define STM32_PHER_I2C2_SCL GPIO_Pin_10 71 | #endif 72 | 73 | #ifdef STM32_PHER_I2C1 74 | #define STM32_PHER_I2C1_SDA GPIO_Pin_11 75 | #define STM32_PHER_I2C1_SCL GPIO_Pin_10 76 | #endif 77 | #endif /* __I2C_EE_H */ 78 | 79 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 80 | 81 | 82 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/hmc5883l.c: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stm32f10x_i2c.h" 3 | #include "hal_i2c.h" 4 | #include "stdio.h" 5 | #include "hmc5883l.h" 6 | #include "utils.h" 7 | #define HMC5883L_ADDR 0x1e 8 | 9 | /* 从HMC5883L的指定地址开始读出一个字节 */ 10 | uint8_t HMC5883L_ReadByte(uint8_t ReadAddr) 11 | { 12 | uint8_t ret = 0; 13 | Hal_I2C_ByteRead(I2C2, HMC5883L_ADDR, ReadAddr, &ret); 14 | return ret; 15 | } 16 | 17 | /* 向HMC5883L的指定地址开始写入一个字节 */ 18 | void HMC5883L_WriteByte(uint8_t WriteAddr, uint8_t *Data) 19 | { 20 | Hal_I2C_ByteWrite(I2C2, HMC5883L_ADDR, WriteAddr, Data); 21 | } 22 | 23 | void HMC5883L_Init(void) 24 | { 25 | uint8_t val = 0; 26 | val = 0x70; 27 | HMC5883L_WriteByte(HMC58X3_R_CONFA, &val); /*配置寄存器 A*/ 28 | val = 0xA0; 29 | HMC5883L_WriteByte(HMC58X3_R_CONFB, &val); /*配置寄存器 B*/ 30 | val = 0; 31 | HMC5883L_WriteByte(HMC58X3_R_MODE, &val); /*配置模式寄存器,连续测量模式,参见手册*/ 32 | } 33 | /** 34 | * @brief 获取HMC5883L传感器数值,各方向LSB RAW数据. 35 | * @param data_out:存储传感器采集结果 36 | * @retval None 37 | **/ 38 | void HMC5883L_GetXYZ(int16_t data_out[3]) 39 | { 40 | uint8_t data[6]; 41 | HMC5883L_Init(); 42 | mDelay(200); 43 | Hal_I2C_MutiRead(I2C2, data, HMC5883L_ADDR, 0x3, 6); 44 | mDelay(10); 45 | data_out[0] = (int16_t)(data[1] + ((uint16_t)data[0] << 8)); 46 | data_out[1] = (int16_t)(data[3] + ((uint16_t)data[1] << 8)); 47 | data_out[2] = (int16_t)(data[5] + ((uint16_t)data[2] << 8)); 48 | 49 | if(data_out[0] < 0) 50 | { 51 | data_out[0] = -data_out[0]; 52 | printf("%s x %d\n", __func__, data_out[0]); 53 | } 54 | if(data_out[1] < 0) 55 | { 56 | data_out[1] = -data_out[1]; 57 | printf("%s z %d\n", __func__, data_out[1]); 58 | } 59 | if(data_out[2] < 0) 60 | { 61 | data_out[2] = -data_out[2]; 62 | printf("%s y %d\n", __func__, data_out[2]); 63 | } 64 | 65 | printf("HMC5883L ******X=0x%x,Z=0x%x,y=0x%x*****\n", (int16_t)data_out[0], (int16_t)data_out[1], (int16_t)data_out[2]); 66 | printf("status reg:0x%x\n", HMC5883L_ReadByte(9)); 67 | } 68 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/hmc5883l.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stm32f10x_i2c.h" 3 | #include "hal_i2c.h" 4 | #include "stdio.h" 5 | 6 | #define HMC5883L_ADDR 0x1e 7 | #define HMC58X3_ADDR 0x3C // 7 bit address of the HMC58X3 used with the Wire library 8 | #define HMC_POS_BIAS 1 9 | #define HMC_NEG_BIAS 2 10 | // HMC58X3 register map. For details see HMC58X3 datasheet 11 | #define HMC58X3_R_CONFA 0 12 | #define HMC58X3_R_CONFB 1 13 | #define HMC58X3_R_MODE 2 14 | #define HMC58X3_R_XM 3 15 | #define HMC58X3_R_XL 4 16 | 17 | #define HMC58X3_R_YM (7) //!< Register address for YM. 18 | #define HMC58X3_R_YL (8) //!< Register address for YL. 19 | #define HMC58X3_R_ZM (5) //!< Register address for ZM. 20 | #define HMC58X3_R_ZL (6) //!< Register address for ZL. 21 | 22 | #define HMC58X3_R_STATUS 9 23 | #define HMC58X3_R_IDA 10 24 | #define HMC58X3_R_IDB 11 25 | #define HMC58X3_R_IDC 12 26 | void HMC5883L_Init(void); 27 | /** 28 | * @brief 获取HMC5883L传感器数值,各方向 RAW数据X:data_out[0],Z:data_out[1],Y:data_out[2]; 29 | * @param data_out:存储传感器采集结果 30 | * @retval None 31 | **/ 32 | void HMC5883L_GetXYZ(int16_t data_out[3]); 33 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Devices/sht20.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "hal_i2c.h" 7 | 8 | /** 9 | * @brief reset SHT20模块. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void SHT20_reset(void); 14 | 15 | /** 16 | * @brief 读取 SHT20模块的用户寄存器 17 | * @param None 18 | * @retval 返回用户寄存器值 19 | **/ 20 | uint8_t SHT20_read_user_reg(void); 21 | 22 | /** 23 | * @brief 写 SHT20模块的用户寄存器,写之前先读 24 | * @param None 25 | * @retval None 26 | **/ 27 | void SHT20_write_user_reg(uint8_t val); 28 | 29 | /** 30 | * @brief 保持模式读SHT20模块温度或湿度 31 | * @param cmd:SHT20_Measurement_RH_HM or SHT20_Measurement_T_HM 32 | * @param pMeasurand:返回结果 33 | * @retval ret:0,成功,<0 失败 34 | **/ 35 | int8_t SHT2x_MeasureHM(uint8_t cmd, uint16_t *pMeasurand); 36 | 37 | /** 38 | * @brief 非保持模式读SHT20模块温度或湿度 39 | * @param cmd:SHT20_Measurement_RH_NHM or SHT20_Measurement_T_NHM 40 | * @param pMeasurand:返回结果 41 | * @param timeout:超时次数 42 | * @retval ret:0,成功,<0 失败 43 | **/ 44 | int8_t SHT2x_MeasurePoll(uint8_t cmd, uint16_t *pMeasurand, int32_t timeout); 45 | 46 | /** 47 | * @brief 读SHT20模块序列号 48 | * @param SerialNumber:8字节数据,用于存储返回的序列号 49 | * @retval ret:0,成功,<0 失败 50 | **/ 51 | int8_t SHT2x_GetSerialNumber(uint8_t SerialNumber[]); 52 | 53 | /*SHT20 设备操作相关宏定义,详见手册*/ 54 | #define SHT20_ADDRESS 0X40 55 | #define SHT20_Measurement_RH_HM 0XE5 56 | #define SHT20_Measurement_T_HM 0XE3 57 | #define SHT20_Measurement_RH_NHM 0XF5 58 | #define SHT20_Measurement_T_NHM 0XF3 59 | #define SHT20_READ_REG 0XE7 60 | #define SHT20_WRITE_REG 0XE6 61 | #define SHT20_SOFT_RESET 0XFE 62 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Hal/gpio.c: -------------------------------------------------------------------------------- 1 | #include "gpio.h" 2 | 3 | 4 | void GpioInit(void) 5 | { 6 | GPIO_InitTypeDef GPIO_InitStructure; 7 | //PC0,PC1,PC2,PC3为LED,设置为输出 8 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); 9 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3; 10 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 11 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 12 | GPIO_Init(GPIOC, &GPIO_InitStructure); 13 | 14 | //GPRS -->PWRKEY 15 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 16 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; 17 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 18 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 19 | GPIO_Init(GPIOA, &GPIO_InitStructure); 20 | } 21 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Hal/gpio.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "stdlib.h" 4 | #include "string.h" 5 | #include "usart1.h" 6 | #include "usart2.h" 7 | #include "EdpKit.h" 8 | 9 | #define GPRS_PWR_ON GPIO_SetBits(GPIOA,GPIO_Pin_0) 10 | 11 | extern void GpioInit(void); 12 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | /* 4 | * @brief USART1初始化函数 5 | */ 6 | extern void USART1_Init(void); 7 | /* 8 | * @brief USART1串口发送api 9 | */ 10 | extern void USART1_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 11 | 12 | extern uint8_t usart1_rcv_buf[256]; 13 | extern volatile uint32_t usart1_rcv_len; 14 | extern volatile uint32_t usart1_rcv_flag; 15 | extern volatile uint32_t usart1_rcv_start; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | #include "stdio.h" 4 | #include "stdlib.h" 5 | #include "string.h" 6 | #define MAX_RCV_LEN 256 7 | 8 | /* 9 | * @brief USART2初始化函数 10 | */ 11 | extern void USART2_Init(void); 12 | /* 13 | * @brief USART2串口发送api 14 | */ 15 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 16 | extern uint8_t usart2_rcv_buf[MAX_RCV_LEN]; 17 | 18 | extern volatile uint32_t usart2_rcv_len; 19 | /* 20 | * @brief USART2串口发送AT命令用 21 | */ 22 | void SendCmd(int8_t* cmd, int8_t* result, int32_t timeOut); 23 | /* 24 | * @brief 返回USART2已接收的数据长度 25 | */ 26 | uint32_t USART2_GetRcvNum(void); 27 | /* 28 | * @brief 返回USART2已接收的数据到buf,长度为rcv_len 29 | */ 30 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | 3 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len); 4 | 5 | /** 6 | * @brief 初始化ESP8266,并配置路由器和连接服务器 7 | * @param server:按AT命令配置的服务器地址和端口字符串 8 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 9 | * @retval NONE 10 | **/ 11 | 12 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd) 13 | { 14 | SendCmd(AT, "OK", 1000); /*进入AT命令模式*/ 15 | SendCmd(CWMODE, "OK", 1000); 16 | SendCmd(RST, "OK", 2000); /*重置模组式*/ 17 | SendCmd(CIFSR, "OK", 1000); /*查询设备IP,可放在需要的位置*/ 18 | SendCmd(ssid_pwd, "OK", 2000); /*配置要连接的路由器SSID和密码*/ 19 | SendCmd(server, "OK", 2000); /*与服务器建立TCP连接*/ 20 | SendCmd(CIPMODE, "OK", 1000); /*透传模式*/ 21 | memset(usart2_rcv_buf, 0, sizeof(usart2_rcv_buf)); /*先清除接收缓冲区*/ 22 | usart2_rcv_len = 0; 23 | USART2_Write(USART2, CIPSEND, strlen(CIPSEND)); /*开始透传*/ 24 | mDelay(500); 25 | if((NULL != strstr((const char *)usart2_rcv_buf, "ERROR"))) 26 | { 27 | return; 28 | } 29 | } 30 | 31 | /** 32 | * @brief 通过USART2连接ESP8266发送数据. 33 | * @param buf: 要发送的数据缓冲区地址 34 | * @param len: 要发送的数据缓长度 35 | * @retval 发送的数据长度 36 | **/ 37 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len) 38 | { 39 | memset(usart2_rcv_buf, 0, sizeof(usart2_rcv_buf)); 40 | usart2_rcv_len = 0; 41 | USART2_Write(USART2, (uint8_t*)buf, len); 42 | mDelay(100); 43 | return len; 44 | } 45 | 46 | /** 47 | * @brief 通过USART2发送数据. 48 | * @param buf: 要发送的数据缓冲区地址 49 | * @param len: 要发送的数据缓长度 50 | * @retval 发送的数据长度 51 | **/ 52 | uint32_t USART2_SendData(int8_t * buf, uint32_t len) 53 | { 54 | ESP8266_SendData(buf, len); 55 | return len; 56 | } 57 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef __ESP8266_HEADER__ 2 | #define __ESP8266_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "utils.h" 11 | 12 | #define AT "AT\r\n" 13 | #define CWMODE "AT+CWMODE=3\r\n" 14 | #define RST "AT+RST\r\n" 15 | #define CIFSR "AT+CIFSR\r\n" 16 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" 17 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 18 | #define MODBUS_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.42\",987\r\n" 19 | #define MQTT_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n" 20 | #define EDP_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 21 | #define CIPMODE "AT+CIPMODE=1\r\n" 22 | #define CIPSEND "AT+CIPSEND\r\n" 23 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 24 | 25 | /** 26 | * @brief 通过USART2发送数据. 27 | * @param buf: 要发送的数据缓冲区地址 28 | * @param len: 要发送的数据缓长度 29 | * @retval 发送的数据长度 30 | **/ 31 | uint32_t USART2_SendData(int8_t * buf, uint32_t len); 32 | 33 | /** 34 | * @brief 初始化ESP8266,并配置路由器和连接协议服务器,比如MODBUS,HTTP,EDP,MQTT服务器的IP地址和端口 35 | * @param server:按AT命令配置的服务器地址和端口字符串 36 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 37 | * @retval NONE 38 | **/ 39 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd); 40 | #endif 41 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Protocol/edp/Common.h: -------------------------------------------------------------------------------- 1 | #ifndef __COMMON_H__ 2 | #define __COMMON_H__ 3 | 4 | /*---------------------------------------------------------------------------*/ 5 | /* Type Definition Macros */ 6 | /*---------------------------------------------------------------------------*/ 7 | typedef unsigned char uint8; 8 | typedef char int8; 9 | typedef unsigned short uint16; 10 | typedef short int16; 11 | typedef unsigned int uint32; 12 | typedef int int32; 13 | 14 | typedef int socklen_t; 15 | 16 | typedef long long int int64; 17 | typedef unsigned long long int uint64; 18 | 19 | #endif /* __COMMON_H__ */ 20 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Protocol/edp/EdpDemo.h: -------------------------------------------------------------------------------- 1 | #ifndef __EDPDEMO_KIT_H__ 2 | #define __EDPDEMO_KIT_H__ 3 | 4 | #include 5 | #include 6 | #if defined(_LINUX) 7 | //#include 8 | //#include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #endif 15 | #include 16 | 17 | #include "EdpKit.h" 18 | #include "stm32f10x.h" 19 | #include "usart2.h" 20 | #include "utils.h" 21 | #include "sht20.h" 22 | 23 | /*----------------------------错误码-----------------------------------------*/ 24 | #define ERR_CREATE_SOCKET -1 25 | #define ERR_HOSTBYNAME -2 26 | #define ERR_CONNECT -3 27 | #define ERR_SEND -4 28 | #define ERR_TIMEOUT -5 29 | #define ERR_RECV -6 30 | 31 | /** 32 | * @brief EDP登录连接,采用协议中第一种方式登录连接,鉴权信息为deviceid和api key 33 | * @param api_key: 该设备的api key或项目master key 34 | * @param devid: 登录的EDP设备ID 35 | * @retval 发送的数据长度 36 | **/ 37 | void Connect_RequestType1(int8_t *devid, int8_t *api_key); 38 | 39 | /** 40 | * @brief EDP数据包发送 41 | * @param buffer: 要发送的数据缓冲区地址 42 | * @param len: 要发送的数据缓长度 43 | * @param sockfd:兼容linux socket api: STM32下无意义 44 | * @retval 发送的数据长度 45 | **/ 46 | int32_t DoSend(int32_t sockfd, const uint8_t *buffer, uint32_t len); 47 | 48 | /* 49 | * @brief EDP协议向自己透传数据,用于测试,将src_dev替换成目标DEVICE ID即可 50 | */ 51 | void Push_DataToMyself(void); 52 | /* 53 | * @brief EDP协议向Onenet上传温度信息,数据点格式TYPE=3 54 | */ 55 | void Save_TemperatueToOneNet(void); 56 | /* 57 | * @brief EDP协议向Onenet上传湿度信息,数据点格式TYPE=3 58 | */ 59 | void Save_HumToOneNet(void); 60 | 61 | /* 62 | * @brief EDP协议向Onenet上传温湿度信息,使用简单字符串格式,数据点格式TYPE=5,FEILD type 2. 63 | */ 64 | void Save_TempHumToOneNet(void); 65 | /* 66 | * @brief EDP协议测试主循环 67 | */ 68 | void EDP_Loop(void); 69 | /* 70 | * @brief 串口接收处理线程 71 | */ 72 | void Recv_Thread_Func(void); 73 | /* 74 | * @brief 发送PING包维持心跳 75 | */ 76 | void Ping_Server(void); 77 | #endif 78 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/User/main.c: -------------------------------------------------------------------------------- 1 | /** 2 | ****************************************************************************** 3 | * @file Project/STM32F10x_StdPeriph_Template/main.c 4 | * @author MCD Application Team 5 | * @version V3.5.0 6 | * @date 08-April-2011 7 | * @brief Main program body 8 | ****************************************************************************** 9 | * @attention 10 | * 11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE 13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY 14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING 15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 17 | * 18 | *

© COPYRIGHT 2011 STMicroelectronics

19 | ****************************************************************************** 20 | */ 21 | 22 | /* Includes ------------------------------------------------------------------*/ 23 | //USE_STDPERIPH_DRIVER, STM32F10X_HD, USE_STM3210B_EVAL 24 | 25 | #include "stm32f10x.h" 26 | #include "stdio.h" 27 | #include "stdlib.h" 28 | #include "string.h" 29 | #include "usart1.h" 30 | #include "usart2.h" 31 | #include "EdpKit.h" 32 | #include "utils.h" 33 | #include "esp8266.h" 34 | #include "bh1750fvi.h" 35 | #include "EdpDemo.h" 36 | 37 | int main(void) 38 | { 39 | /*初始化串口1 用于调试信息输出*/ 40 | USART1_Init(); 41 | /*初始化串口2 用于MT6331通信*/ 42 | USART2_Init(); 43 | mDelay(1000); 44 | /*I2C初始化,使用I2C2*/ 45 | Hal_I2C_Init(); 46 | ESP8266_Init(EDP_CIPSTART,CWJAP); 47 | EDP_Loop(); 48 | } 49 | 50 | /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/ 51 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/User/stm32f10x_it.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/User/stm32f10x_it.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | /* 9 | * buf按十六进制输出 10 | */ 11 | void hexdump(const uint8_t *buf, uint32_t num); 12 | /* 13 | *16进制数据转字符 14 | */ 15 | uint8_t prvucMBBIN2CHAR(uint8_t ucByte); 16 | 17 | void uDelay(uint32_t i); 18 | 19 | void mDelay(uint32_t i); 20 | /* 21 | * @brief MODBU协议要求的CRC16校验 22 | */ 23 | uint16_t usMBCRC16(uint8_t * pucFrame, uint16_t usLen); 24 | #endif 25 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/at24c02.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\Devices -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\at24c02.o" --omf_browse "..\object\at24c02.crf" --depend "..\object\at24c02.d" "..\Devices\at24c02.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/at24c02.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/at24c02.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/at24c02.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/at24c02.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/gpio.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/gpio.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/led.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\led.o" --omf_browse "..\object\led.crf" --depend "..\object\led.d" "..\Hal\led.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_EDP_Sensors/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Devices/hal_i2c.h: -------------------------------------------------------------------------------- 1 | #ifndef __Hal_I2C_H 2 | #define __Hal_I2C_H 3 | 4 | #include "stm32f10x.h" 5 | 6 | /** 7 | * @brief I2C 使用的GPIO配置 8 | * @param I2Cx:选择I2C接口,I2C1,I2C2 9 | * @retval None 10 | **/ 11 | void GPIO_I2C_Configuration(I2C_TypeDef* I2Cx); 12 | 13 | /** 14 | * @brief I2C控制器配置 15 | * @param I2Cx:选择I2C接口,I2C1,I2C2 16 | * @retval None 17 | **/ 18 | void I2C_Configuration(I2C_TypeDef* I2Cx); 19 | 20 | /** 21 | * @brief 初始化所使用的I2C接口 22 | * @param None 23 | * @retval None 24 | **/ 25 | void Hal_I2C_Init(void); 26 | 27 | /** 28 | * @brief 用户自行实现,用于检测I2C设备是否准备好,否则继续调用I2C可能会陷入死循环或其他错误状态 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Check_I2C_Device_Ready(void); 33 | 34 | /** 35 | * @brief I2C写数据 36 | * @param I2Cx:I2C1,I2C2,选择接口号 37 | * @param i2c_slave_addr:从设备地址 38 | * @param RegAddr:需要写入数据的寄存器地址 39 | * @param data:需要写入的寄存器值 40 | * @retval ret:0,操作成功,-1,失败 41 | **/ 42 | int8_t Hal_I2C_ByteWrite(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t RegAddr,uint8_t *data); 43 | 44 | /** 45 | * @brief I2C读数据 46 | * @param I2Cx:I2C1,I2C2,选择接口号 47 | * @param i2c_slave_addr:从设备地址 48 | * @param RegAddr:需要读取数据的寄存器地址 49 | * @param val:保存I2C读取返回值 50 | * @retval ret:0,操作成功,-1,失败 51 | **/ 52 | int8_t Hal_I2C_ByteRead(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t regAddr,uint8_t *val); 53 | 54 | /** 55 | * @brief I2C一次读多个数据 56 | * @param I2Cx:I2C1,I2C2,选择接口号 57 | * @param buf:存储返回数据的缓冲区 58 | * @param RegAddr:需要读取数据的寄存器地址 59 | * @param i2c_slave_addr:从设备地址 60 | * @param num:读取字节数 61 | * @retval ret:0,操作成功,-1,失败 62 | **/ 63 | int8_t Hal_I2C_MutiRead(I2C_TypeDef* I2Cx,uint8_t* buf, uint8_t i2c_slave_addr, uint8_t regAddr,uint8_t num); 64 | 65 | #define STM32_PHER_I2C2 66 | //#define STM32_PHER_I2C1 67 | 68 | #ifdef STM32_PHER_I2C2 69 | #define STM32_PHER_I2C2_SDA GPIO_Pin_11 70 | #define STM32_PHER_I2C2_SCL GPIO_Pin_10 71 | #endif 72 | 73 | #ifdef STM32_PHER_I2C1 74 | #define STM32_PHER_I2C1_SDA GPIO_Pin_11 75 | #define STM32_PHER_I2C1_SCL GPIO_Pin_10 76 | #endif 77 | #endif /* __I2C_EE_H */ 78 | 79 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 80 | 81 | 82 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Devices/sht20.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "hal_i2c.h" 7 | 8 | /** 9 | * @brief reset SHT20模块. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void SHT20_reset(void); 14 | 15 | /** 16 | * @brief 读取 SHT20模块的用户寄存器 17 | * @param None 18 | * @retval 返回用户寄存器值 19 | **/ 20 | uint8_t SHT20_read_user_reg(void); 21 | 22 | /** 23 | * @brief 写 SHT20模块的用户寄存器,写之前先读 24 | * @param None 25 | * @retval None 26 | **/ 27 | void SHT20_write_user_reg(uint8_t val); 28 | 29 | /** 30 | * @brief 保持模式读SHT20模块温度或湿度 31 | * @param cmd:SHT20_Measurement_RH_HM or SHT20_Measurement_T_HM 32 | * @param pMeasurand:返回结果 33 | * @retval ret:0,成功,<0 失败 34 | **/ 35 | int8_t SHT2x_MeasureHM(uint8_t cmd, uint16_t *pMeasurand); 36 | 37 | /** 38 | * @brief 非保持模式读SHT20模块温度或湿度 39 | * @param cmd:SHT20_Measurement_RH_NHM or SHT20_Measurement_T_NHM 40 | * @param pMeasurand:返回结果 41 | * @param timeout:超时次数 42 | * @retval ret:0,成功,<0 失败 43 | **/ 44 | int8_t SHT2x_MeasurePoll(uint8_t cmd, uint16_t *pMeasurand, int32_t timeout); 45 | 46 | /** 47 | * @brief 读SHT20模块序列号 48 | * @param SerialNumber:8字节数据,用于存储返回的序列号 49 | * @retval ret:0,成功,<0 失败 50 | **/ 51 | int8_t SHT2x_GetSerialNumber(uint8_t SerialNumber[]); 52 | 53 | /*SHT20 设备操作相关宏定义,详见手册*/ 54 | #define SHT20_ADDRESS 0X40 55 | #define SHT20_Measurement_RH_HM 0XE5 56 | #define SHT20_Measurement_T_HM 0XE3 57 | #define SHT20_Measurement_RH_NHM 0XF5 58 | #define SHT20_Measurement_T_NHM 0XF3 59 | #define SHT20_READ_REG 0XE7 60 | #define SHT20_WRITE_REG 0XE6 61 | #define SHT20_SOFT_RESET 0XFE 62 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | 4 | extern void USART1_Config(void); 5 | extern void usart1_write(USART_TypeDef* USARTx, uint8_t *Data, uint8_t len); 6 | 7 | extern unsigned char usart1_rcv_buf[512]; 8 | extern volatile unsigned int usart1_rcv_len; 9 | extern volatile unsigned int usart1_rcv_flag; 10 | extern volatile unsigned int usart1_rcv_start; 11 | 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | 4 | #include 5 | #include 6 | #define MAX_RCV_LEN 1024 7 | 8 | extern void USART2_Config(void); 9 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data,uint8_t len); 10 | extern void USART2_Clear(void); 11 | extern volatile unsigned char gprs_ready_flag; 12 | extern volatile unsigned char gprs_ready_count; 13 | 14 | extern unsigned char usart2_rcv_buf[MAX_RCV_LEN]; 15 | extern volatile unsigned int usart2_rcv_len; 16 | void SendCmd(char* cmd, char* result, int timeOut); 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | #include "usart2.h" 3 | 4 | /* 5 | * @brief ESP8266模块初始化 6 | */ 7 | void ESP8266_Init(void) 8 | { 9 | #if 1 10 | SendCmd(AT, "OK", 1000); //模块有效性检查 11 | SendCmd(CWMODE, "OK", 1000); //模块工作模式 12 | SendCmd(RST, "OK", 2000); //模块重置 13 | SendCmd(CIFSR, "OK", 1000); //查询网络信息 14 | SendCmd(CWJAP, "OK", 2000); //配置需要连接的WIFI热点SSID和密码 15 | SendCmd(CIPSTART, "OK", 2000); //TCP连接 16 | SendCmd(CIPMODE1, "OK", 1000); //配置透传模式 17 | SendCmd(CIPSEND, ">", 1000); //进入透传模式 18 | USART2_Clear(); 19 | #endif 20 | } 21 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #define AT "AT\r\n" 2 | #define CWMODE "AT+CWMODE=3\r\n" //STA+AP模式 3 | #define RST "AT+RST\r\n" 4 | #define CIFSR "AT+CIFSR\r\n" 5 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" //ssid: onenet 密码:空 6 | //#define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" //EDP服务器 183.230.40.39/876 7 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.33\",80\r\n" //HTTP服务器183.230.40.33/80 8 | #define CIPMODE0 "AT+CIPMODE=0\r\n" //非透传模式 9 | #define CIPMODE1 "AT+CIPMODE=1\r\n" //透传模式 10 | #define CIPSEND "AT+CIPSEND\r\n" 11 | #define CIPSTATUS "AT+CIPSTATUS\r\n" //网络状态查询 12 | 13 | 14 | void ESP8266_Init(void); 15 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Protocol/http/HTTP_Demo.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | /** 6 | * @brief 组HTTP POST报文 7 | * @param pkt 报文缓存指针 8 | * @param key API_KEY定义在Main.c文件中,需要根据自己的设备修改 9 | * @param devid 设备ID,定义在main.c文件中,需要根据自己的设备修改 10 | * @param dsid 数据流ID 11 | * @param val 字符串形式的数据点的值 12 | * @retval 整个包的长度 13 | */ 14 | uint32_t HTTP_PostPkt(char *pkt, char *key, char *devid, char *dsid, char *val) 15 | { 16 | char dataBuf[100] = {0}; 17 | char lenBuf[10] = {0}; 18 | *pkt = 0; 19 | 20 | sprintf(dataBuf, ",;%s,%s", dsid, val); //采用分割字符串格式:type = 5 21 | sprintf(lenBuf, "%d", strlen(dataBuf)); 22 | 23 | strcat(pkt, "POST /devices/"); 24 | strcat(pkt, devid); 25 | strcat(pkt, "/datapoints?type=5 HTTP/1.1\r\n"); 26 | 27 | strcat(pkt, "api-key:"); 28 | strcat(pkt, key); 29 | strcat(pkt, "\r\n"); 30 | 31 | strcat(pkt, "Host:api.heclouds.com\r\n"); 32 | 33 | strcat(pkt, "Content-Length:"); 34 | strcat(pkt, lenBuf); 35 | strcat(pkt, "\r\n\r\n"); 36 | 37 | strcat(pkt, dataBuf); 38 | 39 | return strlen(pkt); 40 | } 41 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Protocol/http/HTTP_Demo.h: -------------------------------------------------------------------------------- 1 | extern uint32 HTTP_PostPkt(u8 *pkt, char *key, char *devid, char *dsid, char *val); -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/User/stm32f10x_it.h: -------------------------------------------------------------------------------- 1 | /** 2 | ****************************************************************************** 3 | * @file Project/STM32F10x_StdPeriph_Template/stm32f10x_it.h 4 | * @author MCD Application Team 5 | * @version V3.5.0 6 | * @date 08-April-2011 7 | * @brief This file contains the headers of the interrupt handlers. 8 | ****************************************************************************** 9 | * @attention 10 | * 11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE 13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY 14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING 15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 17 | * 18 | *

© COPYRIGHT 2011 STMicroelectronics

19 | ****************************************************************************** 20 | */ 21 | 22 | /* Define to prevent recursive inclusion -------------------------------------*/ 23 | #ifndef __STM32F10x_IT_H 24 | #define __STM32F10x_IT_H 25 | 26 | #ifdef __cplusplus 27 | extern "C" { 28 | #endif 29 | 30 | /* Includes ------------------------------------------------------------------*/ 31 | #include "stm32f10x.h" 32 | 33 | /* Exported types ------------------------------------------------------------*/ 34 | /* Exported constants --------------------------------------------------------*/ 35 | /* Exported macro ------------------------------------------------------------*/ 36 | /* Exported functions ------------------------------------------------------- */ 37 | 38 | void NMI_Handler(void); 39 | void HardFault_Handler(void); 40 | void MemManage_Handler(void); 41 | void BusFault_Handler(void); 42 | void UsageFault_Handler(void); 43 | void SVC_Handler(void); 44 | void DebugMon_Handler(void); 45 | void PendSV_Handler(void); 46 | void SysTick_Handler(void); 47 | 48 | #ifdef __cplusplus 49 | } 50 | #endif 51 | 52 | #endif /* __STM32F10x_IT_H */ 53 | 54 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/ 55 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | 7 | void hexdump(const unsigned char *buf, uint32_t); 8 | unsigned char prvucMBBIN2CHAR(unsigned char ucByte); 9 | void Delay(unsigned int i); 10 | unsigned short usMBCRC16( unsigned char * pucFrame, unsigned short usLen ); 11 | void mDelay(uint32_t i); 12 | void uDelay(uint32_t i); 13 | #endif 14 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/cjson.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\Devices -I..\Network\esp8266 -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\cjson.o" --omf_browse "..\object\cjson.crf" --depend "..\object\cjson.d" "..\Utils\cJSON.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/cjson.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/cjson.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/cjson.d: -------------------------------------------------------------------------------- 1 | ..\object\cjson.o: ..\Utils\cJSON.c 2 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\string.h 3 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\stdio.h 4 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\math.h 5 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\stdlib.h 6 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\float.h 7 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\limits.h 8 | ..\object\cjson.o: C:\Keil\ARM\RV31\Inc\ctype.h 9 | ..\object\cjson.o: ..\Utils\cJSON.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/cjson.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/cjson.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpdemo.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\edpdemo.o" --omf_browse "..\object\edpdemo.crf" --depend "..\object\edpdemo.d" "..\Protocol\edp\EdpDemo.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpdemo.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/edpdemo.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpdemo.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/edpdemo.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpkit.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/edpkit.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpkit.d: -------------------------------------------------------------------------------- 1 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.c 2 | ..\object\edpkit.o: C:\Keil\ARM\RV31\Inc\stdlib.h 3 | ..\object\edpkit.o: C:\Keil\ARM\RV31\Inc\stdio.h 4 | ..\object\edpkit.o: C:\Keil\ARM\RV31\Inc\string.h 5 | ..\object\edpkit.o: C:\Keil\ARM\RV31\Inc\time.h 6 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.h 7 | ..\object\edpkit.o: ..\Protocol\edp\Common.h 8 | ..\object\edpkit.o: ..\Utils\cJSON.h 9 | ..\object\edpkit.o: C:\Keil\ARM\RV31\Inc\assert.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/edpkit.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/edpkit.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/gpio.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP -I C:\Keil\ARM\RV31\Inc -I C:\Keil\ARM\CMSIS\Include -I C:\Keil\ARM\Inc\ST\STM32F10x -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\gpio.o" --omf_browse "..\object\gpio.crf" --depend "..\object\gpio.d" "..\Hal\gpio.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/gpio.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/gpio.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/onenetdemo_sct.Bak: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_HTTP_HT/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | /* 4 | * @brief USART1初始化函数 5 | */ 6 | extern void USART1_Init(void); 7 | /* 8 | * @brief USART1串口发送api 9 | */ 10 | extern void USART1_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 11 | 12 | extern uint8_t usart1_rcv_buf[256]; 13 | extern volatile uint32_t usart1_rcv_len; 14 | extern volatile uint32_t usart1_rcv_flag; 15 | extern volatile uint32_t usart1_rcv_start; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | #include "stdio.h" 4 | #include "stdlib.h" 5 | #include "string.h" 6 | #define MAX_RCV_LEN 256 7 | 8 | /* 9 | * @brief USART2初始化函数 10 | */ 11 | extern void USART2_Init(void); 12 | /* 13 | * @brief USART2串口发送api 14 | */ 15 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 16 | extern uint8_t usart2_rcv_buf[MAX_RCV_LEN]; 17 | 18 | extern volatile uint32_t usart2_rcv_len; 19 | /* 20 | * @brief USART2串口发送AT命令用 21 | */ 22 | void SendCmd(int8_t* cmd, int8_t* result, int32_t timeOut); 23 | /* 24 | * @brief 返回USART2已接收的数据长度 25 | */ 26 | uint32_t USART2_GetRcvNum(void); 27 | /* 28 | * @brief 返回USART2已接收的数据到buf,长度为rcv_len 29 | */ 30 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | 3 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len); 4 | 5 | /** 6 | * @brief 初始化ESP8266,并配置路由器和连接服务器 7 | * @param server:按AT命令配置的服务器地址和端口字符串 8 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 9 | * @retval NONE 10 | **/ 11 | 12 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd) 13 | { 14 | SendCmd(AT, "OK", 1000); /*进入AT命令模式*/ 15 | SendCmd(CWMODE, "OK", 1000); 16 | SendCmd(RST, "OK", 2000); /*重置模组式*/ 17 | SendCmd(CIFSR, "OK", 1000); /*查询设备IP,可放在需要的位置*/ 18 | SendCmd(ssid_pwd, "OK", 2000); /*配置要连接的路由器SSID和密码*/ 19 | SendCmd(server, "OK", 2000); /*与服务器建立TCP连接*/ 20 | SendCmd(CIPMODE, "OK", 1000); /*透传模式*/ 21 | memset(usart2_rcv_buf, 0, strlen((const char *)usart2_rcv_buf)); /*先清除接收缓冲区*/ 22 | usart2_rcv_len = 0; 23 | USART2_Write(USART2, CIPSEND, strlen(CIPSEND)); /*开始透传*/ 24 | mDelay(500); 25 | if((NULL != strstr((const char *)usart2_rcv_buf, "ERROR"))) 26 | { 27 | return; 28 | } 29 | } 30 | 31 | /** 32 | * @brief 通过USART2连接ESP8266发送数据. 33 | * @param buf: 要发送的数据缓冲区地址 34 | * @param len: 要发送的数据缓长度 35 | * @retval 发送的数据长度 36 | **/ 37 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len) 38 | { 39 | memset(usart2_rcv_buf, 0, strlen((const char *)usart2_rcv_buf)); 40 | usart2_rcv_len = 0; 41 | USART2_Write(USART2, (uint8_t*)buf, len); 42 | mDelay(100); 43 | return len; 44 | } 45 | 46 | /** 47 | * @brief 通过USART2发送数据. 48 | * @param buf: 要发送的数据缓冲区地址 49 | * @param len: 要发送的数据缓长度 50 | * @retval 发送的数据长度 51 | **/ 52 | uint32_t USART2_SendData(int8_t * buf, uint32_t len) 53 | { 54 | ESP8266_SendData(buf, len); 55 | return len; 56 | } 57 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef __ESP8266_HEADER__ 2 | #define __ESP8266_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "utils.h" 11 | 12 | #define AT "AT\r\n" 13 | #define CWMODE "AT+CWMODE=3\r\n" 14 | #define RST "AT+RST\r\n" 15 | #define CIFSR "AT+CIFSR\r\n" 16 | #define CWJAP "AT+CWJAP=\"ONENET\",\"\"\r\n" 17 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 18 | #define MODBUS_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.42\",987\r\n" 19 | #define MQTT_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n" 20 | #define EDP_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 21 | #define CIPMODE "AT+CIPMODE=1\r\n" 22 | #define CIPSEND "AT+CIPSEND\r\n" 23 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 24 | 25 | /** 26 | * @brief 通过USART2发送数据. 27 | * @param buf: 要发送的数据缓冲区地址 28 | * @param len: 要发送的数据缓长度 29 | * @retval 发送的数据长度 30 | **/ 31 | uint32_t USART2_SendData(int8_t * buf, uint32_t len); 32 | 33 | /** 34 | * @brief 初始化ESP8266,并配置路由器和连接协议服务器,比如MODBUS,HTTP,EDP,MQTT服务器的IP地址和端口 35 | * @param server:按AT命令配置的服务器地址和端口字符串 36 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 37 | * @retval NONE 38 | **/ 39 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd); 40 | #endif 41 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Protocol/modbus/modbus.h: -------------------------------------------------------------------------------- 1 | #ifndef __MODBUS_HEADER__ 2 | #define __MODBUS_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stm32f10x_usart.h" 6 | #include "stm32f10x_exti.h" 7 | #include "misc.h" 8 | #include "usart2.h" 9 | #include "stm32f10x.h" 10 | #include "stdio.h" 11 | #include "stdlib.h" 12 | #include "string.h" 13 | #include "utils.h" 14 | #include "usart2.h" 15 | 16 | #define MAXLINE 128 17 | #define MY_MODBUS_ADDR 0x11 18 | #define MB_FUNC_READ_HOLDING 3 19 | 20 | /** 21 | * @brief modbus协议主循环 22 | * @param None 23 | * @retval None 24 | **/ 25 | void MODBUS_Loop(void); 26 | 27 | /** 28 | * @brief modbus协议命令处理入口 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Process_Cmd(uint8_t * buf, int32_t len); 33 | /* 34 | * @brief modbus登陆鉴权 35 | * @param None 36 | * @retval None 37 | */ 38 | void MODBUS_Login(void); 39 | #endif 40 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/User/main.c: -------------------------------------------------------------------------------- 1 | /** 2 | ****************************************************************************** 3 | * @file Project/STM32F10x_StdPeriph_Template/main.c 4 | * @author MCD Application Team 5 | * @version V3.5.0 6 | * @date 08-April-2011 7 | * @brief Main program body 8 | ****************************************************************************** 9 | * @attention 10 | * 11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE 13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY 14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING 15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 17 | * 18 | *

© COPYRIGHT 2011 STMicroelectronics

19 | ****************************************************************************** 20 | */ 21 | 22 | /* Includes ------------------------------------------------------------------*/ 23 | #include "stm32f10x.h" 24 | #include "stdio.h" 25 | #include "stdlib.h" 26 | #include "string.h" 27 | #include "usart1.h" 28 | #include "usart2.h" 29 | #include "utils.h" 30 | #include "esp8266.h" 31 | #include "modbus.h" 32 | 33 | int main(void) 34 | { 35 | /*初始化串口1 用于打印调试信息, 115200 8N1*/ 36 | USART1_Init(); 37 | /*初始化串口2 用于和ESP8266进行数据通信, 115200 8N1*/ 38 | USART2_Init(); 39 | mDelay(1000); 40 | /*初始化ESP8266模组,并连接CWJAP指定的AP,与MODBUS_CIPSTART配置的MODBUS服务器建立tcp连接*/ 41 | ESP8266_Init((int8_t *)MODBUS_CIPSTART, (int8_t *)CWJAP); 42 | //MT6331_Init(); 43 | /*进入modbus协议测试主循环*/ 44 | MODBUS_Loop(); 45 | } 46 | 47 | /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/ 48 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | /* 9 | * buf按十六进制输出 10 | */ 11 | void hexdump(const uint8_t *buf, uint32_t num); 12 | /* 13 | *16进制数据转字符 14 | */ 15 | uint8_t prvucMBBIN2CHAR(uint8_t ucByte); 16 | 17 | void uDelay(uint32_t i); 18 | 19 | void mDelay(uint32_t i); 20 | /* 21 | * @brief MODBU协议要求的CRC16校验 22 | */ 23 | uint16_t usMBCRC16(uint8_t * pucFrame, uint16_t usLen); 24 | #endif 25 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/cjson.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/cjson.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/cjson.d: -------------------------------------------------------------------------------- 1 | ..\object\cjson.o: ..\Utils\cJSON.c 2 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 3 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\math.h 5 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 6 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\float.h 7 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\limits.h 8 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\ctype.h 9 | ..\object\cjson.o: ..\Utils\cJSON.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/cjson.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/cjson.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/edpdemo.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/edpdemo.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/edpdemo.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/edpdemo.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/edpkit.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/edpkit.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/edpkit.d: -------------------------------------------------------------------------------- 1 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.c 2 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 5 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\time.h 6 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.h 7 | ..\object\edpkit.o: ..\Protocol\edp\Common.h 8 | ..\object\edpkit.o: ..\Utils\cJSON.h 9 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\assert.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/edpkit.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/edpkit.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/gpio.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\gpio.o" --omf_browse "..\object\gpio.crf" --depend "..\object\gpio.d" "..\Hal\gpio.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/gpio.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/gpio.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/hal_i2c.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/hal_i2c.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/hal_i2c.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/hal_i2c.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/sht20.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/sht20.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MODBUS/object/sht20.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MODBUS/object/sht20.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Devices/hal_i2c.h: -------------------------------------------------------------------------------- 1 | #ifndef __Hal_I2C_H 2 | #define __Hal_I2C_H 3 | 4 | #include "stm32f10x.h" 5 | 6 | /** 7 | * @brief I2C 使用的GPIO配置 8 | * @param I2Cx:选择I2C接口,I2C1,I2C2 9 | * @retval None 10 | **/ 11 | void GPIO_I2C_Configuration(I2C_TypeDef* I2Cx); 12 | 13 | /** 14 | * @brief I2C控制器配置 15 | * @param I2Cx:选择I2C接口,I2C1,I2C2 16 | * @retval None 17 | **/ 18 | void I2C_Configuration(I2C_TypeDef* I2Cx); 19 | 20 | /** 21 | * @brief 初始化所使用的I2C接口 22 | * @param None 23 | * @retval None 24 | **/ 25 | void Hal_I2C_Init(void); 26 | 27 | /** 28 | * @brief 用户自行实现,用于检测I2C设备是否准备好,否则继续调用I2C可能会陷入死循环或其他错误状态 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Check_I2C_Device_Ready(void); 33 | 34 | /** 35 | * @brief I2C写数据 36 | * @param I2Cx:I2C1,I2C2,选择接口号 37 | * @param i2c_slave_addr:从设备地址 38 | * @param RegAddr:需要写入数据的寄存器地址 39 | * @param data:需要写入的寄存器值 40 | * @retval ret:0,操作成功,-1,失败 41 | **/ 42 | int8_t Hal_I2C_ByteWrite(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t RegAddr,uint8_t *data); 43 | 44 | /** 45 | * @brief I2C读数据 46 | * @param I2Cx:I2C1,I2C2,选择接口号 47 | * @param i2c_slave_addr:从设备地址 48 | * @param RegAddr:需要读取数据的寄存器地址 49 | * @param val:保存I2C读取返回值 50 | * @retval ret:0,操作成功,-1,失败 51 | **/ 52 | int8_t Hal_I2C_ByteRead(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t regAddr,uint8_t *val); 53 | 54 | /** 55 | * @brief I2C一次读多个数据 56 | * @param I2Cx:I2C1,I2C2,选择接口号 57 | * @param buf:存储返回数据的缓冲区 58 | * @param RegAddr:需要读取数据的寄存器地址 59 | * @param i2c_slave_addr:从设备地址 60 | * @param num:读取字节数 61 | * @retval ret:0,操作成功,-1,失败 62 | **/ 63 | int8_t Hal_I2C_MutiRead(I2C_TypeDef* I2Cx,uint8_t* buf, uint8_t i2c_slave_addr, uint8_t regAddr,uint8_t num); 64 | 65 | #define STM32_PHER_I2C2 66 | //#define STM32_PHER_I2C1 67 | 68 | #ifdef STM32_PHER_I2C2 69 | #define STM32_PHER_I2C2_SDA GPIO_Pin_11 70 | #define STM32_PHER_I2C2_SCL GPIO_Pin_10 71 | #endif 72 | 73 | #ifdef STM32_PHER_I2C1 74 | #define STM32_PHER_I2C1_SDA GPIO_Pin_11 75 | #define STM32_PHER_I2C1_SCL GPIO_Pin_10 76 | #endif 77 | #endif /* __I2C_EE_H */ 78 | 79 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 80 | 81 | 82 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Devices/sht20.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "hal_i2c.h" 7 | 8 | /** 9 | * @brief reset SHT20模块. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void SHT20_reset(void); 14 | 15 | /** 16 | * @brief 读取 SHT20模块的用户寄存器 17 | * @param None 18 | * @retval 返回用户寄存器值 19 | **/ 20 | uint8_t SHT20_read_user_reg(void); 21 | 22 | /** 23 | * @brief 写 SHT20模块的用户寄存器,写之前先读 24 | * @param None 25 | * @retval None 26 | **/ 27 | void SHT20_write_user_reg(uint8_t val); 28 | 29 | /** 30 | * @brief 保持模式读SHT20模块温度或湿度 31 | * @param cmd:SHT20_Measurement_RH_HM or SHT20_Measurement_T_HM 32 | * @param pMeasurand:返回结果 33 | * @retval ret:0,成功,<0 失败 34 | **/ 35 | int8_t SHT2x_MeasureHM(uint8_t cmd, uint16_t *pMeasurand); 36 | 37 | /** 38 | * @brief 非保持模式读SHT20模块温度或湿度 39 | * @param cmd:SHT20_Measurement_RH_NHM or SHT20_Measurement_T_NHM 40 | * @param pMeasurand:返回结果 41 | * @param timeout:超时次数 42 | * @retval ret:0,成功,<0 失败 43 | **/ 44 | int8_t SHT2x_MeasurePoll(uint8_t cmd, uint16_t *pMeasurand, int32_t timeout); 45 | 46 | /** 47 | * @brief 读SHT20模块序列号 48 | * @param SerialNumber:8字节数据,用于存储返回的序列号 49 | * @retval ret:0,成功,<0 失败 50 | **/ 51 | int8_t SHT2x_GetSerialNumber(uint8_t SerialNumber[]); 52 | 53 | /*SHT20 设备操作相关宏定义,详见手册*/ 54 | #define SHT20_ADDRESS 0X40 55 | #define SHT20_Measurement_RH_HM 0XE5 56 | #define SHT20_Measurement_T_HM 0XE3 57 | #define SHT20_Measurement_RH_NHM 0XF5 58 | #define SHT20_Measurement_T_NHM 0XF3 59 | #define SHT20_READ_REG 0XE7 60 | #define SHT20_WRITE_REG 0XE6 61 | #define SHT20_SOFT_RESET 0XFE 62 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | /* 4 | * @brief USART1初始化函数 5 | */ 6 | extern void USART1_Init(void); 7 | /* 8 | * @brief USART1串口发送api 9 | */ 10 | extern void USART1_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 11 | 12 | extern uint8_t usart1_rcv_buf[256]; 13 | extern volatile uint32_t usart1_rcv_len; 14 | extern volatile uint32_t usart1_rcv_flag; 15 | extern volatile uint32_t usart1_rcv_start; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | #include "stdio.h" 4 | #include "stdlib.h" 5 | #include "string.h" 6 | #define MAX_RCV_LEN 256 7 | 8 | /* 9 | * @brief USART2初始化函数 10 | */ 11 | extern void USART2_Init(void); 12 | /* 13 | * @brief USART2串口发送api 14 | */ 15 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 16 | extern uint8_t usart2_rcv_buf[MAX_RCV_LEN]; 17 | 18 | extern volatile uint32_t usart2_rcv_len; 19 | /* 20 | * @brief USART2串口发送AT命令用 21 | */ 22 | void SendCmd(int8_t* cmd, int8_t* result, int32_t timeOut); 23 | /* 24 | * @brief 返回USART2已接收的数据长度 25 | */ 26 | uint32_t USART2_GetRcvNum(void); 27 | /* 28 | * @brief 返回USART2已接收的数据到buf,长度为rcv_len 29 | */ 30 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | 3 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len); 4 | 5 | /** 6 | * @brief 初始化ESP8266,并配置路由器和连接服务器 7 | * @param server:按AT命令配置的服务器地址和端口字符串 8 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 9 | * @retval NONE 10 | **/ 11 | 12 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd) 13 | { 14 | SendCmd(AT, "OK", 1000); /*进入AT命令模式*/ 15 | SendCmd(CWMODE, "OK", 1000); 16 | SendCmd(RST, "OK", 2000); /*重置模组式*/ 17 | SendCmd(CIFSR, "OK", 1000); /*查询设备IP,可放在需要的位置*/ 18 | SendCmd(ssid_pwd, "OK", 2000); /*配置要连接的路由器SSID和密码*/ 19 | SendCmd(server, "OK", 2000); /*与服务器建立TCP连接*/ 20 | SendCmd(CIPMODE, "OK", 1000); /*透传模式*/ 21 | memset(usart2_rcv_buf, 0, strlen((const char *)usart2_rcv_buf)); /*先清除接收缓冲区*/ 22 | usart2_rcv_len = 0; 23 | USART2_Write(USART2, CIPSEND, strlen(CIPSEND)); /*开始透传*/ 24 | mDelay(500); 25 | if((NULL != strstr((const char *)usart2_rcv_buf, "ERROR"))) 26 | { 27 | return; 28 | } 29 | } 30 | 31 | /** 32 | * @brief 通过USART2连接ESP8266发送数据. 33 | * @param buf: 要发送的数据缓冲区地址 34 | * @param len: 要发送的数据缓长度 35 | * @retval 发送的数据长度 36 | **/ 37 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len) 38 | { 39 | memset(usart2_rcv_buf, 0, strlen((const char *)usart2_rcv_buf)); 40 | usart2_rcv_len = 0; 41 | USART2_Write(USART2, (uint8_t*)buf, len); 42 | mDelay(100); 43 | return len; 44 | } 45 | 46 | /** 47 | * @brief 通过USART2发送数据. 48 | * @param buf: 要发送的数据缓冲区地址 49 | * @param len: 要发送的数据缓长度 50 | * @retval 发送的数据长度 51 | **/ 52 | uint32_t USART2_SendData(int8_t * buf, uint32_t len) 53 | { 54 | ESP8266_SendData(buf, len); 55 | return len; 56 | } 57 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef __ESP8266_HEADER__ 2 | #define __ESP8266_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "utils.h" 11 | 12 | #define AT "AT\r\n" 13 | #define CWMODE "AT+CWMODE=3\r\n" 14 | #define RST "AT+RST\r\n" 15 | #define CIFSR "AT+CIFSR\r\n" 16 | #define CWJAP "AT+CWJAP=\"onenet\",\"\"\r\n" 17 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 18 | #define MODBUS_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.42\",987\r\n" 19 | #define MQTT_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n" 20 | #define EDP_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 21 | #define CIPMODE "AT+CIPMODE=1\r\n" 22 | #define CIPSEND "AT+CIPSEND\r\n" 23 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 24 | 25 | /** 26 | * @brief 通过USART2发送数据. 27 | * @param buf: 要发送的数据缓冲区地址 28 | * @param len: 要发送的数据缓长度 29 | * @retval 发送的数据长度 30 | **/ 31 | uint32_t USART2_SendData(int8_t * buf, uint32_t len); 32 | 33 | /** 34 | * @brief 初始化ESP8266,并配置路由器和连接协议服务器,比如MODBUS,HTTP,EDP,MQTT服务器的IP地址和端口 35 | * @param server:按AT命令配置的服务器地址和端口字符串 36 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 37 | * @retval NONE 38 | **/ 39 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd); 40 | #endif 41 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Protocol/mqtt/config.h: -------------------------------------------------------------------------------- 1 | #ifndef ONENET_CONFIG_H 2 | #define ONENET_CONFIG_H 3 | 4 | #include 5 | struct iovec { 6 | void *iov_base; 7 | size_t iov_len; 8 | }; 9 | #endif // ONENET_CONFIG_H 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Protocol/mqtt/mqtt_buffer.h: -------------------------------------------------------------------------------- 1 | #ifndef ONENET_MQTT_BUFFER_H 2 | #define ONENET_MQTT_BUFFER_H 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | #include 9 | #include "config.h" 10 | 11 | struct MqttExtent 12 | { 13 | uint32_t len; 14 | char *payload; 15 | 16 | struct MqttExtent *next; 17 | }; 18 | 19 | struct MqttBuffer 20 | { 21 | struct MqttExtent *first_ext; 22 | struct MqttExtent *last_ext; 23 | uint32_t available_bytes; 24 | 25 | char **allocations; 26 | char *first_available; 27 | uint32_t alloc_count; 28 | uint32_t alloc_max_count; 29 | uint32_t buffered_bytes; 30 | }; 31 | 32 | /** 33 | * 初始化缓冲区,缓冲区对象在使用完后,必须用 @see MqttBuffer_Destroy销毁 34 | * @param buf 被初始化的缓冲区对象 35 | */ 36 | void MqttBuffer_Init(struct MqttBuffer *buf); 37 | /** 38 | * 销毁缓冲区对象 39 | * @param buf 被销毁的缓冲区对象 40 | */ 41 | void MqttBuffer_Destroy(struct MqttBuffer *buf); 42 | /** 43 | * 重置(清空)缓冲区对象 44 | * @param buf 被重置(清空)的缓冲区对象 45 | */ 46 | void MqttBuffer_Reset(struct MqttBuffer *buf); 47 | /** 48 | * 分配一块连续的内存 49 | * @param buf 用于分配连续缓冲区的缓冲区对象 50 | * @param size 将要分配的缓冲区大小(字节数) 51 | */ 52 | struct MqttExtent *MqttBuffer_AllocExtent(struct MqttBuffer *buf, uint32_t size); 53 | /** 54 | * 将一个数据块添加到缓冲区的末尾 55 | * @param buf 存储数据块的缓冲区对象 56 | * @param payload 数据块的首地址 57 | * @param size 数据块的大小(字节数) 58 | * @param own 非0时,数据块将被拷贝到缓冲区,为0时,缓冲区仅保存其引用 59 | * @return 成功则返回 MQTTERR_NOERROR 60 | * @remark 当own为0时,必须保证payload在buf未被销毁前一直有效 61 | */ 62 | int MqttBuffer_Append(struct MqttBuffer *buf, char *payload, uint32_t size, int own); 63 | /** 64 | * 将一块连续的内存添加到缓冲区的末尾 65 | * @param buf 存储数据块的缓冲区对象 66 | * @param ext 将要加入缓冲区的数据块 67 | * @remark 若ext不是buf分配的,则需保证ext在buf被销毁前一直有效 68 | */ 69 | void MqttBuffer_AppendExtent(struct MqttBuffer *buf, struct MqttExtent *ext); 70 | 71 | #ifdef __cplusplus 72 | } // extern "C" 73 | #endif 74 | 75 | #endif // ONENET_MQTT_BUFFER_H 76 | 77 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Protocol/mqtt/mqtt_loop.h: -------------------------------------------------------------------------------- 1 | #include "mqtt.h" 2 | #include 3 | #include "utils.h" 4 | #include "stm32f10x.h" 5 | #include "sht20.h" 6 | 7 | #ifdef WIN32 8 | #error Not support Windows now. 9 | #endif // WIN32 10 | 11 | #include 12 | #include 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | #include "usart2.h" 21 | 22 | #define DS_TO_PUBLISH "mqtt_msg" 23 | 24 | #define DS_TO_PUBLISH_T "mqtt_msg_t" 25 | 26 | #define DS_TO_PUBLISH_RH "mqtt_msg_rh" 27 | 28 | #define TOPIC_TO_SUB "39484/nCVNXYCoX68IHG4DgpyNu5aTXfY=/769243/da_test_a" 29 | #define PACK_FALG_UNSUB 11 30 | #define TOPIC_TO_UNSUB "39484/nCVNXYCoX68IHG4DgpyNu5aTXfY=/769243/da_test_a" 31 | 32 | #define TIME_OUT 1 33 | #define EVENT 2 34 | 35 | #define MQTT_DEVICE_PROJ_ID "39484" 36 | #define MQTT_DEVICE_ID "769832" 37 | #define MQTT_DEVICE_API_KEY "nCVNXYCoX68IHG4DgpyNu5aTXfY=" 38 | 39 | void MQTT_Loop(void); 40 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/User/main.c: -------------------------------------------------------------------------------- 1 | /** 2 | ****************************************************************************** 3 | * @file Project/STM32F10x_StdPeriph_Template/main.c 4 | * @author MCD Application Team 5 | * @version V3.5.0 6 | * @date 08-April-2011 7 | * @brief Main program body 8 | ****************************************************************************** 9 | * @attention 10 | * 11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE 13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY 14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING 15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 17 | * 18 | *

© COPYRIGHT 2011 STMicroelectronics

19 | ****************************************************************************** 20 | */ 21 | 22 | /* Includes ------------------------------------------------------------------*/ 23 | //USE_STDPERIPH_DRIVER, STM32F10X_HD, USE_STM3210B_EVAL 24 | 25 | /***头文件调用****/ 26 | #include "stm32f10x.h" 27 | #include "stdio.h" 28 | #include "stdlib.h" 29 | #include "string.h" 30 | #include "usart1.h" 31 | #include "usart2.h" 32 | #include "utils.h" 33 | #include "esp8266.h" 34 | #include "hal_i2c.h" 35 | #include "mqtt_loop.h" 36 | 37 | int main(void) 38 | { 39 | USART1_Init(); 40 | USART2_Init(); 41 | mDelay(1000); 42 | Hal_I2C_Init(); 43 | /*初始化8266,并连接CWJAP配置的AP,与MQTT_CIPSTART配置的服务器建立TCP连接*/ 44 | ESP8266_Init((int8_t *)MQTT_CIPSTART, (int8_t *)CWJAP); 45 | /*进入MQTT协议测试主循环*/ 46 | MQTT_Loop(); 47 | } 48 | 49 | /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/ 50 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/User/stm32f10x_it.h: -------------------------------------------------------------------------------- 1 | /** 2 | ****************************************************************************** 3 | * @file Project/STM32F10x_StdPeriph_Template/stm32f10x_it.h 4 | * @author MCD Application Team 5 | * @version V3.5.0 6 | * @date 08-April-2011 7 | * @brief This file contains the headers of the interrupt handlers. 8 | ****************************************************************************** 9 | * @attention 10 | * 11 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 12 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE 13 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY 14 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING 15 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 16 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 17 | * 18 | *

© COPYRIGHT 2011 STMicroelectronics

19 | ****************************************************************************** 20 | */ 21 | 22 | /* Define to prevent recursive inclusion -------------------------------------*/ 23 | #ifndef __STM32F10x_IT_H 24 | #define __STM32F10x_IT_H 25 | 26 | #ifdef __cplusplus 27 | extern "C" { 28 | #endif 29 | 30 | /* Includes ------------------------------------------------------------------*/ 31 | #include "stm32f10x.h" 32 | 33 | /* Exported types ------------------------------------------------------------*/ 34 | /* Exported constants --------------------------------------------------------*/ 35 | /* Exported macro ------------------------------------------------------------*/ 36 | /* Exported functions ------------------------------------------------------- */ 37 | 38 | void NMI_Handler(void); 39 | void HardFault_Handler(void); 40 | void MemManage_Handler(void); 41 | void BusFault_Handler(void); 42 | void UsageFault_Handler(void); 43 | void SVC_Handler(void); 44 | void DebugMon_Handler(void); 45 | void PendSV_Handler(void); 46 | void SysTick_Handler(void); 47 | 48 | #ifdef __cplusplus 49 | } 50 | #endif 51 | 52 | #endif /* __STM32F10x_IT_H */ 53 | 54 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/ 55 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | /* 9 | * buf按十六进制输出 10 | */ 11 | void hexdump(const uint8_t *buf, uint32_t num); 12 | /* 13 | *16进制数据转字符 14 | */ 15 | uint8_t prvucMBBIN2CHAR(uint8_t ucByte); 16 | 17 | void uDelay(uint32_t i); 18 | 19 | void mDelay(uint32_t i); 20 | /* 21 | * @brief MODBU协议要求的CRC16校验 22 | */ 23 | uint16_t usMBCRC16(uint8_t * pucFrame, uint16_t usLen); 24 | #endif 25 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/cjson.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/cjson.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/cjson.d: -------------------------------------------------------------------------------- 1 | ..\object\cjson.o: ..\Utils\cJSON.c 2 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 3 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\math.h 5 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 6 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\float.h 7 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\limits.h 8 | ..\object\cjson.o: C:\Keil\ARM\ARMCC\bin\..\include\ctype.h 9 | ..\object\cjson.o: ..\Utils\cJSON.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/cjson.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/cjson.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/edpdemo.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/edpdemo.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/edpdemo.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/edpdemo.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/edpkit.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/edpkit.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/edpkit.d: -------------------------------------------------------------------------------- 1 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.c 2 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\stdio.h 4 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 5 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\time.h 6 | ..\object\edpkit.o: ..\Protocol\edp\EdpKit.h 7 | ..\object\edpkit.o: ..\Protocol\edp\Common.h 8 | ..\object\edpkit.o: ..\Utils\cJSON.h 9 | ..\object\edpkit.o: C:\Keil\ARM\ARMCC\bin\..\include\assert.h 10 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/edpkit.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/edpkit.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/gpio.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Devices -I..\Protocol\mqtt -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\gpio.o" --omf_browse "..\object\gpio.crf" --depend "..\object\gpio.d" "..\Hal\gpio.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/gpio.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/gpio.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/gpio.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/gpio.d -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/led.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Devices -I..\Protocol\mqtt -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\led.o" --omf_browse "..\object\led.crf" --depend "..\object\led.d" "..\Hal\led.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/led.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/led.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/led.d: -------------------------------------------------------------------------------- 1 | ..\object\led.o: ..\Hal\led.c 2 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/led.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/led.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/lpb100.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Devices -I..\Protocol\mqtt -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\lpb100.o" --omf_browse "..\object\lpb100.crf" --depend "..\object\lpb100.d" "..\Network\lpb100\lpb100.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/lpb100.d: -------------------------------------------------------------------------------- 1 | ..\object\lpb100.o: ..\Network\lpb100\lpb100.c 2 | ..\object\lpb100.o: ..\Network\lpb100\lpb100.h 3 | ..\object\lpb100.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 4 | ..\object\lpb100.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 5 | ..\object\lpb100.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/modbus.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\Network\esp8266 -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\modbus.o" --omf_browse "..\object\modbus.crf" --depend "..\object\modbus.d" "..\Protocol\modbus\modbus.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/modbus.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/modbus.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/modbus.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/modbus.o -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/ringbuffer.__i: -------------------------------------------------------------------------------- 1 | -c --cpu Cortex-M3 -D__MICROLIB -g -O0 --apcs=interwork -I..\Hal -I..\Utils -I..\Protocol\edp -I..\object -I..\Project -I..\User -I..\Libraries\CMSIS -I..\Libraries\STM32F10x_StdPeriph_Driver\inc -I..\Libraries\STM32F10x_StdPeriph_Driver\src -I..\Libraries\CMSIS\startup\arm -I..\EDP 2 | -I C:\Keil\ARM\RV31\INC 3 | -I C:\Keil\ARM\CMSIS\Include 4 | -I C:\Keil\ARM\Inc\ST\STM32F10x 5 | -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -o "..\object\ringbuffer.o" --omf_browse "..\object\ringbuffer.crf" --depend "..\object\ringbuffer.d" "..\Utils\ringbuffer.c" -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/ringbuffer.crf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/ringbuffer.crf -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/ringbuffer.d: -------------------------------------------------------------------------------- 1 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.c 2 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdlib.h 3 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\string.h 4 | ..\object\ringbuffer.o: C:\Keil\ARM\ARMCC\bin\..\include\stdint.h 5 | ..\object\ringbuffer.o: ..\Utils\ringbuffer.h 6 | -------------------------------------------------------------------------------- /OneNET_Demo_ESP8266_MQTT/object/ringbuffer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_ESP8266_MQTT/object/ringbuffer.o -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Devices/hal_i2c.h: -------------------------------------------------------------------------------- 1 | #ifndef __Hal_I2C_H 2 | #define __Hal_I2C_H 3 | 4 | #include "stm32f10x.h" 5 | 6 | /** 7 | * @brief I2C 使用的GPIO配置 8 | * @param I2Cx:选择I2C接口,I2C1,I2C2 9 | * @retval None 10 | **/ 11 | void GPIO_I2C_Configuration(I2C_TypeDef* I2Cx); 12 | 13 | /** 14 | * @brief I2C控制器配置 15 | * @param I2Cx:选择I2C接口,I2C1,I2C2 16 | * @retval None 17 | **/ 18 | void I2C_Configuration(I2C_TypeDef* I2Cx); 19 | 20 | /** 21 | * @brief 初始化所使用的I2C接口 22 | * @param None 23 | * @retval None 24 | **/ 25 | void Hal_I2C_Init(void); 26 | 27 | /** 28 | * @brief 用户自行实现,用于检测I2C设备是否准备好,否则继续调用I2C可能会陷入死循环或其他错误状态 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Check_I2C_Device_Ready(void); 33 | 34 | /** 35 | * @brief I2C写数据 36 | * @param I2Cx:I2C1,I2C2,选择接口号 37 | * @param i2c_slave_addr:从设备地址 38 | * @param RegAddr:需要写入数据的寄存器地址 39 | * @param data:需要写入的寄存器值 40 | * @retval ret:0,操作成功,-1,失败 41 | **/ 42 | int8_t Hal_I2C_ByteWrite(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t RegAddr,uint8_t *data); 43 | 44 | /** 45 | * @brief I2C读数据 46 | * @param I2Cx:I2C1,I2C2,选择接口号 47 | * @param i2c_slave_addr:从设备地址 48 | * @param RegAddr:需要读取数据的寄存器地址 49 | * @param val:保存I2C读取返回值 50 | * @retval ret:0,操作成功,-1,失败 51 | **/ 52 | int8_t Hal_I2C_ByteRead(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t regAddr,uint8_t *val); 53 | 54 | /** 55 | * @brief I2C一次读多个数据 56 | * @param I2Cx:I2C1,I2C2,选择接口号 57 | * @param buf:存储返回数据的缓冲区 58 | * @param RegAddr:需要读取数据的寄存器地址 59 | * @param i2c_slave_addr:从设备地址 60 | * @param num:读取字节数 61 | * @retval ret:0,操作成功,-1,失败 62 | **/ 63 | int8_t Hal_I2C_MutiRead(I2C_TypeDef* I2Cx,uint8_t* buf, uint8_t i2c_slave_addr, uint8_t regAddr,uint8_t num); 64 | 65 | #define STM32_PHER_I2C2 66 | //#define STM32_PHER_I2C1 67 | 68 | #ifdef STM32_PHER_I2C2 69 | #define STM32_PHER_I2C2_SDA GPIO_Pin_11 70 | #define STM32_PHER_I2C2_SCL GPIO_Pin_10 71 | #endif 72 | 73 | #ifdef STM32_PHER_I2C1 74 | #define STM32_PHER_I2C1_SDA GPIO_Pin_11 75 | #define STM32_PHER_I2C1_SCL GPIO_Pin_10 76 | #endif 77 | #endif /* __I2C_EE_H */ 78 | 79 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 80 | 81 | 82 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Devices/sht20.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "hal_i2c.h" 7 | 8 | /** 9 | * @brief reset SHT20模块. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void SHT20_reset(void); 14 | 15 | /** 16 | * @brief 读取 SHT20模块的用户寄存器 17 | * @param None 18 | * @retval 返回用户寄存器值 19 | **/ 20 | uint8_t SHT20_read_user_reg(void); 21 | 22 | /** 23 | * @brief 写 SHT20模块的用户寄存器,写之前先读 24 | * @param None 25 | * @retval None 26 | **/ 27 | void SHT20_write_user_reg(uint8_t val); 28 | 29 | /** 30 | * @brief 保持模式读SHT20模块温度或湿度 31 | * @param cmd:SHT20_Measurement_RH_HM or SHT20_Measurement_T_HM 32 | * @param pMeasurand:返回结果 33 | * @retval ret:0,成功,<0 失败 34 | **/ 35 | int8_t SHT2x_MeasureHM(uint8_t cmd, uint16_t *pMeasurand); 36 | 37 | /** 38 | * @brief 非保持模式读SHT20模块温度或湿度 39 | * @param cmd:SHT20_Measurement_RH_NHM or SHT20_Measurement_T_NHM 40 | * @param pMeasurand:返回结果 41 | * @param timeout:超时次数 42 | * @retval ret:0,成功,<0 失败 43 | **/ 44 | int8_t SHT2x_MeasurePoll(uint8_t cmd, uint16_t *pMeasurand, int32_t timeout); 45 | 46 | /** 47 | * @brief 读SHT20模块序列号 48 | * @param SerialNumber:8字节数据,用于存储返回的序列号 49 | * @retval ret:0,成功,<0 失败 50 | **/ 51 | int8_t SHT2x_GetSerialNumber(uint8_t SerialNumber[]); 52 | 53 | /*SHT20 设备操作相关宏定义,详见手册*/ 54 | #define SHT20_ADDRESS 0X40 55 | #define SHT20_Measurement_RH_HM 0XE5 56 | #define SHT20_Measurement_T_HM 0XE3 57 | #define SHT20_Measurement_RH_NHM 0XF5 58 | #define SHT20_Measurement_T_NHM 0XF3 59 | #define SHT20_READ_REG 0XE7 60 | #define SHT20_WRITE_REG 0XE6 61 | #define SHT20_SOFT_RESET 0XFE 62 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Hal/gpio.c: -------------------------------------------------------------------------------- 1 | #include "gpio.h" 2 | 3 | 4 | void GpioInit(void) 5 | { 6 | #if 1 7 | GPIO_InitTypeDef GPIO_InitStructure; 8 | //PC0,PC1,PC2,PC3为LED,设置为输出 9 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); 10 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3; 11 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 12 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 13 | GPIO_Init(GPIOC, &GPIO_InitStructure); 14 | # endif 15 | //GPRS -->PWRKEY 16 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 17 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; 18 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 19 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 20 | GPIO_Init(GPIOA, &GPIO_InitStructure); 21 | } 22 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Hal/gpio.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "stdlib.h" 4 | #include "string.h" 5 | #include "usart1.h" 6 | #include "usart2.h" 7 | #include "EdpKit.h" 8 | 9 | #define GPRS_PWR_ON GPIO_SetBits(GPIOA,GPIO_Pin_0) 10 | 11 | extern void GpioInit(void); 12 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | /* 4 | * @brief USART1初始化函数 5 | */ 6 | extern void USART1_Init(void); 7 | /* 8 | * @brief USART1串口发送api 9 | */ 10 | extern void USART1_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 11 | 12 | extern uint8_t usart1_rcv_buf[256]; 13 | extern volatile uint32_t usart1_rcv_len; 14 | extern volatile uint32_t usart1_rcv_flag; 15 | extern volatile uint32_t usart1_rcv_start; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | #include "stdio.h" 4 | #include "stdlib.h" 5 | #include "string.h" 6 | #define MAX_RCV_LEN 128 7 | 8 | /* 9 | * @brief USART2初始化函数 10 | */ 11 | extern void USART2_Init(void); 12 | /* 13 | * @brief USART2串口发送api 14 | */ 15 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 16 | extern uint8_t usart2_rcv_buf[MAX_RCV_LEN]; 17 | 18 | extern volatile uint32_t usart2_rcv_len; 19 | /* 20 | * @brief USART2串口发送AT命令用 21 | */ 22 | void SendCmd(uint8_t* cmd, int8_t* result, int32_t timeOut); 23 | /* 24 | * @brief 返回USART2已接收的数据长度 25 | */ 26 | uint32_t USART2_GetRcvNum(void); 27 | /* 28 | * @brief 返回USART2已接收的数据到buf,长度为rcv_len 29 | */ 30 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | #if 0 3 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len); 4 | 5 | /** 6 | * @brief 初始化ESP8266,并配置路由器和连接服务器 7 | * @param server:按AT命令配置的服务器地址和端口字符串 8 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 9 | * @retval NONE 10 | **/ 11 | 12 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd) 13 | { 14 | SendCmd(AT, "OK", 1000); /*进入AT命令模式*/ 15 | SendCmd(CWMODE, "OK", 1000); 16 | SendCmd(RST, "OK", 2000); /*重置模组式*/ 17 | SendCmd(CIFSR, "OK", 1000); /*查询设备IP,可放在需要的位置*/ 18 | SendCmd(ssid_pwd, "OK", 2000); /*配置要连接的路由器SSID和密码*/ 19 | SendCmd(server, "OK", 2000); /*与服务器建立TCP连接*/ 20 | SendCmd(CIPMODE, "OK", 1000); /*透传模式*/ 21 | memset(usart2_rcv_buf, 0, strlen(usart2_rcv_buf)); /*先清除接收缓冲区*/ 22 | usart2_rcv_len = 0; 23 | USART2_Write(USART2, CIPSEND, strlen(CIPSEND)); /*开始透传*/ 24 | mDelay(500); 25 | if((NULL != strstr(usart2_rcv_buf, "ERROR"))) 26 | { 27 | return; 28 | } 29 | } 30 | 31 | /** 32 | * @brief 通过USART2连接ESP8266发送数据. 33 | * @param buf: 要发送的数据缓冲区地址 34 | * @param len: 要发送的数据缓长度 35 | * @retval 发送的数据长度 36 | **/ 37 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len) 38 | { 39 | memset(usart2_rcv_buf, 0, strlen(usart2_rcv_buf)); 40 | usart2_rcv_len = 0; 41 | USART2_Write(USART2, buf, len); 42 | mDelay(100); 43 | } 44 | 45 | /** 46 | * @brief 通过USART2发送数据. 47 | * @param buf: 要发送的数据缓冲区地址 48 | * @param len: 要发送的数据缓长度 49 | * @retval 发送的数据长度 50 | **/ 51 | uint32_t USART2_SendData(int8_t * buf, uint32_t len) 52 | { 53 | ESP8266_SendData(buf, len); 54 | return len; 55 | } 56 | #endif 57 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef __ESP8266_HEADER__ 2 | #define __ESP8266_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "utils.h" 11 | 12 | #define AT "AT\r\n" 13 | #define CWMODE "AT+CWMODE=3\r\n" 14 | #define RST "AT+RST\r\n" 15 | #define CIFSR "AT+CIFSR\r\n" 16 | #define CWJAP "AT+CWJAP=\"onenet\",\"\"\r\n" 17 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 18 | #define MODBUS_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.42\",987\r\n" 19 | #define MQTT_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n" 20 | #define EDP_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 21 | #define CIPMODE "AT+CIPMODE=1\r\n" 22 | #define CIPSEND "AT+CIPSEND\r\n" 23 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 24 | 25 | /** 26 | * @brief 通过USART2发送数据. 27 | * @param buf: 要发送的数据缓冲区地址 28 | * @param len: 要发送的数据缓长度 29 | * @retval 发送的数据长度 30 | **/ 31 | uint32_t USART2_SendData(int8_t * buf, uint32_t len); 32 | 33 | /** 34 | * @brief 初始化ESP8266,并配置路由器和连接协议服务器,比如MODBUS,HTTP,EDP,MQTT服务器的IP地址和端口 35 | * @param server:按AT命令配置的服务器地址和端口字符串 36 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 37 | * @retval NONE 38 | **/ 39 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd); 40 | #endif 41 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Network/m6311/M6311.c: -------------------------------------------------------------------------------- 1 | #include "m6311.h" 2 | #include "usart2.h" 3 | /** 4 | * @brief 初始化M6311,并配置路由器和连接服务器 5 | * @param server:按AT命令配置的服务器地址和端口字符串 6 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 7 | * @retval NONE 8 | **/ 9 | #if 1 10 | void M6311_Init(void) 11 | { 12 | mDelay(2000); 13 | mDelay(2000); 14 | SendCmd("AT+SSYS?\r\n","OK",300); 15 | mDelay(500); 16 | SendCmd("AT+SIM1\r\n","OK",300); 17 | mDelay(500); 18 | SendCmd("AT+CPIN?\r\n", "+CPIN: READY",1000); //确保SIM卡PIN码解锁,返回READY,表示解锁成功 19 | mDelay(1500); 20 | SendCmd("AT+CREG?\r\n","0,5",1000); //确认网络搜索成功,OK 21 | mDelay(1000); 22 | SendCmd("AT+CSQ\r\n","OK", 1000);//查看信号质量 23 | mDelay(1000); 24 | //SendCmd(CGDCONT,"OK", 1000);// 25 | //Delay(1000); 26 | SendCmd("AT+CGACT=1,1\r\n","OK", 1000);//激活 27 | mDelay(1000); 28 | SendCmd("AT+CGATT=1\r\n","OK", 1000); // 29 | mDelay(1000); 30 | SendCmd("AT+CMMUX=0\r\n","OK", 1000); //single way 31 | mDelay(1000); 32 | SendCmd("AT+CMMODE=1\r\n","OK",1000); //配置透传 33 | mDelay(1000); 34 | SendCmd("AT+CMTCFG=1,1024,1\r\n","OK",1000); //配置透传,最大长度2000字节,间隔是100ms。配置成hex模式 35 | mDelay(1500); 36 | //SendCmd("AT+IPSTART=\"TCP\",\"183.230.40.33\",80\r\n","CONNECT",1000); //连接EDP服务器 37 | SendCmd("AT+IPSTART=\"TCP\",\"183.230.40.39\",876\r\n","CONNECT",3000);//AT+IPSTART="TCP","183.230.40.39",876 38 | mDelay(1000); 39 | } 40 | 41 | /** 42 | * @brief 通过USART2连接MT6311发送数据. 43 | * @param buf: 要发送的数据缓冲区地址 44 | * @param len: 要发送的数据缓长度 45 | * @retval 发送的数据长度 46 | **/ 47 | int32_t M6311_SendData(uint8_t * buf,uint32_t len) 48 | { 49 | memset(usart2_rcv_buf,0,strlen((const char *)usart2_rcv_buf)); 50 | usart2_rcv_len=0; 51 | USART2_Write(USART2,buf,len); 52 | mDelay(20); 53 | return len; 54 | } 55 | 56 | /** 57 | * @brief 通过USART2发送数据. 58 | * @param buf: 要发送的数据缓冲区地址 59 | * @param len: 要发送的数据缓长度 60 | * @retval 发送的数据长度 61 | **/ 62 | int32_t USART2_SendData(uint8_t * buf,uint32_t len) 63 | { 64 | M6311_SendData(buf,len); 65 | return len; 66 | } 67 | #endif 68 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Network/m6311/m6311.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "stdlib.h" 4 | #include "string.h" 5 | #include "usart1.h" 6 | #include "usart2.h" 7 | #include "EdpKit.h" 8 | #include "utils.h" 9 | 10 | #define AT "AT\r\n" 11 | #define CPIN "AT+CPIN?\r\n" 12 | #define MODE "AT+CIPMODE=0\r\n" 13 | #define CGCLASS "AT+CGCLASS=\"B\"\r\n" 14 | #define CGDCONT "AT+CGDCONT?\r\n" 15 | #define CGATT "AT+CGATT=1\r\n" 16 | #define CIPCSGP "AT+CIPCSGP=1,\"CMNET\"\r\n" 17 | #define CLPORT "AT+CLPORT=\"TCP\",\"2000\"\r\n" 18 | #define CGACT "AT+CGACT=1,1\r\n" 19 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.33\",\"80\"\r\n" 20 | #define CIPSEND "AT+CIPSEND\r\n" 21 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 22 | #define CIPSHUT "AT+CIPSHUT\r\n" 23 | 24 | /** 25 | * @brief 初始化M6311,并配置路由器和连接服务器 26 | * @param server:按AT命令配置的服务器地址和端口字符串 27 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 28 | * @retval NONE 29 | **/ 30 | 31 | void M6311_Init(void); 32 | /** 33 | * @brief 通过USART2发送数据. 34 | * @param buf: 要发送的数据缓冲区地址 35 | * @param len: 要发送的数据缓长度 36 | * @retval 发送的数据长度 37 | **/ 38 | int32_t USART2_SendData(uint8_t * buf,uint32_t len); 39 | 40 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Protocol/edp/Common.h: -------------------------------------------------------------------------------- 1 | #ifndef __COMMON_H__ 2 | #define __COMMON_H__ 3 | 4 | /*---------------------------------------------------------------------------*/ 5 | /* Type Definition Macros */ 6 | /*---------------------------------------------------------------------------*/ 7 | typedef unsigned char uint8; 8 | typedef char int8; 9 | typedef unsigned short uint16; 10 | typedef short int16; 11 | typedef unsigned int uint32; 12 | typedef int int32; 13 | 14 | typedef int socklen_t; 15 | 16 | typedef long long int int64; 17 | typedef unsigned long long int uint64; 18 | 19 | #endif /* __COMMON_H__ */ 20 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Protocol/edp/EdpDemo.h: -------------------------------------------------------------------------------- 1 | #ifndef __EDPDEMO_KIT_H__ 2 | #define __EDPDEMO_KIT_H__ 3 | 4 | #include 5 | #include 6 | #if defined(_LINUX) 7 | //#include 8 | //#include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #endif 15 | #include 16 | 17 | #include "EdpKit.h" 18 | #include "stm32f10x.h" 19 | #include "usart2.h" 20 | #include "utils.h" 21 | #include "sht20.h" 22 | 23 | /*----------------------------错误码-----------------------------------------*/ 24 | #define ERR_CREATE_SOCKET -1 25 | #define ERR_HOSTBYNAME -2 26 | #define ERR_CONNECT -3 27 | #define ERR_SEND -4 28 | #define ERR_TIMEOUT -5 29 | #define ERR_RECV -6 30 | 31 | /** 32 | * @brief EDP登录连接,采用协议中第一种方式登录连接,鉴权信息为deviceid和api key 33 | * @param api_key: 该设备的api key或项目master key 34 | * @param devid: 登录的EDP设备ID 35 | * @retval 发送的数据长度 36 | **/ 37 | void Connect_RequestType1(int8_t *devid, int8_t *api_key); 38 | 39 | /** 40 | * @brief EDP数据包发送 41 | * @param buffer: 要发送的数据缓冲区地址 42 | * @param len: 要发送的数据缓长度 43 | * @param sockfd:兼容linux socket api: STM32下无意义 44 | * @retval 发送的数据长度 45 | **/ 46 | int32_t DoSend(int32_t sockfd, const uint8_t *buffer, uint32_t len); 47 | 48 | /* 49 | * @brief EDP协议向自己透传数据,用于测试,将src_dev替换成目标DEVICE ID即可 50 | */ 51 | void Push_DataToMyself(void); 52 | /* 53 | * @brief EDP协议向Onenet上传温度信息,数据点格式TYPE=3 54 | */ 55 | void Save_TemperatueToOneNet(void); 56 | /* 57 | * @brief EDP协议向Onenet上传湿度信息,数据点格式TYPE=3 58 | */ 59 | void Save_HumToOneNet(void); 60 | 61 | /* 62 | * @brief EDP协议向Onenet上传温湿度信息,使用简单字符串格式,数据点格式TYPE=5,FEILD type 2. 63 | */ 64 | void Save_TempHumToOneNet(void); 65 | /* 66 | * @brief EDP协议测试主循环 67 | */ 68 | void EDP_Loop(void); 69 | /* 70 | * @brief 串口接收处理线程 71 | */ 72 | void Recv_Thread_Func(void); 73 | /* 74 | * @brief 发送PING包维持心跳 75 | */ 76 | void Ping_Server(void); 77 | #endif 78 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/User/stm32f10x_it.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/User/stm32f10x_it.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | /* 9 | * buf按十六进制输出 10 | */ 11 | void hexdump(const uint8_t *buf, uint32_t num); 12 | /* 13 | *16进制数据转字符 14 | */ 15 | uint8_t prvucMBBIN2CHAR(uint8_t ucByte); 16 | 17 | void uDelay(uint32_t i); 18 | 19 | void mDelay(uint32_t i); 20 | /* 21 | * @brief MODBU协议要求的CRC16校验 22 | */ 23 | uint16_t usMBCRC16(uint8_t * pucFrame, uint16_t usLen); 24 | #endif 25 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20 - copy/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20 - copy/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Devices/hal_i2c.h: -------------------------------------------------------------------------------- 1 | #ifndef __Hal_I2C_H 2 | #define __Hal_I2C_H 3 | 4 | #include "stm32f10x.h" 5 | 6 | /** 7 | * @brief I2C 使用的GPIO配置 8 | * @param I2Cx:选择I2C接口,I2C1,I2C2 9 | * @retval None 10 | **/ 11 | void GPIO_I2C_Configuration(I2C_TypeDef* I2Cx); 12 | 13 | /** 14 | * @brief I2C控制器配置 15 | * @param I2Cx:选择I2C接口,I2C1,I2C2 16 | * @retval None 17 | **/ 18 | void I2C_Configuration(I2C_TypeDef* I2Cx); 19 | 20 | /** 21 | * @brief 初始化所使用的I2C接口 22 | * @param None 23 | * @retval None 24 | **/ 25 | void Hal_I2C_Init(void); 26 | 27 | /** 28 | * @brief 用户自行实现,用于检测I2C设备是否准备好,否则继续调用I2C可能会陷入死循环或其他错误状态 29 | * @param None 30 | * @retval None 31 | **/ 32 | void Check_I2C_Device_Ready(void); 33 | 34 | /** 35 | * @brief I2C写数据 36 | * @param I2Cx:I2C1,I2C2,选择接口号 37 | * @param i2c_slave_addr:从设备地址 38 | * @param RegAddr:需要写入数据的寄存器地址 39 | * @param data:需要写入的寄存器值 40 | * @retval ret:0,操作成功,-1,失败 41 | **/ 42 | int8_t Hal_I2C_ByteWrite(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t RegAddr,uint8_t *data); 43 | 44 | /** 45 | * @brief I2C读数据 46 | * @param I2Cx:I2C1,I2C2,选择接口号 47 | * @param i2c_slave_addr:从设备地址 48 | * @param RegAddr:需要读取数据的寄存器地址 49 | * @param val:保存I2C读取返回值 50 | * @retval ret:0,操作成功,-1,失败 51 | **/ 52 | int8_t Hal_I2C_ByteRead(I2C_TypeDef* I2Cx,uint16_t i2c_slave_addr, uint8_t regAddr,uint8_t *val); 53 | 54 | /** 55 | * @brief I2C一次读多个数据 56 | * @param I2Cx:I2C1,I2C2,选择接口号 57 | * @param buf:存储返回数据的缓冲区 58 | * @param RegAddr:需要读取数据的寄存器地址 59 | * @param i2c_slave_addr:从设备地址 60 | * @param num:读取字节数 61 | * @retval ret:0,操作成功,-1,失败 62 | **/ 63 | int8_t Hal_I2C_MutiRead(I2C_TypeDef* I2Cx,uint8_t* buf, uint8_t i2c_slave_addr, uint8_t regAddr,uint8_t num); 64 | 65 | #define STM32_PHER_I2C2 66 | //#define STM32_PHER_I2C1 67 | 68 | #ifdef STM32_PHER_I2C2 69 | #define STM32_PHER_I2C2_SDA GPIO_Pin_11 70 | #define STM32_PHER_I2C2_SCL GPIO_Pin_10 71 | #endif 72 | 73 | #ifdef STM32_PHER_I2C1 74 | #define STM32_PHER_I2C1_SDA GPIO_Pin_11 75 | #define STM32_PHER_I2C1_SCL GPIO_Pin_10 76 | #endif 77 | #endif /* __I2C_EE_H */ 78 | 79 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 80 | 81 | 82 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Devices/sht20.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "hal_i2c.h" 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "hal_i2c.h" 7 | 8 | /** 9 | * @brief reset SHT20模块. 10 | * @param None 11 | * @retval None 12 | **/ 13 | void SHT20_reset(void); 14 | 15 | /** 16 | * @brief 读取 SHT20模块的用户寄存器 17 | * @param None 18 | * @retval 返回用户寄存器值 19 | **/ 20 | uint8_t SHT20_read_user_reg(void); 21 | 22 | /** 23 | * @brief 写 SHT20模块的用户寄存器,写之前先读 24 | * @param None 25 | * @retval None 26 | **/ 27 | void SHT20_write_user_reg(uint8_t val); 28 | 29 | /** 30 | * @brief 保持模式读SHT20模块温度或湿度 31 | * @param cmd:SHT20_Measurement_RH_HM or SHT20_Measurement_T_HM 32 | * @param pMeasurand:返回结果 33 | * @retval ret:0,成功,<0 失败 34 | **/ 35 | int8_t SHT2x_MeasureHM(uint8_t cmd, uint16_t *pMeasurand); 36 | 37 | /** 38 | * @brief 非保持模式读SHT20模块温度或湿度 39 | * @param cmd:SHT20_Measurement_RH_NHM or SHT20_Measurement_T_NHM 40 | * @param pMeasurand:返回结果 41 | * @param timeout:超时次数 42 | * @retval ret:0,成功,<0 失败 43 | **/ 44 | int8_t SHT2x_MeasurePoll(uint8_t cmd, uint16_t *pMeasurand, int32_t timeout); 45 | 46 | /** 47 | * @brief 读SHT20模块序列号 48 | * @param SerialNumber:8字节数据,用于存储返回的序列号 49 | * @retval ret:0,成功,<0 失败 50 | **/ 51 | int8_t SHT2x_GetSerialNumber(uint8_t SerialNumber[]); 52 | 53 | /*SHT20 设备操作相关宏定义,详见手册*/ 54 | #define SHT20_ADDRESS 0X40 55 | #define SHT20_Measurement_RH_HM 0XE5 56 | #define SHT20_Measurement_T_HM 0XE3 57 | #define SHT20_Measurement_RH_NHM 0XF5 58 | #define SHT20_Measurement_T_NHM 0XF3 59 | #define SHT20_READ_REG 0XE7 60 | #define SHT20_WRITE_REG 0XE6 61 | #define SHT20_SOFT_RESET 0XFE 62 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Hal/gpio.c: -------------------------------------------------------------------------------- 1 | #include "gpio.h" 2 | 3 | 4 | void GpioInit(void) 5 | { 6 | #if 1 7 | GPIO_InitTypeDef GPIO_InitStructure; 8 | //PC0,PC1,PC2,PC3为LED,设置为输出 9 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); 10 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3; 11 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 12 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 13 | GPIO_Init(GPIOC, &GPIO_InitStructure); 14 | # endif 15 | //GPRS -->PWRKEY 16 | RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 17 | GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; 18 | GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 19 | GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 20 | GPIO_Init(GPIOA, &GPIO_InitStructure); 21 | } 22 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Hal/gpio.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "stdlib.h" 4 | #include "string.h" 5 | #include "usart1.h" 6 | #include "usart2.h" 7 | #include "EdpKit.h" 8 | 9 | #define GPRS_PWR_ON GPIO_SetBits(GPIOA,GPIO_Pin_0) 10 | 11 | extern void GpioInit(void); 12 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Hal/usart1.h: -------------------------------------------------------------------------------- 1 | #ifndef USART1_H_H 2 | #define USART1_H_H 3 | /* 4 | * @brief USART1初始化函数 5 | */ 6 | extern void USART1_Init(void); 7 | /* 8 | * @brief USART1串口发送api 9 | */ 10 | extern void USART1_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 11 | 12 | extern uint8_t usart1_rcv_buf[256]; 13 | extern volatile uint32_t usart1_rcv_len; 14 | extern volatile uint32_t usart1_rcv_flag; 15 | extern volatile uint32_t usart1_rcv_start; 16 | 17 | #endif 18 | 19 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Hal/usart2.h: -------------------------------------------------------------------------------- 1 | #ifndef USART2_H_H 2 | #define USART2_H_H 3 | #include "stdio.h" 4 | #include "stdlib.h" 5 | #include "string.h" 6 | #define MAX_RCV_LEN 128 7 | 8 | /* 9 | * @brief USART2初始化函数 10 | */ 11 | extern void USART2_Init(void); 12 | /* 13 | * @brief USART2串口发送api 14 | */ 15 | extern void USART2_Write(USART_TypeDef* USARTx, uint8_t *Data, uint32_t len); 16 | extern uint8_t usart2_rcv_buf[MAX_RCV_LEN]; 17 | 18 | extern volatile uint32_t usart2_rcv_len; 19 | /* 20 | * @brief USART2串口发送AT命令用 21 | */ 22 | void SendCmd(uint8_t* cmd, int8_t* result, int32_t timeOut); 23 | /* 24 | * @brief 返回USART2已接收的数据长度 25 | */ 26 | uint32_t USART2_GetRcvNum(void); 27 | /* 28 | * @brief 返回USART2已接收的数据到buf,长度为rcv_len 29 | */ 30 | void USART2_GetRcvData(uint8_t *buf, uint32_t rcv_len); 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Libraries/CMSIS/stm32f10x.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/Libraries/CMSIS/stm32f10x.h -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Network/esp8266/esp8266.c: -------------------------------------------------------------------------------- 1 | #include "esp8266.h" 2 | #if 0 3 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len); 4 | 5 | /** 6 | * @brief 初始化ESP8266,并配置路由器和连接服务器 7 | * @param server:按AT命令配置的服务器地址和端口字符串 8 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 9 | * @retval NONE 10 | **/ 11 | 12 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd) 13 | { 14 | SendCmd(AT, "OK", 1000); /*进入AT命令模式*/ 15 | SendCmd(CWMODE, "OK", 1000); 16 | SendCmd(RST, "OK", 2000); /*重置模组式*/ 17 | SendCmd(CIFSR, "OK", 1000); /*查询设备IP,可放在需要的位置*/ 18 | SendCmd(ssid_pwd, "OK", 2000); /*配置要连接的路由器SSID和密码*/ 19 | SendCmd(server, "OK", 2000); /*与服务器建立TCP连接*/ 20 | SendCmd(CIPMODE, "OK", 1000); /*透传模式*/ 21 | memset(usart2_rcv_buf, 0, strlen(usart2_rcv_buf)); /*先清除接收缓冲区*/ 22 | usart2_rcv_len = 0; 23 | USART2_Write(USART2, CIPSEND, strlen(CIPSEND)); /*开始透传*/ 24 | mDelay(500); 25 | if((NULL != strstr(usart2_rcv_buf, "ERROR"))) 26 | { 27 | return; 28 | } 29 | } 30 | 31 | /** 32 | * @brief 通过USART2连接ESP8266发送数据. 33 | * @param buf: 要发送的数据缓冲区地址 34 | * @param len: 要发送的数据缓长度 35 | * @retval 发送的数据长度 36 | **/ 37 | uint32_t ESP8266_SendData(int8_t * buf, uint32_t len) 38 | { 39 | memset(usart2_rcv_buf, 0, strlen(usart2_rcv_buf)); 40 | usart2_rcv_len = 0; 41 | USART2_Write(USART2, buf, len); 42 | mDelay(100); 43 | } 44 | 45 | /** 46 | * @brief 通过USART2发送数据. 47 | * @param buf: 要发送的数据缓冲区地址 48 | * @param len: 要发送的数据缓长度 49 | * @retval 发送的数据长度 50 | **/ 51 | uint32_t USART2_SendData(int8_t * buf, uint32_t len) 52 | { 53 | ESP8266_SendData(buf, len); 54 | return len; 55 | } 56 | #endif 57 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Network/esp8266/esp8266.h: -------------------------------------------------------------------------------- 1 | #ifndef __ESP8266_HEADER__ 2 | #define __ESP8266_HEADER__ 3 | 4 | #include "stm32f10x.h" 5 | #include "stdio.h" 6 | #include "stdlib.h" 7 | #include "string.h" 8 | #include "usart1.h" 9 | #include "usart2.h" 10 | #include "utils.h" 11 | 12 | #define AT "AT\r\n" 13 | #define CWMODE "AT+CWMODE=3\r\n" 14 | #define RST "AT+RST\r\n" 15 | #define CIFSR "AT+CIFSR\r\n" 16 | #define CWJAP "AT+CWJAP=\"onenet\",\"\"\r\n" 17 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 18 | #define MODBUS_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.42\",987\r\n" 19 | #define MQTT_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n" 20 | #define EDP_CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.39\",876\r\n" 21 | #define CIPMODE "AT+CIPMODE=1\r\n" 22 | #define CIPSEND "AT+CIPSEND\r\n" 23 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 24 | 25 | /** 26 | * @brief 通过USART2发送数据. 27 | * @param buf: 要发送的数据缓冲区地址 28 | * @param len: 要发送的数据缓长度 29 | * @retval 发送的数据长度 30 | **/ 31 | uint32_t USART2_SendData(int8_t * buf, uint32_t len); 32 | 33 | /** 34 | * @brief 初始化ESP8266,并配置路由器和连接协议服务器,比如MODBUS,HTTP,EDP,MQTT服务器的IP地址和端口 35 | * @param server:按AT命令配置的服务器地址和端口字符串 36 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 37 | * @retval NONE 38 | **/ 39 | void ESP8266_Init(int8_t * server, int8_t * ssid_pwd); 40 | #endif 41 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Network/m6311/M6311.c: -------------------------------------------------------------------------------- 1 | #include "m6311.h" 2 | #include "usart2.h" 3 | /** 4 | * @brief 初始化M6311,并配置路由器和连接服务器 5 | * @param server:按AT命令配置的服务器地址和端口字符串 6 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 7 | * @retval NONE 8 | **/ 9 | #if 1 10 | void M6311_Init(void) 11 | { 12 | mDelay(2000); 13 | mDelay(2000); 14 | SendCmd("AT+SSYS?\r\n","OK",300); 15 | mDelay(500); 16 | SendCmd("AT+SIM1\r\n","OK",300); 17 | mDelay(500); 18 | SendCmd("AT+CPIN?\r\n", "+CPIN: READY",1000); //确保SIM卡PIN码解锁,返回READY,表示解锁成功 19 | mDelay(1500); 20 | SendCmd("AT+CREG?\r\n","0,5",1000); //确认网络搜索成功,OK 21 | mDelay(1000); 22 | SendCmd("AT+CSQ\r\n","OK", 1000);//查看信号质量 23 | mDelay(1000); 24 | //SendCmd(CGDCONT,"OK", 1000);// 25 | //Delay(1000); 26 | SendCmd("AT+CGACT=1,1\r\n","OK", 1000);//激活 27 | mDelay(1000); 28 | SendCmd("AT+CGATT=1\r\n","OK", 1000); // 29 | mDelay(1000); 30 | SendCmd("AT+CMMUX=0\r\n","OK", 1000); //single way 31 | mDelay(1000); 32 | SendCmd("AT+CMMODE=1\r\n","OK",1000); //配置透传 33 | mDelay(1000); 34 | SendCmd("AT+CMTCFG=1,1024,1\r\n","OK",1000); //配置透传,最大长度2000字节,间隔是100ms。配置成hex模式 35 | mDelay(1500); 36 | //SendCmd("AT+IPSTART=\"TCP\",\"183.230.40.33\",80\r\n","CONNECT",1000); //连接EDP服务器 37 | SendCmd("AT+IPSTART=\"TCP\",\"183.230.40.39\",876\r\n","CONNECT",3000);//AT+IPSTART="TCP","183.230.40.39",876 38 | mDelay(1000); 39 | } 40 | 41 | /** 42 | * @brief 通过USART2连接MT6311发送数据. 43 | * @param buf: 要发送的数据缓冲区地址 44 | * @param len: 要发送的数据缓长度 45 | * @retval 发送的数据长度 46 | **/ 47 | int32_t M6311_SendData(uint8_t * buf,uint32_t len) 48 | { 49 | memset(usart2_rcv_buf,0,strlen((const char *)usart2_rcv_buf)); 50 | usart2_rcv_len=0; 51 | USART2_Write(USART2,buf,len); 52 | mDelay(20); 53 | return len; 54 | } 55 | 56 | /** 57 | * @brief 通过USART2发送数据. 58 | * @param buf: 要发送的数据缓冲区地址 59 | * @param len: 要发送的数据缓长度 60 | * @retval 发送的数据长度 61 | **/ 62 | int32_t USART2_SendData(uint8_t * buf,uint32_t len) 63 | { 64 | M6311_SendData(buf,len); 65 | return len; 66 | } 67 | #endif 68 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Network/m6311/m6311.h: -------------------------------------------------------------------------------- 1 | #include "stm32f10x.h" 2 | #include "stdio.h" 3 | #include "stdlib.h" 4 | #include "string.h" 5 | #include "usart1.h" 6 | #include "usart2.h" 7 | #include "EdpKit.h" 8 | #include "utils.h" 9 | 10 | #define AT "AT\r\n" 11 | #define CPIN "AT+CPIN?\r\n" 12 | #define MODE "AT+CIPMODE=0\r\n" 13 | #define CGCLASS "AT+CGCLASS=\"B\"\r\n" 14 | #define CGDCONT "AT+CGDCONT?\r\n" 15 | #define CGATT "AT+CGATT=1\r\n" 16 | #define CIPCSGP "AT+CIPCSGP=1,\"CMNET\"\r\n" 17 | #define CLPORT "AT+CLPORT=\"TCP\",\"2000\"\r\n" 18 | #define CGACT "AT+CGACT=1,1\r\n" 19 | #define CIPSTART "AT+CIPSTART=\"TCP\",\"183.230.40.33\",\"80\"\r\n" 20 | #define CIPSEND "AT+CIPSEND\r\n" 21 | #define CIPSTATUS "AT+CIPSTATUS\r\n" 22 | #define CIPSHUT "AT+CIPSHUT\r\n" 23 | 24 | /** 25 | * @brief 初始化M6311,并配置路由器和连接服务器 26 | * @param server:按AT命令配置的服务器地址和端口字符串 27 | * @param ssid_pwd: 按AT命令配置的路由器SSID和密码 28 | * @retval NONE 29 | **/ 30 | 31 | void M6311_Init(void); 32 | /** 33 | * @brief 通过USART2发送数据. 34 | * @param buf: 要发送的数据缓冲区地址 35 | * @param len: 要发送的数据缓长度 36 | * @retval 发送的数据长度 37 | **/ 38 | int32_t USART2_SendData(uint8_t * buf,uint32_t len); 39 | 40 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Project/JLinkSettings.ini: -------------------------------------------------------------------------------- 1 | [BREAKPOINTS] 2 | ShowInfoWin = 1 3 | EnableFlashBP = 2 4 | BPDuringExecution = 0 5 | [CFI] 6 | CFISize = 0x00 7 | CFIAddr = 0x00 8 | [CPU] 9 | OverrideMemMap = 0 10 | AllowSimulation = 1 11 | ScriptFile="" 12 | [FLASH] 13 | MinNumBytesFlashDL = 0 14 | SkipProgOnCRCMatch = 1 15 | VerifyDownload = 1 16 | AllowCaching = 1 17 | EnableFlashDL = 2 18 | Override = 0 19 | Device="UNSPECIFIED" 20 | [GENERAL] 21 | WorkRAMSize = 0x00 22 | WorkRAMAddr = 0x00 23 | [SWO] 24 | SWOLogFile="" 25 | [MEM] 26 | RdOverrideOrMask = 0x00 27 | RdOverrideAndMask = 0xFFFFFFFF 28 | RdOverrideAddr = 0xFFFFFFFF 29 | WrOverrideOrMask = 0x00 30 | WrOverrideAndMask = 0xFFFFFFFF 31 | WrOverrideAddr = 0xFFFFFFFF 32 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Project/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/Project/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Protocol/edp/Common.h: -------------------------------------------------------------------------------- 1 | #ifndef __COMMON_H__ 2 | #define __COMMON_H__ 3 | 4 | /*---------------------------------------------------------------------------*/ 5 | /* Type Definition Macros */ 6 | /*---------------------------------------------------------------------------*/ 7 | typedef unsigned char uint8; 8 | typedef char int8; 9 | typedef unsigned short uint16; 10 | typedef short int16; 11 | typedef unsigned int uint32; 12 | typedef int int32; 13 | 14 | typedef int socklen_t; 15 | 16 | typedef long long int int64; 17 | typedef unsigned long long int uint64; 18 | 19 | #endif /* __COMMON_H__ */ 20 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Protocol/edp/EdpDemo.h: -------------------------------------------------------------------------------- 1 | #ifndef __EDPDEMO_KIT_H__ 2 | #define __EDPDEMO_KIT_H__ 3 | 4 | #include 5 | #include 6 | #if defined(_LINUX) 7 | //#include 8 | //#include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #endif 15 | #include 16 | 17 | #include "EdpKit.h" 18 | #include "stm32f10x.h" 19 | #include "usart2.h" 20 | #include "utils.h" 21 | #include "sht20.h" 22 | 23 | /*----------------------------错误码-----------------------------------------*/ 24 | #define ERR_CREATE_SOCKET -1 25 | #define ERR_HOSTBYNAME -2 26 | #define ERR_CONNECT -3 27 | #define ERR_SEND -4 28 | #define ERR_TIMEOUT -5 29 | #define ERR_RECV -6 30 | 31 | /** 32 | * @brief EDP登录连接,采用协议中第一种方式登录连接,鉴权信息为deviceid和api key 33 | * @param api_key: 该设备的api key或项目master key 34 | * @param devid: 登录的EDP设备ID 35 | * @retval 发送的数据长度 36 | **/ 37 | void Connect_RequestType1(int8_t *devid, int8_t *api_key); 38 | 39 | /** 40 | * @brief EDP数据包发送 41 | * @param buffer: 要发送的数据缓冲区地址 42 | * @param len: 要发送的数据缓长度 43 | * @param sockfd:兼容linux socket api: STM32下无意义 44 | * @retval 发送的数据长度 45 | **/ 46 | int32_t DoSend(int32_t sockfd, const uint8_t *buffer, uint32_t len); 47 | 48 | /* 49 | * @brief EDP协议向自己透传数据,用于测试,将src_dev替换成目标DEVICE ID即可 50 | */ 51 | void Push_DataToMyself(void); 52 | /* 53 | * @brief EDP协议向Onenet上传温度信息,数据点格式TYPE=3 54 | */ 55 | void Save_TemperatueToOneNet(void); 56 | /* 57 | * @brief EDP协议向Onenet上传湿度信息,数据点格式TYPE=3 58 | */ 59 | void Save_HumToOneNet(void); 60 | 61 | /* 62 | * @brief EDP协议向Onenet上传温湿度信息,使用简单字符串格式,数据点格式TYPE=5,FEILD type 2. 63 | */ 64 | void Save_TempHumToOneNet(void); 65 | /* 66 | * @brief EDP协议测试主循环 67 | */ 68 | void EDP_Loop(void); 69 | /* 70 | * @brief 串口接收处理线程 71 | */ 72 | void Recv_Thread_Func(void); 73 | /* 74 | * @brief 发送PING包维持心跳 75 | */ 76 | void Ping_Server(void); 77 | #endif 78 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/User/stm32f10x_it.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/User/stm32f10x_it.c -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/Utils/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef __UTILS_HEADER__ 2 | #define __UTILS_HEADER__ 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | /* 9 | * buf按十六进制输出 10 | */ 11 | void hexdump(const uint8_t *buf, uint32_t num); 12 | /* 13 | *16进制数据转字符 14 | */ 15 | uint8_t prvucMBBIN2CHAR(uint8_t ucByte); 16 | 17 | void uDelay(uint32_t i); 18 | 19 | void mDelay(uint32_t i); 20 | /* 21 | * @brief MODBU协议要求的CRC16校验 22 | */ 23 | uint16_t usMBCRC16(uint8_t * pucFrame, uint16_t usLen); 24 | #endif 25 | -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/object/onenetdemo.plg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_M6311_EDP_SHT20/object/onenetdemo.plg -------------------------------------------------------------------------------- /OneNET_Demo_M6311_EDP_SHT20/object/onenetdemo.sct: -------------------------------------------------------------------------------- 1 | ; ************************************************************* 2 | ; *** Scatter-Loading Description File generated by uVision *** 3 | ; ************************************************************* 4 | 5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region 6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address 7 | *.o (RESET, +First) 8 | *(InRoot$$Sections) 9 | .ANY (+RO) 10 | } 11 | RW_IRAM1 0x20000000 0x00010000 { ; RW data 12 | .ANY (+RW +ZI) 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneNET_Demo_User_Guide.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/OneNET_Demo_User_Guide.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # OneNET_demo_code_kylin 2 | 该源代码专门针对OneNET配套开发板--麒麟开发板而设计开发,旨在让OneNET用户更好的熟悉OneNET,以便更快接入OneNET,该源代码包括9个实验例程。实验例程如下: 3 | 4 | 1.ESP8266+EDP LED状态采集及控制实验 5 | 6 | 2.ESP8266+EDP上传二进制文件 7 | 8 | 3.ESP8266+EDP多路传感器采集实验 9 | 10 | 4.ESP8266+EDP完成数据转发实验 11 | 12 | 5.ESP8266+HTTP上传温湿度数据实验 13 | 14 | 6.GPRS+EDP采集温湿度上传实验 15 | 16 | 7.ESP8266+Modbus协议接入和数据上传实验 17 | 18 | 8.ESP8266+MQTT协议发布订阅实验 19 | 20 | 9.EMW3081+EDP发送二进制文件 21 | 22 | 23 | 以上实验例程涵盖了通过不同的通信方式(GPRS、WIFI)、不同的接入协议(HTTP、EDP、MQTT、ModBus)连接OneNET的方法,并且附上详细的实验例程操作说明,用户可以按照需求利用示例代码和操作说明,快速学习并且掌握OneNET的接入过程。 24 | 25 | -------------------------------------------------------------------------------- /aaate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/aaate -------------------------------------------------------------------------------- /mqtt_app_src/Makefile: -------------------------------------------------------------------------------- 1 | CFLAGS:=$(CFLAGS) -I./include -I./mqtt 2 | all: 3 | gcc $(CFLAGS) -o mqttc *.c src/*.c 4 | clean: 5 | rm -rf mqttc 6 | -------------------------------------------------------------------------------- /mqtt_app_src/mqtt/config.h: -------------------------------------------------------------------------------- 1 | #ifndef ONENET_CONFIG_H 2 | #define ONENET_CONFIG_H 3 | 4 | #include 5 | 6 | #ifdef WIN32 7 | #pragma warning(disable:4819) 8 | #pragma warning(disable:4996) 9 | #define inline __inline 10 | struct iovec { 11 | void *iov_base; 12 | size_t iov_len; 13 | }; 14 | #else // UNIX 15 | #include 16 | #endif // _WIN32 17 | 18 | #endif // ONENET_CONFIG_H 19 | -------------------------------------------------------------------------------- /mqtt_app_src/mqtt/mqtt_buffer.h: -------------------------------------------------------------------------------- 1 | #ifndef ONENET_MQTT_BUFFER_H 2 | #define ONENET_MQTT_BUFFER_H 3 | 4 | #ifdef __cplusplus 5 | extern "C" { 6 | #endif 7 | 8 | #include 9 | #include "config.h" 10 | 11 | struct MqttExtent { 12 | uint32_t len; 13 | char *payload; 14 | 15 | struct MqttExtent *next; 16 | }; 17 | 18 | struct MqttBuffer { 19 | struct MqttExtent *first_ext; 20 | struct MqttExtent *last_ext; 21 | uint32_t available_bytes; 22 | 23 | char **allocations; 24 | char *first_available; 25 | uint32_t alloc_count; 26 | uint32_t alloc_max_count; 27 | uint32_t buffered_bytes; 28 | }; 29 | 30 | /** 31 | * 初始化缓冲区,缓冲区对象在使用完后,必须用 @see MqttBuffer_Destroy销毁 32 | * @param buf 被初始化的缓冲区对象 33 | */ 34 | void MqttBuffer_Init(struct MqttBuffer *buf); 35 | /** 36 | * 销毁缓冲区对象 37 | * @param buf 被销毁的缓冲区对象 38 | */ 39 | void MqttBuffer_Destroy(struct MqttBuffer *buf); 40 | /** 41 | * 重置(清空)缓冲区对象 42 | * @param buf 被重置(清空)的缓冲区对象 43 | */ 44 | void MqttBuffer_Reset(struct MqttBuffer *buf); 45 | /** 46 | * 分配一块连续的内存 47 | * @param buf 用于分配连续缓冲区的缓冲区对象 48 | * @param size 将要分配的缓冲区大小(字节数) 49 | */ 50 | struct MqttExtent *MqttBuffer_AllocExtent(struct MqttBuffer *buf, uint32_t size); 51 | /** 52 | * 将一个数据块添加到缓冲区的末尾 53 | * @param buf 存储数据块的缓冲区对象 54 | * @param payload 数据块的首地址 55 | * @param size 数据块的大小(字节数) 56 | * @param own 非0时,数据块将被拷贝到缓冲区,为0时,缓冲区仅保存其引用 57 | * @return 成功则返回 MQTTERR_NOERROR 58 | * @remark 当own为0时,必须保证payload在buf未被销毁前一直有效 59 | */ 60 | int MqttBuffer_Append(struct MqttBuffer *buf, char *payload, uint32_t size, int own); 61 | /** 62 | * 将一块连续的内存添加到缓冲区的末尾 63 | * @param buf 存储数据块的缓冲区对象 64 | * @param ext 将要加入缓冲区的数据块 65 | * @remark 若ext不是buf分配的,则需保证ext在buf被销毁前一直有效 66 | */ 67 | void MqttBuffer_AppendExtent(struct MqttBuffer *buf, struct MqttExtent *ext); 68 | 69 | #ifdef __cplusplus 70 | } // extern "C" 71 | #endif 72 | 73 | #endif // ONENET_MQTT_BUFFER_H 74 | 75 | -------------------------------------------------------------------------------- /mqtt_app_src/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | #cmd devid proid api-key 4 | ./mqttc 5 | -------------------------------------------------------------------------------- /test.txt.txt: -------------------------------------------------------------------------------- 1 | dscdscdsc -------------------------------------------------------------------------------- /test2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cm-heclouds/OneNET_demo_code_kylin/ba51ac08ad87d4bbc714f9da9fa794d11f922a21/test2.txt --------------------------------------------------------------------------------