单片机怎么入门

单片机入门摘要

•了解单片机基础知识,形成对单片机较为深刻的认识,掌握单片机最小系统电路;

•C语言中常用的基础知识;

•学习使用51单片机的开发环境及下载过程;

•编写流水灯、蜂鸣器、继电器实验程序,熟练掌握单片I/O口的操作及延时方法。

什么是单片机

​ 在一块芯片上集成了:CPU、振荡电路、ROM和RAM存储器、定时/计数器和并行/串行I/O接口等,具有一定能功能的计算机称为单片微型计算机,简称单片机。 如图所示的就是单片机,不过由于技术的发展,单片机变得越来越小,种类越来越多,像合泰,松翰,STC,新唐,中颖等国产单片机也在市场上发挥了重要作用。

1565333482756

我最近用到的单片机封装是这样的(我用的是第二个),封装很小了,但是感觉还是太大了。

1565333880265

单片机里面是这样的:

1565334383398

现代的工艺把各种寄存器集成到一起,就成了我们所谓的“单片机”。

什么是单片机最小系统?

最小系统可以理解为让单片机工作的最简单的线路,其实单片机的最小系统可分为三部分:1-电源部分;2-晶振部分;3-复位部分。如图就是单片机最小系统。能工作,能运行的系统。

1565335825598

学单片机到底学什么 ?

•1、通过I/O口来控制外围的器件

•2、通过I/O口接受外围模块的电压

•3、保证在恰当的时间作出正确的动作

以下是我以前学习用的开发板的电路集合,大部分项目只用到下面的一个或几个功能。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
	8只3mm LED灯,共4种颜色,可以学习流水灯,跑马灯基础编程。
 1只0.5寸共阳数码管,方便学习数码管显示的基本原理和使用数码管显示数据。
 8位0.36寸共阴数码管,2个74HC573锁存,通过控制段锁存和位锁存可进行数码管的静态显示与动态扫描显示的工作。
 1只1.9mm红色8x8点阵,2个74HC573锁存。用于练习使用LED屏显示图形、字符。
 LCD1602插座,10K电位器调节比度,即插即用。可以实现多种模式的显示,如移动显示、滚动显示、反白显示、光标显示闪烁等。
 LCD12864液晶标准插座,10K电位器调节比度,可以连接多款并口液晶,也可以直接插接我们配套的彩屏,练习使用写入用户自编图形或者字符,显示图片,显示数字等。
 8个独立按键,人机接口输入部分重要模块,按键可以自由配置,可进行外部中断控制实验、数据的增减控制、继电器开关控制等
 4x4标准矩阵键盘,带有中断信号输入接口,可以学习行列扫描、反转扫描、定时扫描、中断扫描等。
 高精度热敏电阻,通过AD采集转换可以测量环境温度变化等。
 高精度光敏电阻,通过AD采集转换可以测量光照度变化等。
 2路独立的18B20温度传感器接口,预留扩展插针,自由度更高,可以实验温度采集,超温报警和温度上下限设置等
 蜂鸣器,可播放音乐,可进行多种声音模拟,如警笛、消防车声、电子琴等 时钟芯片DS1302,32.768KHz时钟源晶振,另配备用电源CR1220纽扣电池,可编写日历时钟的编程显示、上位机在线更新时钟等程序
 EEPROM存储器24c02,IIC总线接口。使用方便灵活,可实现单字节、多字节数据的存储,掉电保护数据、开机次数记忆等。
 串行信号转并行信号芯片74HC164,通过模拟串口信号输入,输出8位并口信号,多用于扩展单片机本身端口。
 反向器CD4069,可以做门电路基础实验,信号组合试验等
 PCF8591芯片,8位数模/模数转换芯片,提供4路AD输入,和1路DA输出。4路输入接口分别连接到2个电位器的电平测试引脚,电平调节值范围0-VCC,端口也可自行外接;DA端口连接到一只LED灯,端口也可外接。
 优质隔离性光耦,通过控制光耦的1、2引脚的开关来隔离控制3、4引脚的通断(开发板3、4引脚的通断用一只红色led反映)。
 2路红外避障电路,使用触发器CD40106振荡出38K基波调制信号,单片机只要控制芯片使能脚即可发出38K红外载波信号;1路高灵敏度,宽范围一体化红外接收头,可以做避障、通讯功能等实验。使用我们的配套遥控器可以实现遥控解码控制等。
 MAX232串口电平转换,2路串口(DB9公口和母口),可以使用串口进行程序下载、与上位机之间串口通信等。
 PL2303为USB转换下载芯片,通过一根USB线与电脑进行程序下载,数据交换通信。
 RS485芯片,学习485硬件控制原理。可以提高串口的通信距离。
 PS/2接口,可以连接PS/2标准输入设备,学习PS/2协议原理和技术。
 标准AT-ISP接口,选购标准AT下载器可以进行AT89s系列51芯片和Atmega公司的AVR芯片下载和使用

​ 所以学习单片机一定要对硬件有一定的基础,I/O(输入/输出引脚)涉及到很多相关的知识,比如按键需要上拉或者下拉,晶振的准确性影响大部分时钟的准确性,还有I2C,SPI,CAN等各种协议。如果没有一定的基础,贸然直接学习可能会受到很大的挫折,打击学习的积极性。

C语言中常用的基础知识

大部分的单片机都可以通过C语言来编程了,在编程的时候用到的知识有:

1.了解基本的C语言结构和相关的关键字,比如sbit,data,code ;

2.会基本的参数声明,赋值、初始化;

3.会用基本的if-else编程,知道主函数的mian();

4.了解ASCII,知道二进制、十进制、十六进制之间的转换。

其实只要稍微学习一下C语言就可以着手编写自己的程序了。

单片机的开发环境及下载过程教程

内容太多,请参考这篇文章

https://zhuanlan.zhihu.com/p/77376751

学单片机可以做什么 ?

•秒表

•循迹小车

•数字台灯

•智能仪表

•游戏机

•冰箱、彩电、洗衣机控制电路

具体的源码和程序我已经放到我的github空间了,大家放心下载。

https://github.com/mmdanielmm/Project-update-weekly

怎样才能学好单片机?

•孰能生巧,一定要多动手写一些程序,不能仅仅局限在视频上,杜绝眼高手低;

•多去动手焊一些外围模块、最小系统,这样可以增加对电路的认识;

•多去查一些数据手册,学会看数据手册,不能完全依赖与百度。

Daniel wechat
如果有帮助就支持一下我吧,或者关注我一下吧!