Internet of Things|ARM|Keil Installation|MDK|Add V5 Compiler|Internet of Things Development Series Courses: Zero-Basic Fun with Cortex-M Series CPU-Study Notes (1)

Stage 1 - Course Background and Introduction

Question 1 What is the Internet of Things

1. The definition of the Internet of Things
uses communication technologies such as local networks or the Internet to connect sensors, controllers, machines, people and things together in a new way, forming a connection between people and things, things and things, and realizing informatization and remote control. Management control and intelligent network.
insert image description here
2. Composition of the Internet of Things
3. Examples of Internet of Things applications Smart home

Question 2 The role of embedded systems in the Internet of Things

1 The data source of the Internet of Things
2 The local area network source of the Internet of Things

Problem Three Different Embedded Systems

1: Different applications
2: Different characteristics of each.
The running CPU frequency is relatively low, and
the power consumption is low for long-term operation.
The function is relatively single
and the cost is reduced.

Course Introduction

Course content summary (what to learn)

insert image description here

course features

1: Explain a lot of engineering experience
2: Not only talk about how to apply, but also talk about the principle of application, so that the understanding is more profound
3: The learning threshold is low, and students are required to have a basic C language to learn
4: Through the way of large classes and small classes Zero-based learning. The whole course is interspersed with a small course specially designed for zero-based students - "Must Know about Embedded Development"
5: Lecture + guided teaching, focusing on the cultivation of learning methods
6: One course, learn Cortex-M0, M0+ at the same time , M3, M4 four series of CPU development, through comparative study, increase impression.

Course Requirements (How to Study)

Four more
: Listen more, read more, think more, do more hands-on I
1. Require students to listen carefully to the lectures, complete classroom experiments, after-class experiments and homework carefully;
2. Be able to take the initiative to read the books and articles recommended by the course, and take the initiative to check the information on the recommended website;
3. Require students to think more, take the initiative to think about our after-school problems, and have good ideas and opinions that can be discussed together;
4. Students are required to take the initiative to learn and do experiments after the course.

Purpose of the course (how to use it)

1: Understand the structure, working principle and programming model of Coex-M series CPU, which is convenient for understanding and analyzing problems in the future; 2: Be able to understand the
circuit schematic diagram in conjunction with the device manual;
3: Be able to understand the compiling principle of MDK, and be familiar with the development environment of MDK . Can skillfully use MDK to write and debug c language code;
4: Can skillfully program STM32F407 internal controller and external interface.
5: Understand the working principles and programming methods of commonly used peripherals (such as LED lights, buttons, buzzers), sensors and wireless modules. Be able to skillfully use these peripherals, sensors and wireless modules.
6: Understand the development process and development specifications of commercial projects, and be able to use the skills and knowledge learned above to independently complete the embedded system development part of simple commercial projects.

course agreement

Agreement on courses and topics
●: means that the course or topic explanation or experiment content is applicable to MO, M3, and M4 series CPUs;
◎: means that the course or theme explanation or experiment content is applicable to M3 and M4 series cPU;
○: Represents that the course or topic explanation or experiment content is only applicable to the M4 series of CPU;
agreement on knowledge points
★: Represents engineering experience or engineering knowledge points;
☆: Represents theoretical knowledge points;
△: Represents only need to understand Common sense;
After-school thinking questions
Why can the embedded system built by the Cortex-M series CPU occupy a dominant position in the perception layer of the Internet of Things?
Lesson1: A brief introduction to ARM and Cortex-M architecture CPUs

Talking about ARM

What is ARM

1. ARM is a company
founded in 1990 in Cambridge, England. Acom technology invested in Apple and vLSI capital. It makes profits by selling the IP core of the chip. Tip1: What is an IP
core
? An intellectual property core is a hardware description language program with specific circuit functions. , to achieve certain specific functions.
Examples of authorized manufacturers
Manufacturer name: typical product
Samsung: 2410 6410 S5PC210 Exynos4412 Exynos5250
Qualcomm: Snapdragon S1, s2 s3 s4 200 400 600 800 series
ST: STM32F0Xx STM32F1XX STM32F4XX
2 ARM is a CPU architecture
Tip2: ARM early naming rules jane Analysis
(1) ARM=Advanced RISC Machines
(2) ARM7TDMI-S
"t means that it has a high-density 16-bit thumb instruction machine expansion function; d means that it supports on-chip debugging function DEBUG; m means that it has a 64-bit multiplication instruction; i means increase embededice watchpoint hardware."

Features of ARM architecture CPU

Adopt RSC instruction set
1. Support ARM32-bit instruction set Thumb instruction set
Tip1: What is the instruction set of the CPU
Stored in the CPU to guide and optimize the hard program for CPU operation
Tip2: What is the RISC instruction set
compared with the CISC instruction set , That is, the reduced instruction set, all instruction cycles are consistent, and pipeline technology.
Reduce microcircuitry and cost.
2. Small size
3. Low power consumption
4. Low cost
5. High performance
6. High integration
7. Wide variety and wide application

ARM architecture CPU application example

The development history of ARM architecture and instruction set

1. The beginning
The first version was
ARM1 in 1985. The first heavy-duty version was ARM2 in 1986.
2. Explosive follow-up development (better than ARM9)
Tip1: The relationship between ARM architecture and instruction set

Introduction to Cortex Series Architecture

