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