ADS is unstable under Windows 7 and has not been officially updated for a long time. I often use MDK for embedded software development. MDK is simple, easy to use and powerful, so I want to use MDK to develop bare metal S3C2440. I found many blogs of great people on the Internet. When setting up the environment, many strange problems occurred. I wrote this blog to record them and to help colleagues who are new to setting up the environment to avoid some detours.
1. Platform
1) Operating system: win7 64 bit
2) KEIL version: 4.74
3) jlink V9 downloader
4) Development board: FL2440
You can install the keil software and jlink driver by searching on Baidu.
2. New construction projects
2.1. Select New uVision Project under project to create a new project
Set the project path and project name
##2.2, Select the processor chip
Copy the S3C2440.s file to the project folder and add it to the project
2.3. Add a .c file
Add the following code in the .c file
#include void Delay(int delayTime); int __main() { GPBCON |= 01<<10; //Configure GPIO of LED0 while (1) { // Turn on the small light GPBDAT &= ~(1<<5); Delay(1000); //Turn off the light GPBDAT |= 1<<5; Delay(1000); } } void Delay(int delayTime) { int i,j; for (i=0; i ; return; } 2.4、Configure S3C2440.s Open this file and select Configuration wizard in the editing interface to perform configuration. To be on the safe side, check all the buttons. 3. Set up the project 3.1. Click the Options for Target icon 3.2. Set RAM and ROM addresses 3.3. Generate Hex file 3.4. Simulator Settings The function of Ext_RAM.ini file is to initialize RAM before loading axf debugging file, and it needs to complete the setting of bus clock and other functions. This file is not in Keil4.7, you need to download a copy online and then put it in the newly created project. And you need to change the load command in Ext_RAM.ini file to the path of the axf file of this project. Then you need to set the following in the J-LINK/J-TRACE Setting: The default frequency of JTAG Speed is 1MHz, which may cause problems. It is recommended to change it to 800KHz. 3.5、Load Flash burning algorithm Select J-LINk/J-TRACE ARM and uncheck Update Targetbefore Debugging and Use Debug Driver. Click Settings of J-LINK/J-TRACE ARM and select the corresponding chip. At the same time, try not to erase the chip or sector and select Do not Erase. 4. Problems encountered 4.1、cannot load driver JL2CM3.dll Add the eKeil4.7ARMSegger path to the win7 environment variables.
Previous article:Basic use of s3c2440 serial port
Next article:Learn S3C2440 bare metal development under Keil from 0 - 1 Using internal RAM
- Popular Resources
- Popular amplifiers
- Learn ARM development(16)
- Learn ARM development(17)
- Learn ARM development(18)
- Embedded system debugging simulation tool
- A small question that has been bothering me recently has finally been solved~~
- Learn ARM development (1)
- Learn ARM development (2)
- Learn ARM development (4)
- Learn ARM development (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- The US asked TSMC to restrict the export of high-end chips, and the Ministry of Commerce responded
- The US asked TSMC to restrict the export of high-end chips, and the Ministry of Commerce responded
- ASML predicts that its revenue in 2030 will exceed 457 billion yuan! Gross profit margin 56-60%
- Detailed explanation of intelligent car body perception system
- How to solve the problem that the servo drive is not enabled
- Why does the servo drive not power on?
- What point should I connect to when the servo is turned on?
- How to turn on the internal enable of Panasonic servo drive?
- What is the rigidity setting of Panasonic servo drive?
- How to change the inertia ratio of Panasonic servo drive
- AT91SAM7S256 serial port data loss
- Using DSP motor speed measurement and detailed explanation
- Low-power Qorvo chips enhance connectivity and reliability for new Luna smart home system
- Highlights of Bluetooth Mesh Technology
- ST NUCLEO-G071RB evaluation serial port printing and LED flashing
- Network port problem
- What is an ISO Connector?
- B-L4S5I-IOT01A development board has WIFI, Bluetooth, NFC, microphone, distance measurement, magnetometer, thermometer and hygrometer.
- [NXP Rapid IoT Review] Study various documents
- cc2640 data processing problem