After the classic processor ARM11, ARM's products are named after Cortex and divided into three categories: A, R and M, aiming to provide services
for various markets. The Cortex series
architecture adopts the ARMV7 instruction set . Operating systems and user applications based on virtual memory, Android or digital TV, etc.; "R" series for real-time systems, real-time systems; "M" series for low-power and low-cost microcontroller CU applications, simple industrial control, industrial sensors ; The Cortex-M series CPU sets the global microcontroller (MCU) design standard. 1 Features · Low cost · Low power consumption · Smaller code requirements Good code reusability · Powerful performance · Multiple manufacturers and models to choose from And terminal applications to replace traditional 8-bit and 16-bit MCUs in the market with higher performance, lower power consumption and cost. And occupy a major position in the emerging IoT market Cortex-M0+ 2012.3 Cortex-M7 2014.9















insert image description here

The characteristics of the three brothers of the Cortex-M series family

insert image description here

Find him thousands of Baidu-Talk about the selection of CPU

How to select a CPU (or MCU)
Step 1: Find out the project requirements
Step 2: Select the model from the following aspects according to the project requirements ·
The CPU manufacturers or agents who can supply the CPU
. The operating temperature of the CPU Range Storage temperature range
. CPU performance (frequency architecture)
. CPU power consumption
. CPU supported interfaces
. CPU price
. CPU time to market and delivery cycle
. CPU volume
Tip1: Ambient temperature level of the chip
Commercial grade industrial grade vehicle Standard military grade
0-70 -40-85 -40-120 -40-150
Tip2: How to get more ARM information
https://www.arm.com/

after class homework:

1. Given the following case and alternative CPUs, how to select several terminal and node devices in the case? The
alternative CPUs are as follows:
1STM32F050 (Cortex-MO)
2 STM32F100 (Cortex-M3)
3 STM32F407 (Cortex- M4)
4 S3C6410(ARM11)
5 Exynos5250
In order to improve the safety of underground construction, a coal mining company needs to configure a safety warning and post-disaster data aid auxiliary system in the mine
insert image description here
. Information such as temperature, humidity, and proximity of the human body at each location, and send the information to the data center node through a short-distance LAN. Its characteristic is that it requires low cost for miles.
The data concentration node summarizes the data of each sensor node and uploads it to the information processing server through WE. Strong wireless transmission capability is required.
The audio and video collection node is used to collect information such as images and sounds, and upload it to the information processing server through WE). Strong wireless transmission capability and audio and video processing capability are required.
The ground handheld monitoring terminal is used to display various data, sound and image information under the mine.
2. Download the MDKI tool with version 50 from the MDK official website and familiarize yourself with the development environment after installation

Lesson2: If a worker wants to do a good job, he must first sharpen his tools

Introduction to AMDK-ARM

1 What is MDK-ARM?
The full name is Keil_ Microcontroller Development Kit for ARM
RealView. The MDK-ARM development kit originated from the German Keil company. It is a visual software development tool for various embedded processors currently launched by ARM company. Supports ARM7, ARM9, ARM Cortex-M, ARM Cortex-R and other architecture processors,
does not support coretex-A.
2 Functions of MDK-ARM
Provide a visual source code editing environment
Provide a visual project manager
that integrates C/C++ compiler, assembler, link tool, MAKE tool, and can directly assemble, compile, link and generate through a visual interface Object files
Support startup codes of various CPUs (more than 1,000 types), and their compilation and debugging
Provide software simulation debugging and simulation functions, which can realize soft simulation of various interfaces
Support various downloading and debugging tools, after connecting the downloading tools Directly implement board-level debugging
Provide Flash programming and download tools, after connecting the downloader, you can directly download the program into Flash Rom
Provide rich data manuals and help documents

insert image description here
3 The new version of MDK-ARM
was released in 2014 by uVersion5
. The latest version is: MDK-ARM uVision5.38
MDK-ARM5.38 Introduction
1 MDK5-ARM Architecture Introduction The MDK5-ARM architecture diagram is as follows:
MDK-ARM Version 5
Tip1: What is CMSIS
The Corex microcontroller software interface standard
was formulated by ARM to allow software companies and chip companies to follow a standard structure to release software solutions based on Cortex-M processors.
2 Features of MDK5-ARM
Provide a large number of software components and update the latest at any time components to improve development efficiency.
.Increased package management function, users can customize the required CPU support package or software component package
. Provide a large number of code templates, which is convenient for engineers to develop quickly.
Some peripheral drivers in MDK5.0 use CMSIS-Driver standard drivers. The software compatibility is good, and the ability of code reuse is improved. The compiler is optimized, and the compilation speed is faster than version 4 insert image description here
. Through the development environment of MDK5, various technical documents can be easily accessed

How to use MDK and introduction of other tools

MDK5.13 project creation and code addition
insert image description here
First download the pak corresponding to the development board: https://www.keil.com/dd2/pack/#!#eula-container
Note: If the keil version is older and the pack version is newer , an error may be reported when opening the project, and an old version in the past can be selected.

TIPS: V5 compiler (compiler version 5)

The latest version of Keil does not pre-install the V5 compiler (compiler version 5), copy and install the Compiler to the Keil_v5/ARM folder, and then select C99:
insert image description here

Guess you like

Origin blog.csdn.net/Medlar_CN/article/details/130346448