Explorar o código

add httpclient

haitao hai 9 meses
pai
achega
97db88e7cb

BIN=BIN
app/MDK/Objects/dtu_simple.axf


+ 115 - 103
app/MDK/dtu_simple.uvoptx

@@ -196,7 +196,7 @@
 
   <Group>
     <GroupName>USR</GroupName>
-    <tvExp>1</tvExp>
+    <tvExp>0</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -280,6 +280,18 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
+    <File>
+      <GroupNumber>2</GroupNumber>
+      <FileNumber>7</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\System\source\httpclient.c</PathWithFileName>
+      <FilenameWithoutPath>httpclient.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
   </Group>
 
   <Group>
@@ -290,7 +302,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>7</FileNumber>
+      <FileNumber>8</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -310,7 +322,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>8</FileNumber>
+      <FileNumber>9</FileNumber>
       <FileType>2</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -330,7 +342,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>9</FileNumber>
+      <FileNumber>10</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -342,7 +354,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>10</FileNumber>
+      <FileNumber>11</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +366,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>11</FileNumber>
+      <FileNumber>12</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -366,7 +378,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>12</FileNumber>
+      <FileNumber>13</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -386,7 +398,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>13</FileNumber>
+      <FileNumber>14</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -398,7 +410,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>14</FileNumber>
+      <FileNumber>15</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -410,7 +422,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>15</FileNumber>
+      <FileNumber>16</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -422,7 +434,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>16</FileNumber>
+      <FileNumber>17</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -434,7 +446,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>17</FileNumber>
+      <FileNumber>18</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -446,7 +458,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>18</FileNumber>
+      <FileNumber>19</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -458,7 +470,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>19</FileNumber>
+      <FileNumber>20</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -470,7 +482,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>20</FileNumber>
+      <FileNumber>21</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -482,7 +494,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>21</FileNumber>
+      <FileNumber>22</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -494,7 +506,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>22</FileNumber>
+      <FileNumber>23</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -506,7 +518,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>23</FileNumber>
+      <FileNumber>24</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -518,7 +530,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>24</FileNumber>
+      <FileNumber>25</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -530,7 +542,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>25</FileNumber>
+      <FileNumber>26</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -542,7 +554,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>26</FileNumber>
+      <FileNumber>27</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -554,7 +566,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>27</FileNumber>
+      <FileNumber>28</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -566,7 +578,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>28</FileNumber>
+      <FileNumber>29</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -578,7 +590,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>29</FileNumber>
+      <FileNumber>30</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -590,7 +602,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>30</FileNumber>
+      <FileNumber>31</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -602,7 +614,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>31</FileNumber>
+      <FileNumber>32</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -614,7 +626,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>32</FileNumber>
+      <FileNumber>33</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -626,7 +638,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>33</FileNumber>
+      <FileNumber>34</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -638,7 +650,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>34</FileNumber>
+      <FileNumber>35</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -650,7 +662,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>35</FileNumber>
+      <FileNumber>36</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -662,7 +674,7 @@
     </File>
     <File>
       <GroupNumber>6</GroupNumber>
-      <FileNumber>36</FileNumber>
+      <FileNumber>37</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -676,13 +688,13 @@
 
   <Group>
     <GroupName>FreeRTOS-8.2.3</GroupName>
-    <tvExp>1</tvExp>
+    <tvExp>0</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>37</FileNumber>
+      <FileNumber>38</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -694,7 +706,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>38</FileNumber>
+      <FileNumber>39</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -706,7 +718,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>39</FileNumber>
+      <FileNumber>40</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -718,7 +730,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>40</FileNumber>
+      <FileNumber>41</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -730,7 +742,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>41</FileNumber>
+      <FileNumber>42</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -742,7 +754,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>42</FileNumber>
+      <FileNumber>43</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -754,7 +766,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>43</FileNumber>
+      <FileNumber>44</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -766,7 +778,7 @@
     </File>
     <File>
       <GroupNumber>7</GroupNumber>
