51单片机的学习可以在b站搜索江科大自化协(高质量传送门[1-1] 课程简介_哔哩哔哩_bilibili)
在51学习过程中一定一定要注重对外设模块化代码的整理,编写移植性、可读性良好的模块化代码无论是对后续复杂任务的编写还是对51的开发都是非常好的助力,能够极大的节省时间和精力。
一、入门试水阶段
简单任务:流水灯控制。
任务描述:
一、基本要求
利用 led 灯实现流水灯效果,用独立按键控制 led 亮灯数量的加减,流水速 度的快慢,并合理设置流水速度的上下限。按键的按下与放开不影响流水灯 的运行,所有动作统一在按键松开后进行。
二、提升部分
1、实现长按短按的功能区别,短按(1s 以内)实现基础部分内容,长按(1s 以上)直接进行该按键短按的功能,并每 1s 左右进行一次响应。例如, key1 用于流水灯加速,那么短按时在松开按键后加速,长按 1s 以上后 每 1s 加速一次,直至加速到设定的上限。
2、创新点,比如使能信号、复位信号、蜂鸣器提醒等。
入门任务解析:使用到了独立按键和LED灯模块,基本现象完成不难,但是对于按键的处理方式与较常规有所不同。
二、外设的认识
本阶段重在认识各种外设,熟悉其使用方法并了解其原理。
外设清单:独立按键、数码管、定时器、串口通信、中断、蜂鸣器、eeprom(AT24C02,I2C通信协议)、DS18B20温度传感器模块(单总线)、DS1302时钟模块
其中加粗的为学习的重点,斜体字为了解,只需要掌握应用方法。对于较为复杂的AD/DA模块我们将在32单片机中学习。
三、综合任务
完成外设的学习之后会有一个较为复杂的时钟系统的编写,作为51的收官之作。完成大作业之后对于单片机也算是真正的入门了。之后便可以尝试32单片机和FPGA。