【蓝桥杯单片机入门记录】认识单片机
目录
单片机硬件平台
单片机的发展过程
单片机开发板
单片机基础知识
电平
数字电路中只有两种电平:高和低
二进制(8421码)
十六进制
二进制数的逻辑运算
“与”
“或”
“异或”
标准C与C51
如何学好单片机
端正学习的态度、培养自学能力、要有远大的目标
要有学习的恒心、面对挫折的准备
树立起学习勇气
要追求质量而非速度,基础部分知识量大而小且必须
无论简单还是复杂的程序,一定要自己写出
无论出现什么样的错误,一定要找到错在哪
多写、多练、多想
学习过程中遇到的问题解决思路
单片机硬件平台
单片机的发展过程
-
-
-
-
- 单片机诞生于1971年,经历了SCM(SignalChipMachine)
- MCU(MicrocontrollerUnitSoC(System on Chip)三大阶段。单片机名字的来历一直是延续最早的单片微型计算机,简称单片机。
-
-
-
-
-
-
-
- 传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。高端的32位SoC单片机主频已经超过300MHz.
-
-
-
-
-
-
-
- 当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统型。
-
-
-
-
-
-
-
- 8051单片机
-
-
-
-
-
-
-
-
- 8051单片机最早由Intel公司推出的8位单片机,也是目前使用最多,最经典的一款单片机。其指令系统共有111条指令,属于复杂指令集系统(ComplexInstructionSetComputer,简称CISC)。内部采用冯·诺依曼结构,即数据总线和指令总线分时复用。
-
-
-
-
-
-
-
-
-
- 随后lntel公司将80C51内核使用权以专利互换或出让给世界许多著名IC制造厂商,如PhilipsNEC、Atmel、AMD、Dallas、siemens、Fuiutsu、OKl、华邦、LG等。在保特与80C51单片机兼容的基础上,这些公司容入了自身的优势,扩展了针对满足不同测控对象要求的外围电路,如满足模拟量输入的A/D、满足伺服驱动的PWM、满足高速输入/输出控制的HSL/HSO满足串行扩展总线I2C、保证程序可靠运行的的WDT、引入使用方便且价廉的FlashROM等开发出上百种功能各异的新品种。这样80C51单片机就变成了众多芯片制造厂商支持的大家族,统称为80C51系列单片机。客观事实表明,80C51已成为8位单片机的主流,成了事实上的标准MCU芯片。
-
-
-
-
-
-
-
-
- STC单片机
-
-
-
-
-
-
-
-
- STC单片机是我国宏品科技公司(STCmicro)推出的51单片机兼容产品,该家族的单片机芯片,以扩展的功能强大、成本低廉、型号众多、开发方便等优势,迅速占领了中国市场。
-
-
-
-
-
-
-
-
-
- 宏晶科技于2004/2005年推出第一款51内核的STC单片机,STC89C51RC/RD+系列,该系列的芯片片内具有高保密可编程10万次的Flash程序存储器、512字节到1280字节的数据存储器;6-8个中断源;3个16位定时/计数器;主频0~40M;具有ISP/IAP功能等等,这些功能都强于传统的51单片机芯片。
-
-
-
-
-
-
-
-
-
- 2010年宏晶科技公司开始推出STC15系列的芯片。该系列芯片是目前的主流产品。其强大功能包括:1个机器周期仅包含1个系统时钟周期(即所谓1T技术),而传统的51单片机是1个机器周期包含12个时钟周期,仅此就在主频相同的情况下,将指令执行速度提高到原有的12倍(在指令时钟数相等的情况下):1/0口线可达44根,每个口线驱动能力最大可达20mA(当然芯片总的功耗不能超过120mA/90mA):片内新增CCP/PCA/PWM模块、SPI串行通信模块、ADC模/数转换模块、看门狗以及大容量的程序存储器Flash和数据存储器RAM,具备ISP/IAP工作模式,等等。所有这些功能,都远远超出了传统的51单片机所具有的能力。
-
-
-
-
单片机开发板
-
-
-
-
- 发展背景简介
-
-
-
-
-
-
-
-
- 单片机技术自发展以来已走过了近20年的发展路程。小到遥控电子玩具,大到航空航天技术 等电子行业都有单片机应用的影子。针对单片机技术在电子行业自动化方面的重要应用,为满足广大学生、爱好者、产品开发者迅速学会掌握单片机这门技术,于是产生单片机开发板也称单片机学习板、单片机实验板。
-
-
-
-
-
-
-
-
- 单片机学习板的用途
-
-
-
-
-
-
-
-
- 单片机开发板是用于学习51、STC、AVR型号的单片机实验设备。根据单片机使用的型号又有51单片机开发板、STC单片机开发板、AVR单片机开发板。
-
-
-
-
-
-
-
-
-
- 除了包含单片机芯片以外,电路,便于初学者的学习。还集成有电子产片开发常用的LED、按键、数码管、AD转换等等
-
-
-
-
-
-
-
-
- 蓝桥杯单片机开发板
-
-
-
-
-
-
-
-
- 也是一款单片机开发板;但支持蓝桥杯单片机大赛;
-
-
-
-
-
-
-
-
-
- 板载资源(支持学习的功能)属中上等,板子电路逻辑较为复杂(但初学者无需担心)
-
-
-
-
-
-
-
-
-
- 有历年企业工程师及专家精心研制赛题(相当于小项目);
-
-
-
-
单片机基础知识
电平
-
-
-
-
- 定义
-
-
-
-
-
-
-
-
- 电平:就是指电路中两点或几点在相同阻抗下电压的相对比值;
-
-
-
-
-
-
-
-
- 理解
-
-
-
-
-
-
-
-
- 电平的测量实际上也是电压的测量,只是刻度不同而已;
-
-
-
-
数字电路中只有两种电平:高和低
-
-
-
-
- 高、低代表1和0。数字电路只认1和0
-
-
-
二进制(8421码)
-
-
-
-
- 数字电路中的两种电平的特性决定了使用二进制
-
-
-
十六进制
-
-
-
-
- 十六进制是二进制的简短表示形式
-
-
-
-
-
-
-
-
- 十进制中的0-15分别表示为十六进制的0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F;
-
-
-
-
-
-
-
-
- 熟练掌握二进制与十六进制之间的转换
-
-
-
-
-
-
-
-
- 转换规律:一般把四个二进制数放在一起转换成一个十六进制数,转换时先把二进制数转换成十进制数,再把十进制数转换成十六进制数;
-
-
-
-
-
-
-
-
-
- 如0001B--->1--->1H (B表示为二进制,H为十六进制) 1001B --->9 --->9H 1010B ---> 10 --->AH
-
-
-
-
二进制数的逻辑运算
-
-
-
-
-
“与”
-
-
-
-
-
-
-
-
-
- “与”运算是实现“必须都有,否则就没有”这种逻辑关系的一种运算。 运算符为“·”:,其运算规则如下: 0·0=0、0·1=1·0=0、1·1=1
-
-
-
-
-
-
-
-
-
- 单片机C语言编程中运算符为“&”
-
-
-
-
-
-
-
-
-
“或”
-
-
-
-
-
-
-
-
-
- “或”运算是实现“只要其中之一有, 就有”这种逻辑关系的一种运算,其运算符为“+“或”运算规则如下:0+0=0,0+1=1+0=1,1+1=1
-
-
-
-
-
-
-
-
-
- 单片机C语言编程中运算符为“|”
-
-
-
-
-
-
-
-
-
“异或”
-
-
-
-
-
-
-
-
-
- 异或”运算是实现“必须不同,否则就没有”这种逻辑的一种运算.
-
-
-
-
-
-
-
-
-
- 单片机C语言编程中运算符为“^”
-
-
-
-
标准C与C51


如何学好单片机
端正学习的态度、培养自学能力、要有远大的目标
-
-
-
-
- 单片机学习的目的,不仅仅是为了期末考试、获奖;
-
-
-
-
-
-
-
- 主要是学习一门技术,为后续课程、为以后工作、生活做储备;
-
-
-
要有学习的恒心、面对挫折的准备
-
-
-
-
- 这是一门以应用为主的专业课程(对很多同学来说可能是第一次)
-
-
-
-
-
-
-
- 部分同学电脑基本操作不熟练,比如:打字、中英文切换、特殊符号等等:
-
-
-
-
-
-
-
- 一项技术(技能)的学习,是一个简短而又漫长的过程;
-
-
-
树立起学习勇气
-
-
-
-
- 就是因为不会,所在才要学习:
-
-
-
-
-
-
-
- 就是因为基础差,所以更要努力;
-
-
-
-
-
-
-
- 技术是靠不断的学习、积累和锻炼出来的,没有所谓的投机取巧;
-
-
-
要追求质量而非速度,基础部分知识量大而小且必须
-
-
-
-
- 要有紧迫感的赶紧学习,但也不能过于急功近利;
-
-
-
-
-
-
-
- 能够熟练写出课程中的每一个程序,熟记每一个知识点,按照要求去做,莫偷懒;
-
-
-
-
-
-
-
- 九层妖塔,起于垒土:
-
-
-
-
-
-
-
- 无论简单还是复杂的程序,一定要自己写出
-
-
-
无论简单还是复杂的程序,一定要自己写出
-
-
-
-
- 抄写、默写、完全模仿、根据原理图自己写等;
-
-
-
-
-
-
-
- 实践是检验真理的唯一标准;
-
-
-
无论出现什么样的错误,一定要找到错在哪
-
-
-
-
- 程(教程)中演示没有问题的,一般就是没有问题的,自己耐心的找错、对错即可;
-
-
-
-
-
-
-
- 根据错误提示、根据错误现象、重复看、逐行复制、使用代码对比工具等;
-
-
-
多写、多练、多想
-
-
-
-
- 发散思维,自己变换题目花样、写出自己想要的程序;
-
-
-
学习过程中遇到的问题解决思路
-
-
-
-
- 养成自主学习、独立解决问题的好习惯。能自己尝试的问题就先自己尝试,哪怕是从头再来一遍
-
-
-
相关文章:
【蓝桥杯单片机入门记录】认识单片机
目录 单片机硬件平台 单片机的发展过程 单片机开发板 单片机基础知识 电平 数字电路中只有两种电平:高和低 二进制(8421码) 十六进制 二进制数的逻辑运算 “与” “或” “异或” 标准C与C51 如何学好单片机 端正学习的态度、培…...
Rust 数据结构与算法:3栈:用栈实现符号匹配
1、符号匹配 如: (56)(78)/(43)、{ { ( [ ] [ ])}}、(ab)(c*d)func() 等各类语句的符号匹配。 这里我们关注的不是数字而是括号,因为括号更改了操作优先级,限定了语言的语义,这是非常重要的。如果括号不完整,那么整个…...
用ESP8266快速实现WIFI红外遥控器(SoC模式)
1,硬件结构图 主要使用了esp8266 wifi模块和红外串口通讯模块。有了红外串口通讯模块,省去了单片机的串口通讯和红外编码程序,大大缩短开发时间。因为红外通讯模块不支持3.3VTTL电平,所以两个模块之间加了一个2路电平转换模块&…...
微服务OAuth 2.1认证授权可行性方案(Spring Security 6)
文章目录 一、背景二、微服务架构介绍三、认证服务器1. 数据库创建2. 新建模块3. 导入依赖和配置4. 安全认证配置类 四、认证服务器测试1. AUTHORIZATION_CODE(授权码模式)1. 获取授权码2. 获取JWT 2. CLIENT_CREDENTIALS(客户端凭证模式) 五、Gateway1.…...
Maui blazor ios 按设备类型设置是否启用safeArea
需求,新做了个app, 使用的是maui blazor技术,里面用了渐变背景,在默认启用SafeArea情况下,底部背景很突兀 由于现版本maui在SafeArea有点bug,官方教程的<ContentPage SafeAreafalse不生效,于…...
C#系列-使用 Minio 做图片服务器实现图片上传 和下载(13)
1、Minio 服务器下载和安装 要在本地安装和运行 MinIO 服务器,你可以按照以下 步骤进行操作: 1. 访问 MinIO 的官方网站:https://min.io/,然后 点击页面上的”Download”按钮。 2. 在下载页面上,选择适合你操作系统的 …...
生活篇——华为手机去除负一屏
华为手机去除如下图的恶心负一屏 打开华为的应用市场app 进入:我的-设置-国家/地区(改为俄罗斯)-进入智慧助手检查更新并更新智慧助手。 然后重复开始的操作,将地区改回中国,这样就没有负一屏了。...
2024牛客寒假算法基础集训营2-c Tokitsukaze and Min-Max XOR
来源 题目 Tokitsukaze 有一个长度为 n 的序列 a1,a2,…,an和一个整数 k。 她想知道有多少种序列 b1,b2,…,bm满足: 其中 ⊕\oplus⊕ 为按位异或,具体参见 百度百科:异或 答案可能很大,请输出 mod1e97 后的结果。 输入描述…...
C语言:指针的基础详解
目录 1. 内存 2. 取地址& 3. 指针变量 4. 解引用 4.1 *解引用 4.2 []解引用 4.3 ->解引用 5. 指针变量的大小 5.1 结论 6. 指针运算 7. void* 指针 8. const修饰指针 8.1 const修饰变量 8.2 const修饰指针变量 8.3 结论 9. 野指针 9.1 为什么会出现野指…...
PHP+vue+mysql校园学生社团管理系统574cc
运行环境:phpstudy/wamp/xammp等 开发语言:php 后端框架:Thinkphp 前端框架:vue.js 服务器:apache 数据库:mysql 数据库工具:Navicat/phpmyadmin 前台功能: 首页:展示社团信息和活动…...
VS Code中主程序C文件引用了另一个.h头文件,编译时报错找不到函数
目录 一、问题描述二、问题原因三、解决方法四、扩展五、通过CMake进行配置 一、问题描述 VS Code中主程序C文件引用了另一个.h头文件,编译时报错找不到函数 主程序 main.c #include <stdio.h> #include "sumaa.h"int main(int, char**){printf(&q…...
边缘计算:重塑数字世界的未来
引言 随着物联网(IoT)设备的激增和5G网络的普及,我们正站在一个计算模式的新纪元门槛上——边缘计算。这一技术范式将数据处理和分析推向网络的边缘,即设备或终端,为实时性要求较高的应用提供了前所未有的可能性。 目…...
2024 前端面试题 附录3
这里记录的是昨天和今天原篇的知识点补充 原篇地址: 2024 前端面试题(GPT回答 示例代码 解释)No.41 - No.60 2024 前端面试题(GPT回答 示例代码 解释)No.61 - No.100 2024 前端面试题(GPT回答 示例代…...
[Vue warn]: Duplicate keys detected: ‘1‘. This may cause an update error.
[Vue warn]: Duplicate keys detected: ‘1‘. This may cause an update error.——> Vue报错,key关键字不唯一: 解决办法:修改一下重复的id值!!!...
Docker-Learn(二)保存、导入、使用Docker镜像
1.保存镜像 根据上一节内容,将创建好镜像进行保存,需要退出当前的已经在运行的docer命令行中断里面,可以通过在终端里面输入指令exit或者按下键盘上的 ctrlD建退出: 回到自己的终端里面,输入指令: docker…...
第三百一十五回
文章目录 1. 概念介绍2. 基本用法3. 补充用法4. 内容总结 我们在上一章回中介绍了"再谈ListView中的分隔线",本章回中将介绍showMenu的用法.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在第一百六十三回中介绍了showMenu相关的内容…...
区块链(一): 以太坊基础知识
目录 什么是区块链?什么是以太坊?什么是加密货币?以太坊与比特币有什么不同?以太坊能做什么?什么是智能合约?以太坊社区以太坊白皮书 什么是区块链? 区块链是一个交易数据库,在网络…...
高级FPGA开发之基础协议PCIe
基础协议之PCIe部分 一、TLP包的包头 在PCIe的系统中,tlp包的包头的结构有许多部分是相似的,通过掌握这些常规的包头,能帮助理解在PCIe总线上各个设备之间如何进行数据的收发。 通用的字段 通用字段作用Fmt决定了包头是3DW还是3DWÿ…...
Vue核心基础1:数据代理
1 回顾Object.defineProperty方法 let str hello const person {name: 张三,age: 18 } Object.defineProperty(person, sex, {// value: 男,// enumerable: true, // 控制属性是否可以枚举,默认值是false// writable: true, // 控制属性是否可以被修改࿰…...
12 ABC串口接收原理与思路
1. 串口接收原理 基本原理:通过数据起始位判断要是否要开始接收的数据,通过采样的方式确定每一位数据是0还是1。 如何判断数据起始位到来:通过边沿检测电路检测起始信号的下降沿 如何采样:一位数据采多次,统计得到高…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...
从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践
作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...