-      <FileNumber>44</FileNumber>
+      <FileNumber>45</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -786,7 +798,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>45</FileNumber>
+      <FileNumber>46</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -798,7 +810,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>46</FileNumber>
+      <FileNumber>47</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -810,7 +822,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>47</FileNumber>
+      <FileNumber>48</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -822,7 +834,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>48</FileNumber>
+      <FileNumber>49</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -834,7 +846,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>49</FileNumber>
+      <FileNumber>50</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -846,7 +858,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>50</FileNumber>
+      <FileNumber>51</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -858,7 +870,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>51</FileNumber>
+      <FileNumber>52</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -870,7 +882,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>52</FileNumber>
+      <FileNumber>53</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -882,7 +894,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>53</FileNumber>
+      <FileNumber>54</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -894,7 +906,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>54</FileNumber>
+      <FileNumber>55</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -906,7 +918,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>55</FileNumber>
+      <FileNumber>56</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -918,7 +930,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>56</FileNumber>
+      <FileNumber>57</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -930,7 +942,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>57</FileNumber>
+      <FileNumber>58</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -942,7 +954,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>58</FileNumber>
+      <FileNumber>59</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -954,7 +966,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>59</FileNumber>
+      <FileNumber>60</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -966,7 +978,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>60</FileNumber>
+      <FileNumber>61</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -978,7 +990,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>61</FileNumber>
+      <FileNumber>62</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -990,7 +1002,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>62</FileNumber>
+      <FileNumber>63</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1002,7 +1014,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>63</FileNumber>
+      <FileNumber>64</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1014,7 +1026,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>64</FileNumber>
+      <FileNumber>65</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1026,7 +1038,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>65</FileNumber>
+      <FileNumber>66</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1038,7 +1050,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>66</FileNumber>
+      <FileNumber>67</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1050,7 +1062,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>67</FileNumber>
+      <FileNumber>68</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1062,7 +1074,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>68</FileNumber>
+      <FileNumber>69</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1074,7 +1086,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>69</FileNumber>
+      <FileNumber>70</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1086,7 +1098,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>70</FileNumber>
+      <FileNumber>71</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1098,7 +1110,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>71</FileNumber>
+      <FileNumber>72</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1110,7 +1122,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>72</FileNumber>
+      <FileNumber>73</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1122,7 +1134,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>73</FileNumber>
+      <FileNumber>74</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1134,7 +1146,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>74</FileNumber>
+      <FileNumber>75</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1146,7 +1158,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>75</FileNumber>
+      <FileNumber>76</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1158,7 +1170,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>76</FileNumber>
+      <FileNumber>77</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1170,7 +1182,7 @@
     </File>
     <File>
       <GroupNumber>8</GroupNumber>
-      <FileNumber>77</FileNumber>
+      <FileNumber>78</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1190,7 +1202,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>9</GroupNumber>
-      <FileNumber>78</FileNumber>
+      <FileNumber>79</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1202,7 +1214,7 @@
     </File>
     <File>
       <GroupNumber>9</GroupNumber>
-      <FileNumber>79</FileNumber>
+      <FileNumber>80</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1222,7 +1234,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>10</GroupNumber>
-      <FileNumber>80</FileNumber>
+      <FileNumber>81</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1242,7 +1254,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>81</FileNumber>
+      <FileNumber>82</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1254,7 +1266,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>82</FileNumber>
+      <FileNumber>83</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1266,7 +1278,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>83</FileNumber>
+      <FileNumber>84</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1278,7 +1290,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>84</FileNumber>
+      <FileNumber>85</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1290,7 +1302,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>85</FileNumber>
+      <FileNumber>86</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1302,7 +1314,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>86</FileNumber>
+      <FileNumber>87</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1314,7 +1326,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>87</FileNumber>
+      <FileNumber>88</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1326,7 +1338,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>88</FileNumber>
+      <FileNumber>89</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1338,7 +1350,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>89</FileNumber>
+      <FileNumber>90</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1350,7 +1362,7 @@
     </File>
     <File>
       <GroupNumber>11</GroupNumber>
-      <FileNumber>90</FileNumber>
+      <FileNumber>91</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1370,7 +1382,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>12</GroupNumber>
-      <FileNumber>91</FileNumber>
+      <FileNumber>92</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1382,7 +1394,7 @@
     </File>
     <File>
       <GroupNumber>12</GroupNumber>
-      <FileNumber>92</FileNumber>
+      <FileNumber>93</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1394,7 +1406,7 @@
     </File>
     <File>
       <GroupNumber>12</GroupNumber>
-      <FileNumber>93</FileNumber>
+      <FileNumber>94</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1406,7 +1418,7 @@
     </File>
     <File>
       <GroupNumber>12</GroupNumber>
