pdf

Teach you to learn 51 single chip microcomputer-C language version (Second Edition) (Song Xuefeng)

  • 2024-07-27
  • 8.32MB
  • Points it Requires : 1

This book aims to cultivate and train practical development skills of single-chip microcomputer systems. The book takes practice as the main line, allowing readers to gradually master the ability of single-chip microcomputer circuit design and program code writing through practical cases. The content of the book gradually expands the knowledge from the simple experiment of lighting a small lamp at the beginning, to the practical project development guidance of the multi-functional electronic clock at the end. It not only explains a lot of principle knowledge, but more importantly, it provides readers with ideas and experience for practical project development, so that readers can improve their ability to find, analyze and solve problems in practice. The editors of this book are all senior engineers with many years of practical project development experience. Therefore, the content of the book covers a large number of technologies and techniques used in actual projects, with strong real-time and advanced nature, paving a smooth road for readers to advance from single-chip microcomputer beginners to engineers. This book is suitable for self-study reading for beginners who have just come into contact with single-chip microcomputers, and can also be used as a single-chip microcomputer textbook for electronic technology-related majors in various colleges and universities. At the same time, it also has a high reference value for technical personnel in the electronics industry. Contents Chapter 1 How to learn MCU 1.1 What type of MCU to learn 1.2 The best way to learn MCU 1.3 Preparation for MCU learning 1.4 Setting up the MCU development software environment 1.5 Introduction to Keil 1.6 Answering readers\' questions Chapter 2 Light up your LED 2.1 Internal resources of the microcontroller 2.2 Minimum system of the microcontroller 2.2.1 Power supply 2.2.2 Crystal oscillator 2.2.3 Reset circuit 2.3 LED small light 2.4 Program code writing 2.4.1 Special function registers and bit definitions 2.4.2 Create a new project 2.4.3 Write a program to light up the small light 2.5 Download the program 2.6 Exercises Chapter 3 Basic hardware knowledge learning 3.1 Electromagnetic interference 3.2 Application of decoupling capacitors 3.3 Application of transistors in digital circuits 3.3.1 Preliminary understanding of transistors 3.3.2 Principles of transistors 3.3.3 Application of transistors 3.4 Application of 74HC138 38 decoder 3.5 LED flashing program 3.6 Exercises Chapter 4 Basic C language and the realization of running lights 4.1 Binary, decimal and hexadecimal 4.2 C language variable types and ranges 4.3 Basic C language operators 4.4 for loop statement 4.5 while loop statement 4.6 A brief introduction to functions 4.7 Keil software delay 4.8 Flowing light program 4.9 Exercises Chapter 5 Timer and digital tube basics 5.1 Logic circuit and logic operation 5.2 Timer learning 5.2.1 Preliminary understanding of timer 5.2.2 Timer register 5.2.3 Application of timer 5.3 Digital tube learning 5.3.1 Basic introduction of digital tube 5.3.2 Truth table of digital tube 5.3.3 Static display of digital tube 5.4 Exercises Chapter 6 Interrupt and dynamic display of digital tube 6.1 Array of C language 6.1.1 Basic concept of array 6.1.2 Declaration of array 6.1.3 Initialization of array 6.1.4 Use and assignment of array 6.2 if statement 6.3 switch statement 6.4 Dynamic display of digital tube 6.4.1 Basic principle of dynamic display 6.4.2 Blanking of digital tube display 6.5 MCU interrupt system 6.5.1 Background of interrupt generation 6.5.2 Application of timer interrupt 6.5.3 Interrupt priority 6.6 Exercises Chapter 7 Variable advanced and dot matrix LED 7.1 Scope of variables 7.1.1 Local variables 7.1.2 Global variables 7.2 Storage categories of variables 7.3 Preliminary understanding of dot matrix 7.4 Graphic display of dot matrix 7.5 Animation display of dot matrix 7.5.1 Vertical movement of dot matrix 7.5.2 Horizontal movement of dot matrix 7.6 Exercises Chapter 8 Advanced functions and buttons 8.1 Minimum system of single-chip microcomputer 8.1.1 Power supply 8.1.2 Crystal oscillator 8.1.3 Reset circuit 8.2 Function call 8.3 Formal parameters and actual parameters of function 8.4 Buttons 8.4.1 Independent buttons 8.4.2 Matrix buttons 8.4.3 Scanning of independent buttons 8.4.4 Debounce of buttons 8.4.5 Scanning of matrix buttons 8.5 Simple addition calculator 8.6 Exercises Chapter 9 Stepper motor and buzzer 9.1 Structure of single-chip microcomputer I/O port 9.2 On Pull-down resistor 9.3 Detailed explanation and examples of 28BYJ-48 stepper motor 9.3.1 Classification of motors 9.3.2 Detailed explanation of the principle of 28BYJ-48 stepper motor 9.3.3 Make the motor rotate 9.3.4 Rotation accuracy and in-depth analysis 9.3.5 The basis of writing utility programs 9.3.6 Utilities with comprehensive applications 9.4 Buzzer 9.5 Exercises Chapter 10 Example exercises and experience accumulation 10.1 Digital stopwatch example 10.1.1 Conversion between different data types 10.1.2 Adjustment of timing accuracy 10.1.3 Skills of byte operation to modify bits 10.1.4 Improvement of the digital tube scanning function algorithm 10.1.5 Stopwatch program 10.2 PWM knowledge and examples 10.3 Traffic light example 10.451 Division of MCU RAM area 10. 5 Application of long and short keys 10.6 Exercises Chapter 11 UART serial communication 11.1 Preliminary understanding of serial communication 11.2 RS-232 communication interface 11.3 USB to serial communication 11.4 I/O port simulation of UART serial communication 11.5 Basic application of UART serial communication 11.5.1 Three basic types of communication 11.5.2 Introduction to UART module 11.5.3 UART serial program 11.6 Communication example and ASCII code 11.7 Exercises Chapter 12 Pointer basics and preliminary understanding of 1602 LCD 12.1 The concept of pointer and the declaration of pointer variables 12.1.1 The address of the variable 12.1.2 The declaration of pointer variables 12.1.3 Simple examples of pointers 12.2 Pointers to array elements 12.2.1 Pointers to arrays Pointers and operation rules of elements 12.2.2 Examples of pointers to array elements 12.3 Character arrays and character pointers 12.3.1 Constants and symbolic constants 12.3.2 Examples of character and string arrays 12.4 Understanding 1602 LCD 12.4.1 Introduction to the hardware interface of 1602 LCD 12.4.2 Introduction to the read and write timing of 1602 LCD 12.4.3 Introduction to 1602 LCD instructions 12.4.4 Simple examples of 1602 LCD 12.5 Exercises Chapter 13 Application examples of 1602 LCD and serial port 13.1 Communication timing analysis 13.2 1602 full screen movement 13.3 Preliminary understanding of multiple .c files 13.4 Calculator example 13.5 Serial communication mechanism and practical serial port routines 13.6 Exercises Chapter 14 I2C bus and E2PROM 14.1 Preliminary understanding of I2C timing 14.2 Preliminary understanding of I2C addressing mode 14.3 Learning E2PROM 14.3.1 Timing of single-byte read and write operation of E2PROM 14.3.2 Timing of multi-byte read and write operation of E2PROM 14.3.3 Page writing of E2PROM 14.4 Comprehensive experimental learning of I2C and E2PROM 14.5 Exercises Chapter 15 Real-time clock DS1302 15.1 Concept of BCD code 15.2 Preliminary understanding of SPI timing 15.3 Real-time clock chip DS1302 15.3.1 Features of DS1302 15.3.2 Hardware information of DS1302 15.3.3 Introduction to DS1302 registers 15.3.4 Introduction to DS1302 communication timing 15.3.5 BURST mode of DS1302 15.4 Composite data types 15.4.1 Structure data types 15.4.2 Union data types 15.4.3 Enumeration data types 15.5 Electronic clock example 15.6 Exercises Chapter 16 Infrared communication and DS18B20 temperature sensor 16.1 Basic principles of infrared 16.2 Principles of infrared remote control communication 16.3 NEC protocol infrared remote control 16.4 Temperature sensor DS18B20 16.5 Exercises Chapter 17 Analog-to-digital conversion A/D and digital-to-analog conversion D/A 17.1 Basic concepts of A/D and D/A 17.2 Main indicators of A/D 17.3 Hardware interface of PCF8591 17.4PCF8591 Software Programming 17.5 A/D Differential Input Signal 17.6 D/A Output 17.7 Simple Signal Generator Example 17.8 Exercises Chapter 18 RS-485 Communication and Modbus Protocol 18.1 RS-485 Communication 18.2 Introduction to Modbus Communication Protocol 18.2.1 Modbus Protocol Features 18.2.2 RTU Protocol Frame Data 18.3 Modbus Multi-machine Communication Example 18.4 Exercises Chapter 19 Practical Project: Multi-function Electronic Clock 19.1 Type Description 19.2 Header File 19.3 Conditional Compilation 19.4 Project Practice 19.4.1 Project Requirements Analysis 19.4.2 Program Structure Planning 19.4.3 Program Code Writing 19.5 Exercises Chapter 20 Extended Example: Ultrasonic Distance Measurement* 20.1 Principle of ultrasonic distance measurement 20.2 Hardware preparation for ultrasonic distance measurement 20.3 Ultrasonic distance measurement and display on digital tube 20.4 Optimizing the accuracy of ultrasonic distance measurement Appendix A Common tools for single-chip microcomputer development A.1 Multimeter A.1.1 Functions and types of multimeter A.1.2 How to use a multimeter A.2 Oscilloscope A.2.1 Functions and types of oscilloscope A.2.2 How to use an oscilloscope A.3 Logic analyzer A.3.1 What is a logic analyzer A.3.2 Parameters of a logic analyzer A.3.3 How to use a logic analyzer A.3.4 Application example - analyzing UART, I2C, and SPI A.3.5 Advantages of logic analyzers over oscilloscopes in digital circuit applications A.4 Exercises Appendix B ASCII code character table Appendix CC language operators and priorities Appendix DKST-51 development board schematic 429

unfold

You Might Like

Uploader
MartinFowler
 

Recommended ContentMore

Popular Components

Just Take a LookMore

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
×