Wiki source code of Firmware Compile Instruction -- STM32
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | |||
2 | |||
3 | |||
4 | |||
5 | = 1. Introduction = | ||
6 | |||
7 | This introduction is to show how to compile the source code for Dragino's stm32 base products. | ||
8 | |||
9 | = 2. Set Up Build Environment = | ||
10 | |||
11 | == 2.1 Set up Keil Compile Environment == | ||
12 | |||
13 | ((( | ||
14 | Assuming you already have [[Keil uVision5>>url:https://www.keil.com/demo/eval/arm.htm]] installed, the steps below show how to install the MDK support and get a license. | ||
15 | ))) | ||
16 | |||
17 | ((( | ||
18 | ~1. Open the Webpage: [[http:~~/~~/www2.keil.com/stmicroelectronics-stm32/mdk>>url:http://www2.keil.com/stmicroelectronics-stm32/mdk]] | ||
19 | ))) | ||
20 | |||
21 | ((( | ||
22 | 2. Download the **Keil MDK**, record the **PSN** here, we will use it later. | ||
23 | ))) | ||
24 | |||
25 | [[image:https://wiki.dragino.com/images/thumb/6/66/Keil_1.png/600px-Keil_1.png||height="293" width="600"]] | ||
26 | |||
27 | ((( | ||
28 | Download Keil MDK | ||
29 | ))) | ||
30 | |||
31 | ((( | ||
32 | 3. Login with an account that has administration rights. | ||
33 | ))) | ||
34 | |||
35 | ((( | ||
36 | 4. Right-click the µVision icon and select **Run as Administrator**… from the context menu. | ||
37 | 5: Open the dialog **File — License Management…** and select the **Single-User License** tab. | ||
38 | ))) | ||
39 | |||
40 | [[image:https://wiki.dragino.com/images/thumb/4/44/Keil_2.png/600px-Keil_2.png||height="279" width="600"]] | ||
41 | |||
42 | Install Keil | ||
43 | |||
44 | |||
45 | 6: Click the button **Get LIC via Internet...**, then click the button **OK** to register the product. This action opens the License Management page on the Keil web site. | ||
46 | |||
47 | [[image:https://wiki.dragino.com/images/thumb/f/fd/Keil_3.png/600px-Keil_3.png||height="297" width="600"]] | ||
48 | |||
49 | Install Keil | ||
50 | |||
51 | 7.Enter the **Product Serial Number** (from step 2.) 4RMW3-A8FIW-TUBLG along with your contact information and click the button Submit. An e-mail is sent back with the License ID Code (LIC) within a few minutes. | ||
52 | |||
53 | [[~[~[image:https://wiki.dragino.com/images/thumb/c/c5/Keil_4.png/600px-Keil_4.png~|~|height="307" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_4.png]] | ||
54 | |||
55 | Input PSN | ||
56 | |||
57 | [[~[~[image:https://wiki.dragino.com/images/thumb/7/7e/Keil_5.png/600px-Keil_5.png~|~|height="287" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_5.png]] | ||
58 | |||
59 | Active via mail | ||
60 | |||
61 | [[~[~[image:https://wiki.dragino.com/images/thumb/b/b0/Keil_6.png/600px-Keil_6.png~|~|height="248" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_6.png]] | ||
62 | |||
63 | Active via mail | ||
64 | |||
65 | 8. To activate the Software Product, **enter the LIC** in the field **New License ID Code (LIC)** of the dialog **License Management…** and click **Add LIC**. | ||
66 | |||
67 | [[~[~[image:https://wiki.dragino.com/images/thumb/b/b2/Keil_7.png/600px-Keil_7.png~|~|height="440" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_7.png]] | ||
68 | |||
69 | Add LIC | ||
70 | |||
71 | 9. Finish Install Keil | ||
72 | |||
73 | [[~[~[image:https://wiki.dragino.com/images/thumb/c/c4/Keil_8.png/600px-Keil_8.png~|~|height="345" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_8.png]] | ||
74 | |||
75 | Finish install Keil | ||
76 | |||
77 | |||
78 | == Install STM32L0 Series Device in Keil == | ||
79 | |||
80 | 1: Open the webpage: [[https:~~/~~/www.keil.com/dd2/stmicroelectronics/stm32l072cztx/#/eula-container>>url:https://www.keil.com/dd2/stmicroelectronics/stm32l072cztx/#/eula-container]]; | ||
81 | |||
82 | 2: Find STMicroelectronics **STM32L0 Series Device** and download it. | ||
83 | |||
84 | [[~[~[image:https://wiki.dragino.com/images/thumb/3/32/Keil_9.png/600px-Keil_9.png~|~|height="506" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_9.png]] | ||
85 | |||
86 | Finish install Keil | ||
87 | |||
88 | 3: Find the Software Pack and install it. | ||
89 | |||
90 | [[~[~[image:https://wiki.dragino.com/images/thumb/9/94/Keil_10.png/600px-Keil_10.png~|~|height="400" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_10.png]] | ||
91 | |||
92 | Install the downloaded pack in Keil | ||
93 | |||
94 | [[~[~[image:https://wiki.dragino.com/images/thumb/6/66/Keil_11.png/600px-Keil_11.png~|~|height="371" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_11.png]] | ||
95 | |||
96 | Install the downloaded pack in Keil | ||
97 | |||
98 | 4: Add the Device, then you can **rebuild** the project. | ||
99 | |||
100 | [[~[~[image:https://wiki.dragino.com/images/thumb/3/35/Keil_12.png/600px-Keil_12.png~|~|height="368" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_12.png]] | ||
101 | |||
102 | rebuild project | ||
103 | |||
104 | Note: If you don’t add the Device, then Keil will report this error: | ||
105 | |||
106 | [[~[~[image:https://wiki.dragino.com/images/thumb/4/42/Keil_13.png/600px-Keil_13.png~|~|height="389" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_13.png]] | ||
107 | |||
108 | Error without Device | ||
109 | |||
110 | |||
111 | = Get and compile Source Code = | ||
112 | |||
113 | * Get the source code for the product. | ||
114 | * Use Keil to open the project file. | ||
115 | * You can see the libraries related for example NBSN50 project as below: | ||
116 | |||
117 | [[~[~[image:https://wiki.dragino.com/images/b/b7/Keil_14.png~|~|height="143" width="197"~]~]>>url:https://wiki.dragino.com/index.php/File:Keil_14.png]] | ||
118 | |||
119 | project files | ||
120 | |||
121 | |||
122 | = Video Reference = | ||
123 | |||
124 | [[https:~~/~~/youtu.be/ctdUNx4XCEg>>url:https://youtu.be/ctdUNx4XCEg]] | ||
125 | |||
126 | |||
127 | = Frequency Ask Questiones (FAQ) = | ||
128 | |||
129 | == How to change the frequency band for LoRaWAN source code == | ||
130 | |||
131 | In Keil, you can see what frequency band the code support. | ||
132 | |||
133 | [[~[~[image:https://wiki.dragino.com/images/0/00/STM32_FAQ_1.png~|~|height="259" width="208"~]~]>>url:https://wiki.dragino.com/index.php/File:STM32_FAQ_1.png]] | ||
134 | |||
135 | Support Frequency | ||
136 | |||
137 | |||
138 | If you want to change frequency, modify the Preprocessor Symbols. For example, change EU868 to US915 to complie a US915 firmware. | ||
139 | |||
140 | [[~[~[image:https://wiki.dragino.com/images/7/7b/STM32_FAQ_2.png~|~|height="291" width="400"~]~]>>url:https://wiki.dragino.com/index.php/File:STM32_FAQ_2.png]] | ||
141 | |||
142 | Change Marco for frequency |