-      <FileNumber>94</FileNumber>
+      <FileNumber>95</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1426,7 +1438,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>13</GroupNumber>
-      <FileNumber>95</FileNumber>
+      <FileNumber>96</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1438,7 +1450,7 @@
     </File>
     <File>
       <GroupNumber>13</GroupNumber>
-      <FileNumber>96</FileNumber>
+      <FileNumber>97</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1450,7 +1462,7 @@
     </File>
     <File>
       <GroupNumber>13</GroupNumber>
-      <FileNumber>97</FileNumber>
+      <FileNumber>98</FileNumber>
       <FileType>5</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1462,7 +1474,7 @@
     </File>
     <File>
       <GroupNumber>13</GroupNumber>
-      <FileNumber>98</FileNumber>
+      <FileNumber>99</FileNumber>
       <FileType>5</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1482,7 +1494,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>14</GroupNumber>
-      <FileNumber>99</FileNumber>
+      <FileNumber>100</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1494,7 +1506,7 @@
     </File>
     <File>
       <GroupNumber>14</GroupNumber>
-      <FileNumber>100</FileNumber>
+      <FileNumber>101</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1506,7 +1518,7 @@
     </File>
     <File>
       <GroupNumber>14</GroupNumber>
-      <FileNumber>101</FileNumber>
+      <FileNumber>102</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1526,7 +1538,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>15</GroupNumber>
-      <FileNumber>102</FileNumber>
+      <FileNumber>103</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1538,7 +1550,7 @@
     </File>
     <File>
       <GroupNumber>15</GroupNumber>
-      <FileNumber>103</FileNumber>
+      <FileNumber>104</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1550,7 +1562,7 @@
     </File>
     <File>
       <GroupNumber>15</GroupNumber>
-      <FileNumber>104</FileNumber>
+      <FileNumber>105</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1562,7 +1574,7 @@
     </File>
     <File>
       <GroupNumber>15</GroupNumber>
-      <FileNumber>105</FileNumber>
+      <FileNumber>106</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1574,7 +1586,7 @@
     </File>
     <File>
       <GroupNumber>15</GroupNumber>
-      <FileNumber>106</FileNumber>
+      <FileNumber>107</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1594,7 +1606,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>16</GroupNumber>
-      <FileNumber>107</FileNumber>
+      <FileNumber>108</FileNumber>
       <FileType>5</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>

+ 5 - 0
app/MDK/dtu_simple.uvprojx

@@ -417,6 +417,11 @@
               <FileType>1</FileType>
               <FilePath>..\System\source\sys_mqtt.c</FilePath>
             </File>
+            <File>
+              <FileName>httpclient.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\System\source\httpclient.c</FilePath>
+            </File>
           </Files>
         </Group>
         <Group>

+ 23 - 0
app/System/include/httpclient.h

@@ -0,0 +1,23 @@
+#ifndef HTTP_CLIENT_H
+#define HTTP_CLIENT_H
+
+#define HTTP_PRINTF printf 
+
+#include "stdint.h"
+
+
+int http_clientConnectToServer(char *host, int port, int hostIsIp);
+void http_clientClose(int sock);
+
+int http_clientPacketRequest_GET(int sock, char *host, char *url);
+int http_clientReadResponse_GET(int sock, uint8_t *pbuf, int *datlen);
+int http_clientGet(char *host, char *url, uint16_t port, uint8_t hostIsIp,uint8_t *pbuf, int *datalen);
+
+int http_clientPacketRequest_POST(int sock, char *host, char *url, int datalen);
+int http_clientPacketBody_POST(int sock, uint8_t *pbuf, int datalen);
+int http_clientReadResponse_POST(int sock, uint8_t *pbuf, int *datlen);
+int http_clientPost(char *host, char *url, uint16_t port, uint8_t hostIsIp, uint8_t *postbuf, int postlen, uint8_t *rtnbuf, int *rtnlen);
+
+#endif 
+
+

+ 444 - 0
app/System/source/httpclient.c

