当前位置:网站首页>[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
边栏推荐
- 获取当前月份的第一天和最后一天,上个月的第一天和最后一天
- Zotero使用之自定义参考文献格式
- Pytorch uses multi GPU parallel training and its principle and precautions
- Distribution operation of D
- When vs code uses prettier to format JS, there is a space between the name of the function definition and the parentheses, and ESLIt does not allow this space
- 连接数服务器数据库报:错误号码2003Can‘t connect to MySQL server on ‘服务器地址‘(10061)
- Get the first and last days of the current month, and the first and last days of the previous month
- Zotero文献管理工具之Jasminum(茉莉花)插件
- Unsatisfied dependency expressed through field ‘baseMapper‘; nested exceptio
- 100 cases of go language
猜你喜欢

Vulnerability discovery - API interface service vulnerability probe type utilization and repair

Mysql delete in 不走索引的

Gof23 - builder mode

MYSQL索引不生效的原因

分析 NFT 项目的 5 个指标

Web technology sharing | webrtc recording video stream

我在腾讯做测试的这几年...

Guide to "avoid dismissal during probation period"

LabVIEW Arduino tcp/ip remote smart home system (project part-5)

MYSQL(三)
随机推荐
[digital signal processing] basic sequence (basic sequence lists | unit pulse sequence | unit pulse function | discrete unit pulse function | difference between unit pulse function and discrete unit p
Type de Typescript
Judgment of SQL null value
Closure problem C Lua
Gof23 - abstract factory pattern
How to make the main thread wait for the sub thread to execute before executing
How to set MySQL triggers is a simple tutorial for novices
typescript的type
LightGBM--调参笔记
【yolov4】基于yolov4深度学习网络目标检测MATLAB仿真
Temperature alarm
浅析一道经典题
Differences, advantages and disadvantages between synchronous communication and asynchronous communication
Research Report on market supply and demand and strategy of China's microneedle device industry
寶塔服務器搭建及數據庫遠程連接
Laravel 实现 groupBy 查询分组数量
Vulnerability discovery - API interface service vulnerability probe type utilization and repair
在公司逮到一个阿里10年的测试开发,聊过之后大彻大悟...
视图简析
LabVIEW Arduino TCP/IP远程智能家居系统(项目篇—5)