当前位置:网站首页>[004] [stm32] MDK project configuration and commissioning
[004] [stm32] MDK project configuration and commissioning
2022-06-26 06:44:00 【Cauchy's hesitation】
This paper is about Baiwen & Weidong mountain 【 IOT smart home training camp 】 Course notes
1 Engineering configuration
1.1 Device

1.2 Target

Without using software simulation, you can ignore Xtal Parameters .
MrcroLIB Yes C Library has been optimized , quite a lot C Library functions cannot be used directly , The following code can be added without using the micro library , Normal use printf and scanf Redirect to serial port and other output devices :
#pragma import(__use_no_semihosting)
struct __FILE
{
int a;
};
FILE __stdout;
FILE __stdin;
void _sys_exit(int x)
{
}
1.3 Output

Don't check Browse Information unable F12 Jump .
1.4 ListIng

.LST:Listing file generated by the C Compiler or Assembler. C And the list file generated by the assembly compiler ..I: C Preprocessor Output File. Preprocessed files ..map: Store image files , More important , You can analyze the details of the generated code , Such as code size 、 Memory address occupied by variables, etc .
1.5 User

stay “After Build/Rebuild” add to fromelf --bin -o "[email protected]" "#L", Check... At the same time “Run #1”, Indicates that after compilation , perform fromelf Command to generate bin file .
1.6 C/C++

Use cubemx Generate MDK engineering , You do not need to add a file path .
1.7 Asm
Asm The interface is generally configured with assembly code , Not commonly used .
1.8 Linker

Use Memory Layout from Target Dialog: Use the distributed file load dialog Target pageMake RW Sections Position Independent: send RW Segment independence (–rwpi)Make RO Sections Position Independent: send RO Segment independence (–ropi)Don't Search Standard Libraries: Disable scanning of the default compiler runtime library (–noscanlib)Report 'might fail' Conditions as Errors: The reported condition may cause a failed error , Not a warning (–strict)xx BASE:X/O、R/O、R/W Base address (–xo_base=address)disable Warnings: Police warning (–diag_suppress)
1.9 Debug

Load Application at Startup: Load application at startup .Run to main(): When entering debug mode ,main(), That is, skip assembly code , Jump directly to main Function start simulation .- Reset debug session settings
Restore Debug Session Settings: If you check , Click on it. “ Reset ” Will return to the previous state . Include : The breakpoint Breakpoints、 window Watch Windows、 Performance Analyzer Performance Analyzer、 Memory window Memory Window、 hold-all Toolbox、 System Finder System Viewer etc. . Dialog DLL - Parameter: Conversation box DLL Documents and parameters ;CPU/Driver DLL - Parameter:CPU Driver files and parameters .
Dialog DLL Respectively : DARMSTM.DLL and TARMSTM.DLL Parameter Are all :pSTM32F103RC(p+ Specific chip signals ), Used to set the software and hardware simulation that supports the corresponding chip ( That is, it can be done through Peripherals Select the dialog box of corresponding peripherals and observe the simulation results ).Manage Component Viewer Description Files: Manage component description files ( Generally do not use )
Hardware simulation download configuration :

2 Simulation debugging

2.1 General debugging window

2.2 Observation window
Look at the value of the variable :
Default 16 Base display , Modifiable .
View kernel and peripheral register values :
If you look at GPIOA register :
Check the kernel peripheral registers NCIC:
- E: Can make / Disability interruption
- P: Whether the interrupt is suspended
- A: Whether the interrupt is responding
You can also click Peripherals Select the corresponding peripheral to view :

Look at the function call stack :
Be careful :
- Keil When software simulation occurs
no ‘write’ permission”,no ‘read’ permissionError of : No settings debug Options DLL. - Logic analyzer shall also be set DLL, And can only be used under software simulation , Cannot be used for hardware emulation , Otherwise prompt
Unknown Signal., Or the following error occurs :
Keil Series of tutorial reference :
- Keil(MDK-ARM) Introduce 、 download 、 Installation and registration
- Keil(MDK-ARM) Series of tutorials ( One )_ New software engineering detailed process
- Keil(MDK-ARM) Series of tutorials ( Two )_ Detailed description of toolbar
- Keil(MDK-ARM) Series of tutorials ( 3、 ... and )_ Project target option configuration (Ⅰ)
- Keil(MDK-ARM) Series of tutorials ( Four )_ Project target option configuration (Ⅱ)
- Keil(MDK-ARM) Series of tutorials ( 5、 ... and )_Configuration(Ⅰ)
- Keil(MDK-ARM) Series of tutorials ( 6、 ... and )_Configuration(Ⅱ)
- Keil(MDK-ARM) Series of tutorials ( 7、 ... and )_ menu
END
边栏推荐
- vs code 使用 prettier 格式化 js 的时候, 函数定义的名称和括号之间有一个空格, 而 eslit 又不允许这个空格.
- Differences, advantages and disadvantages between synchronous communication and asynchronous communication
- Zotero文献管理工具之Jasminum(茉莉花)插件
- Custom reference formats used by Zotero
- Jasminum plug-in of Zotero document management tool
- LightGBM--调参笔记
- 在公司逮到一个阿里10年的测试开发,聊过之后大彻大悟...
- ~94 zoom
- 【golang】time相关
- Web technology sharing | webrtc recording video stream
猜你喜欢
随机推荐
TS泛型在函数、接口、类中使用介绍
Laravel implements groupby to query the number of packets
宝塔服务器搭建及数据库远程连接
[alluxio & Dachang] the original boss direct employment was applied in this way
Alarm operation and Maintenance Center | build an efficient and accurate alarm collaborative processing system
浏览器的四大内核:Trident,Gecko,Webkit,Blink
分析 NFT 项目的 5 个指标
在公司逮到一个阿里10年的测试开发,聊过之后大彻大悟...
Usage of zip (*arg)
~94 zoom
Connexion et déconnexion TCP, détails du diagramme de migration de l'état
SparseArray
Customer Stories | Netease spring breeze: the "spring breeze" of the fun industry, reaching out to all areas through in-depth interaction
Unsatisfied dependency expressed through field ‘baseMapper‘; nested exceptio
API and encapsulation of cookies
DS18B20 details
Dpdk - tcp/udp protocol stack server implementation (II)
Installing rainbow in various kubernetes with Helm
Install pyinstaller
Everything is a vector. The service practice of iqiyi online vector recall project