@@ -0,0 +1,444 @@
+#include "stdint.h"
+#include "stdio.h"
+#include "string.h"
+#include "lwip/opt.h"
+#include "lwip/arch.h"
+#include "lwip/api.h"
+#include "lwip/inet.h"
+#include "lwip/sockets.h"
+#include "lwip/dns.h"
+#include "httpclient.h"
+
+uint8_t httpSendBuffer[1024];
+uint8_t httpRecvBuffer[512];
+
+
+
+/**
+  * @brief  从socket缓存中读取一行http数据
+	* @param  sock:    已经连接到服务器的sock编号
+	* @param  buf:     保存数据的buffer
+	* @param  size:    buf的最大可用长度
+	* @retval 读取到的数据的长度,包括两个字节的换行符
+  */
+int http_getLine(int sock, uint8_t *buf, int size)
+{
+	 int i = 0;
+	 char c = '\0';
+	 int n;
+	
+	 while((i < (size - 1)) && (c != '\n'))
+	 {
+			n = recv(sock, &c, 1, 0);
+		  if(n <= 0) c = '\n';
+			buf[i++] = c;
+	 }
+	 buf[i] = '\0';
+ 
+	 return i;  //返回读取的到的数据长度
+}
+
+/**
+  * @brief  解析http响应行
+	* @param  pbuf:  响应行的数据
+* @retval 其他值: 返回http请求状态   -1: 解析失败
+  */
+int http_parseRequestLine(uint8_t *pbuf)
+{
+	int b, s, g;
+	
+	if((strncmp((char *)pbuf, "HTTP/1.1 ", strlen("HTTP/1.1 ")) == 0) || (strncmp((char *)pbuf, "http/1.1 ", strlen("http/1.1 ")) == 0))
+	{
+		pbuf += strlen("HTTP/1.1 ");
+		b = pbuf[0] - '0';
+		s = pbuf[1] - '0';
+		g = pbuf[2] - '0';	
+
+		return (b * 100 + s * 10 + g);
+	}
+	
+	return -1;
+}
+
+/**
+  * @brief  DNS解析回调函数
+  * @note   在解析域名成功后,会调用这个函数,然后可以读取到对应的IP地址
+  * @param  name:         域名
+  * @param  host_ip:      域名对应的ip地址
+  * @param  callback_arg: 传递的参数
+  * @retval None
+  */
+void http_dns_found(const char *name, ip_addr_t *host_ip, void *callback_arg)
+{
+	*(ip_addr_t *)callback_arg = *host_ip;
+	HTTP_PRINTF("%s:%s\r\n",name, ipaddr_ntoa(host_ip));
+}
+
+/**
+  * @brief  连接到http服务器的函数
+	* @note   连接到http服务器
+  * @param  host:     服务器的域名或者ip地址
+	* @param  port:     服务器端口号
+	* @param  hostIsIp: host代表的是 域名,还是ip地址  0: host为域名  1: host为ip地址
+	* @retval -1:连接服务器失败  -2: 域名解析失败  >=0: 连接成功,返回值为 sock编号
+  */
+int http_clientConnectToServer(char *host, int port, int hostIsIp)
+{
+	int timeout;
+	struct sockaddr_in serverAddr;
+	int sock = socket(AF_INET, SOCK_STREAM, 0);
+	if(sock < 0) return -2;	
+
+	//如果传入的host参数是域名,解析域名
+	if(hostIsIp == 0)
+	{
+		ip_addr_t addr;	
+		
+    addr.addr = 0;
+		dns_gethostbyname(host, &addr, http_dns_found, &addr);
+		//等待dns解析完成
+		timeout = 0;
+		while((addr.addr == 0) && (timeout < 2000)) 
+		{
+			vTaskDelay(100);  
+			timeout += 10;
+		}
+		if(timeout >= 2000) 
+		{
+			HTTP_PRINTF(("dns get failure \n"));
+			return -2;
+		}
+		serverAddr.sin_addr.s_addr = inet_addr(inet_ntoa(addr));
+	}
+	else serverAddr.sin_addr.s_addr = inet_addr((char*)host);
+	serverAddr.sin_len = sizeof(serverAddr);
+	serverAddr.sin_family = AF_INET;
+	serverAddr.sin_port = htons(port);	
+  memset(&serverAddr.sin_zero, 0, sizeof(serverAddr.sin_zero));
+	
+	//连接服务器
+	if(connect(sock, (struct sockaddr*)&serverAddr, sizeof(serverAddr)) != 0)
+	{
+		HTTP_PRINTF("connect server error \r\n");
+		return -1;
+	}
+	
+	//设置接收数据超时时间
+	timeout = 3000;
+	setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(int));	
+	
+	HTTP_PRINTF("connect server success \r\n");
+	
+	return sock;
+}
+
+/**
+  * @brief  关闭socket端口
+	* @param  sock:    已经连接到服务器的sock编号
+  */
+void http_clientClose(int sock)
+{
+	close(sock);
+}
+
+
+/**
+  * @brief  连接到发送GET请求
+	* @note   组装GET数据包,并将GET请求发送出去
+	* @param  sock:    已经连接到服务器的sock编号
+  * @param  host:    服务器的域名或者ip地址
+	* @param  url:     请求资源的地址
+	* @retval -1: 发送请求失败 1:发送成功
+  */
+int http_clientPacketRequest_GET(int sock, char *host, char *url)
+{
+	int len;
+	
+	memset(httpSendBuffer, 0, sizeof(httpSendBuffer));
+	//组建请求行
+	sprintf((char *)httpSendBuffer, "GET ");
+	if(url == NULL) strcat((char *)httpSendBuffer, "/");
+	else            strcat((char *)httpSendBuffer, url); 
+	strcat((char *)httpSendBuffer, " HTTP/1.1\r\n");
+	//组建请求头部 
+	strcat((char *)httpSendBuffer, "Host: ");
+	strcat((char *)httpSendBuffer, host);	
+	strcat((char *)httpSendBuffer, "\r\n");
+	strcat((char *)httpSendBuffer, "Connection: close\r\n");	
+	strcat((char *)httpSendBuffer, "Accept: application/json\r\n");
+	strcat((char *)httpSendBuffer, "User-Agent: stm32f207\r\n");		
+	strcat((char *)httpSendBuffer, "Cache-Control: no-cache\r\n");	
+	//添加一个空白行
+	strcat((char *)httpSendBuffer, "\r\n"); 
+	len = strlen((char *)httpSendBuffer);
+	HTTP_PRINTF("%s", (char *)httpSendBuffer);	 //
+	
+	//发送请求报文
+	len = write(sock, httpSendBuffer, len);  
+	if(len <= 0) 
+	{
+		return -1;
+	}
+	
+	return 1;
+}
+
+/**
+  * @brief  http_clientReadResponse_GET
+	* @note   等待服务器返回GET响应
+	* @param  sock:    已经连接到服务器的sock编号
+	* @retval -1: 发送请求失败 1:发送成功
+  */
+int http_clientReadResponse_GET(int sock, uint8_t *pbuf, int *datlen)
+{
+	int len, ret;
+	int length = 0;
+	
+	//读取响应行
+	len = http_getLine(sock, httpRecvBuffer, sizeof(httpRecvBuffer));	
+	if(len <= 0) return -1;
+	HTTP_PRINTF("%s", (char *)httpRecvBuffer);
+	
+	ret = http_parseRequestLine(httpRecvBuffer);
+	
+	//读取响应头
+	do
+	{
+		len = http_getLine(sock, httpRecvBuffer, sizeof(httpRecvBuffer));		
+		HTTP_PRINTF("%s", (char *)httpRecvBuffer);
+		if(len <= 2) 
+		{
+			if(len == 2) break;     //读取到了空行
+			else         return -1;
+		}
+	}while(len > 0);
+	
+	//读取响应主体内容
+	length = 0;
+	do
+	{
+		 len = recv(sock, httpRecvBuffer, sizeof(httpRecvBuffer), 0);
+		 if(len > 0) 
+		 {
+			 memcpy(pbuf + length, httpRecvBuffer, len);
+			 length += len;
+		 }
+	}while(len > 0);
+	
+	*datlen = length;
+	
+	return ret;
+}
+
+/*
+* @brief  http_clientPacketRequest_POST
+* @note   组建和发送POST请求头数据包
+* @param  sock:     已经连接到服务器的sock编号
+* @param  host:     服务器域名或者IP地址
+* @param  url:      请求的资源位置 
+* @param  pbuf:     需要post的数据缓存
+* @param  datalen   需要post的数据长度
+* @retval           -1: 发送失败 1:发送成功
+*/
+
+char httpTmpBuffer[64];
+int http_clientPacketRequest_POST(int sock, char *host, char *url, int datalen)
+{
+	int len;
+	
+	memset(httpSendBuffer, 0, sizeof(httpSendBuffer));
+	//组建请求行
+	sprintf((char *)httpSendBuffer, "POST ");
+	if(url == NULL) strcat((char *)httpSendBuffer, "/");
+	else            strcat((char *)httpSendBuffer, url); 
+	strcat((char *)httpSendBuffer, " HTTP/1.1\r\n");
+	
+	//组建请求头部
+	memset(httpTmpBuffer, 0, sizeof(httpTmpBuffer));
+	sprintf(httpTmpBuffer, "Host: %s\r\n", host);
+	strcat((char *)httpSendBuffer, httpTmpBuffer);
+	strcat((char *)httpSendBuffer, "Connection: close\r\n");	
+	strcat((char *)httpSendBuffer, "Accept: application/json\r\n");		 //
+	strcat((char *)httpSendBuffer, "User-Agent: stm32f207\r\n");			
+	strcat((char *)httpSendBuffer, "Cache-Control: no-cache\r\n");	
+	strcat((char *)httpSendBuffer, "Content-Type: application/json\r\n");
+	memset(httpTmpBuffer, 0, sizeof(httpTmpBuffer));
+	sprintf(httpTmpBuffer, "Content-Length: %d\r\n", datalen);   
+	strcat((char *)httpSendBuffer, httpTmpBuffer);
+	//添加一个空白行
+	strcat((char *)httpSendBuffer, "\r\n"); 
+	
+	len = strlen((char *)httpSendBuffer);
+	HTTP_PRINTF("%s", (char *)httpSendBuffer);	
+
+	//发送请求报文
+	len = write(sock, httpSendBuffer, len);  
+	if(len <= 0) 
+	{
+		return -1;
+	}
+
+	return 1;
+}
+
+
+/*
+* @brief  http_clientPacketBody_POST
+* @note   发送post数据
+* @param  sock:     已经连接到服务器的sock编号
+* @param  pbuf:     需要post的数据缓存
+* @param  datalen   需要post的数据长度
+* @retval           -1: 发送失败 1:发送成功
+*/
+int http_clientPacketBody_POST(int sock, uint8_t *pbuf, int datalen)
+{
+	int len;
+	
+	while(datalen > 1000)
+	{
+		len = write(sock, pbuf, 1000);  
+		if(len <= 0) 
+		{
+			return -1;
+		}
+		
+	  datalen -= 1000;
+		pbuf += 1000;
+	}
+	
+	if(datalen > 0)
+	{
+		len = write(sock, pbuf, datalen);  
+		if(len <= 0) 
+		{
+			return -1;
+		}
+	}	
+	
+	return 1;
+}
+
+/*
+* @brief  http_clientReadResponse_POST
+* @note   读取和解析POST返回的响应
+* @param  sock:     已经连接到服务器的sock编号
+* @retval 响应的返回值
+*/
+int http_clientReadResponse_POST(int sock, uint8_t *pbuf, int *datlen)
+{
+	int len, ret;
+	int length = 0;
+	
+	//读取响应行
+	len = http_getLine(sock, httpRecvBuffer, sizeof(httpRecvBuffer));	
+	if(len <= 0) return -1;
+	HTTP_PRINTF("%s", (char *)httpRecvBuffer);
+	
+	ret = http_parseRequestLine(httpRecvBuffer);
+	
+	//读取响应头
+	do
+	{
+		len = http_getLine(sock, httpRecvBuffer, sizeof(httpRecvBuffer));		
+		HTTP_PRINTF("%s", (char *)httpRecvBuffer);
+		if(len <= 2) 
+		{
+			if(len == 2) break;     //读取到了空行
+			else         return -1;
+		}
+	}while(len > 0);	
+	
+	//读取响应主体内容
+	length = 0;
+	do
+	{
+		 len = recv(sock, httpRecvBuffer, sizeof(httpRecvBuffer), 0);
+		 if(len > 0) 
+		 {
+			 memcpy(pbuf + length, httpRecvBuffer, len);
+			 length += len;
+		 }
+	}while(len > 0);
+	
+	*datlen = length;
+	
+	return ret;	
+}
+
+
+/*
+* @brief  http_clientGet
+* @note   客户端发送GET请求
+* @param  host:     服务器的域名或者IP地址
+* @param  url:      访问服务器资源的位置
+* @param  port:     服务器的端口号
+* @param  hostIsIp: 第一个参数是域名还是ip地址   0:域名  1: ip地址
+* @param  pbuf:     接收服务器响应的数据
+* @param  datalen:  服务器响应数据的长度
+* @retval 负值: GET请求异常, 正值: http协议的返回码
+*/
+int http_clientGet(char *host, char *url, uint16_t port, uint8_t hostIsIp, uint8_t *pbuf, int *datalen)
+{
+	int sock = -1, ret;
+	
+	sock = http_clientConnectToServer(host, port, hostIsIp);
+	if(sock < 0) goto __httpError;
+	
+	ret = http_clientPacketRequest_GET(sock, host, url);
+	if(sock < 0) goto __httpError;
+	
+	ret = http_clientReadResponse_GET(sock, pbuf, datalen);
+	if(sock < 0) goto __httpError;
+
+__httpError:	
+	if(sock >= 0)
+		http_clientClose(sock);
+
+	return ret;
+}
+
+/*
+* @brief  http_clientGet
+* @note   客户端发送GET请求
+* @param  host:     服务器的域名或者IP地址
+* @param  url:      访问服务器资源的位置
+* @param  port:     服务器的端口号
+* @param  hostIsIp: 第一个参数是域名还是ip地址   0:域名  1: ip地址
+* @param  postbuf:  需要发往服务器的数据
+* @param  postlen:  发送数据的长度
+* @param  rtnbuf:     接收服务器响应的数据
+* @param  rtnlen:  服务器响应数据的长度
+* @retval 负值: GET请求异常, 正值: http协议的返回码
+*/
+int http_clientPost(char *host, char *url, uint16_t port, uint8_t hostIsIp, uint8_t *postbuf, int postlen, uint8_t *rtnbuf, int *rtnlen)
+{
+	int sock, ret;
+	
+	sock = http_clientConnectToServer(host, port, hostIsIp);
+	if(sock < 0) goto __httpError;
+
+	ret = http_clientPacketRequest_POST(sock, host, url, postlen);
+	if(ret < 0) goto __httpError;
+	
+	ret = http_clientPacketBody_POST(sock, postbuf, postlen);
+  if(ret < 0) goto __httpError;
+	
+	ret = http_clientReadResponse_POST(sock, rtnbuf, rtnlen);
+
+__httpError:	
+	if(sock >= 0)
+		http_clientClose(sock);
+	
+	return ret;
+}
+
+
+
+
+
+
+
+
+
+
+

+ 13 - 4
app/System/source/sys_mqtt.c

@@ -12,8 +12,10 @@
 #include "sys_mqtt.h"
 
 
-void mqtt_publish_task(void *arg);
-
+static void mqtt_publish_task(void *arg);
+/*
+*接收并处理mqtt订阅消息
+*/
 static void topic1_handler(void* client, message_data_t* msg)
 {
     (void) client;
@@ -49,7 +51,7 @@ void mqtt_task_creat()
 	xTaskCreate(mqtt_publish_task, "mqtt_publish_task",1024, client, 2, NULL);
 }
 
-void mqtt_publish_task(void *arg)
+static void mqtt_publish_task(void *arg)
 {
     mqtt_client_t *client = (mqtt_client_t *)arg;
 		while(1)
@@ -82,7 +84,14 @@ void mqtt_publish_task(void *arg)
 				vTaskDelay(100);
     }
 }
-
+/*
+ *  函数名:void mqtt_publish_data(uint8_t *payload,mqtt_qos_t qos,uint16_t pub_length,char *topic)
+ *  输入参数:payload上传的数据包,qos以什么等级去发布数据,pub_length上传的数据包长度,topic上传的topic
+ *  输出参数:无
+ *  返回值:无
+ *  函数作用:向队列中写入mqtt上传的消息
+ *  TODO:队列满无法写入的情况处理
+ */
 void mqtt_publish_data(uint8_t *payload,mqtt_qos_t qos,uint16_t pub_length,char *topic)
 {
 	struct Pub_Queue *pxMessage=pvPortMalloc(sizeof(struct Pub_Queue));

+ 4 - 1
app/USR/source/main.c

@@ -51,6 +51,10 @@ OF SUCH DAMAGE.
 #include <stdlib.h>
 #include "netconf.h"
 #include "sys_mqtt.h"
+/*
+*freertosÓÅÏȼ¶¹ÜÀí
+*
+*/
 #define INIT_TASK_PRIO   ( tskIDLE_PRIORITY + 1 )
 #define DHCP_TASK_PRIO   ( tskIDLE_PRIORITY + 4 )
 #define LED_TASK_PRIO    ( tskIDLE_PRIORITY + 2 )
@@ -59,7 +63,6 @@ OF SUCH DAMAGE.
 
  
 void led_task(void * pvParameters); 
-void led_task1(void * pvParameters); 
 void init_task(void * pvParameters);