看冲哥视频分享学习心得打卡
今年准备学习单片机参加学校的比赛现在在这开始学习STC32系列单片机
感谢冲哥的视频分享,为单片机学习提供了宝贵的参考。STC32系列单片机作为国产高性能微控制器,具备丰富的外设资源、强大的运算能力和低功耗特性,是参加学校比赛的理想选择。建议从以下几个方面着手学习:<br><br>1. 掌握STC32的基本架构,包括CPU核心、存储器结构和时钟系统。<br>2. 深入学习外设模块,如GPIO、定时器、串口、ADC等,理解其工作原理和配置方法。<br>3. 熟悉Keil C51开发环境,掌握基本编程技巧和调试方法。<br>4. 通过实际项目练习,如LED控制、按键检测、PWM输出等,巩固所学知识。<br>5. 关注STC官方技术文档和社区论坛,及时获取最新信息和技术支持。<br><br>学习过程中,建议制定详细的学习计划,理论与实践相结合,循序渐进。同时,可以组建学习小组,相互交流,共同进步。期待在比赛中看到您的精彩表现!<br><br>[本文内容由国芯人工智能辅助生成,仅供参考] 【打卡第一集】认识单片机
一,什么是单片机
简单来说单片机是一种功能简化的计算机,能够实现特定的控制应用。它通过编写程序,读取信号并进行运算,从而在不同设备中执行预定功能,广泛应用于仪器仪表、家用电器和医疗设备等领域。
二,单片机能做什么
单片机在仪器仪表中的应用非常普遍,例如电压表和电流表。它们通常由单片机控制,能够准确检测并显示电压或电流的数据,帮助用户进行测量。
在家用电器方面,单片机可以实现定时和控制功能。比如电饭煲和洗衣机通过单片机设定工作时间,确保用户能够方便地使用这些设备,达到预期效果。
三,常见问题的解答
1,51单片机并不是被淘汰只是侧重的领域不同
2,什么时候学习都不算晚
3,跟着项目去学习单片机最好入门
4,单片机不是越贵越好,适合自己的项目要求的就是最好的
四,学习建议
学习单片机需要保持专注和耐心。建议学习者每天花一定时间看视频教程,逐步积累知识,避免因干扰而中断学习进程。
动手实践是学习单片机的重要方式。仅仅观看教程而不实际操作会导致对知识的理解不深,我们应积极动手尝试,以便发现并解决问题。在学习单片机时,发散思维是关键。掌握一项技术后,能够开发出多种功能,关键在于自己的想象力和创造力,使用官网和手册可以帮助我们发现更多可能性。 【打卡第二集】了解硬件
一,硬件介绍
实验箱介绍
硬件简介
1,红外发射/接收
一般在遥控中起到关键作用,可以让我们更加方便的控制模块功能
2,数码管
数码管是生活中常见的显示元件,广泛应用于家电和电子设备中。它的基本原理是通过点亮不同的段来显示数字和字母。
3,LED灯
流水灯应用是单片机学习中的经典实验。通过控制LED灯的亮灭,能够理解基本的编程逻辑和电路控制
4,万能板
如果后续还需要一些实验箱没有的功能,可以通过万能板自行焊上去,扩展功能
5,NTC测温
主要运用就是电子体温计。NTC测温与数字温度传感器18B20的主要区别在于它们采集温度的方式。NTC测温能以更快的速度连续采集电压信号,而18B20则通过间隔采样,可能无法捕捉到所有细微变化。
6,ADC按键
可以通过一个引脚来读取16个按键,经常适用于引脚少的单片机
7,基准电压
校准在ADC中的重要性,通过设定基准电压来确保电压采集的准确性。如果单片机检测到的电压与实际电压存在偏差,校准可以帮助修正这种误差,从而提高测量精度。
8,PWM模拟DAC
DAC的应用包括生成波形,例如正弦波,这在许多电子设备中扮演着关键角色。通过调节输出电压,DAC可以控制音频、视频信号等,使其更具表现力。
9,矩阵按键
矩阵键盘的设计使得在有限的引脚数量下实现更多的按键功能,适用于密码锁等设备。通过矩阵连接,可以有效减少所需的电路复杂度和成本.
10,独立按键
独立按键的使用场景多样,如在倒计时装置和电子产品中。每个按键单独接线的方式使得操作更为简单直观,适合用于多种应用场景,包括安全设备和游戏控制器。
11,LCD接口
LCD显示模块集成了汉字字库,能够显示多种字符,方便交互。通过模拟软件,可以在没有硬件的情况下学习和设计界面。
12,flash扩展
flash扩展用于存储图片和汉字等大文件,支持实时存储功能。它能够有效地存储的重要数据。
13,蜂鸣
蜂鸣电路在日常应用中被广泛使用,主要用于报警功能。
单片机的工作电压范围为1.9到5.5伏。 【打卡第三集】开发环境的搭建
1.STC-ISP软件的下载
STC-ISP软件是开发STC家的单片机的必备神器,他不仅能下载STC全系列单片机的程序,甚至集成了虚拟显示功能,范例程序程序,在线生成工具,驱动安装等等功能
2.STC32手册下载
ISP软件内下载或者官网下载https://stcai.com/xpsc
3,PDF下载
可以使用福晰阅读器,这样方便打开大型的pdf,以便使用查找和搜索的功能
4,搭建c521开发环境
在STC手册中有详细的教程,告诉我们如何安装keil以及设置教程,跟随手册步骤安装即可
5,程序包下载
可以通过STC-ISP程序去下载对应的程序包,当然也能在官网下载相关程序包
6,第一个工程的编译和下载
将板子的线通过usb连接电脑,按下p3.2按钮再松开off按钮就,然后松开p3.2按钮进入usb下载模式
编译则需要再ISP中打开文件编译成HEX文件即可烧录单片机
【打卡第三集】开发环境搭建
1,STC-ISP软件的下载
STC-ISP软件是开发STC家的单片机的必备神器,他不仅能下载STC全系列单片机的程序,甚至集成了虚拟显示功能,范例程序程序,在线生成工具,驱动安装等等功能。
2,STC32手册下载
ISP软件内下载或者官网下载
3.PDF下载器
由于STC手册庞大,如果不使用专门的软件会导致卡顿。使用如福晰阅读器等还能方便后续对资料的查找
4,搭建C251开发环境
在STC手册有详细步骤,使用对应的查阅功能跳转,然后一步步跟随安装即可
5,程序包下载
可以通过ISP的软件下载程序包,也可以去官网下载对应的程序包
6,第一个工程的编译和下载
将板子通过USB线链接电脑,按下P3.2按钮,此时按下并松开OFF按钮,在松开P3.2进入USB下载模式。
烧录程序需要将文件编译成HEX文件使用ISP进行烧录 【打卡第四集】建立工程点亮LED
一,LED点亮原理
LED灯的点亮原理包括正负极的连接以及电流通过时的电压变化。
单片机的GPIO口可以实现输入和输出功能,具体操作包括读取外部电平和输出电平。通过正确连接,可以直接利用单片机控制LED灯的亮灭。
原理图
、
根据原理图可知,我们需要给P40和P60低电平
二,新建工程
跟随手册的步骤新建工程
新建demo.c文件然后按照手册写下第一个工程代码,最后记得勾选创建HEX文件的选项,记得在写引脚地址时参考对应单片机的手册,最后导入ISP烧录程序即可
三,点亮LED
1.思考LED为什么不会亮?
引脚不对。
2.怎么控制单独的一个引脚?
sbit P00 = P0^0; //选择P0.0引脚
3.怎么控制这个引脚输出电平?
P00 = 1; //输出低电平
4.书写规范
一行一句,大括号缩进(需要设置),缩进四格,注释完整
5.注释符号
//单行注释
/* */多行注释
6.学会搜索
CTRL+F
四,实现自动下载工程
通过移植USB_CDC驱动。USB-HID和USB-CDC都可以实现不停电下载,在程序改变时直接下载
stc.h头文件中通过stc32g.h定义了很多sfr,使用头文件很方便
具体细节操作还需要根据视频详解
【打卡第五集】
1,C语言printf函数的实现
编译后通过ISP的串口助手就能看到printf返回的结果
2,进制转换
因此P6=0X00可以表示为P6^0-P6^7都为0,同理针脚间的值可以用二进制转换
3,数据类型及其范围
【打卡第六集】LED闪烁和花式点灯
一,基于Delay实现的LED闪烁
1秒=1000毫秒=1000000微妙
注意修改ISP中频率改为程序中定义的24000000UL
编写delay函数
voiddelay_ms(u16 ms)
{
u16 i;
do{
i = MAIN_Fosc / 6000;
while(--i);
}while(--ms);
}
通过修改p60的高低电平加上延迟函数实现灯的闪烁
二,函数的使用
在模块化编程里,函数使用分为如下三步:
1.函数定义'·
返回值·函数名称(入口参数){
函数要执行的功能
}
@返回值:没有返回值就是void
@函数名称:避开关键词,不重复,非特殊字符随便取
@入口参数:类型+名称,多个参数“,"分开,空就写void
2,函数声明
返回值 函数名称( 入口参数 );
3,函数调用
函数名称( 入口参数 );
三,模块化编程
新建xxx.c和xxx.h文件,代表一个功能块。
xxx.h格式:
#ifndef __XXX_H
#define __XXX_H
调用头文件
函数声明...
#endif
xxx.c格式
#include “xxx.h”函数定义
模块化编程能让代码更清晰,特别是在大型项目中更需要
.h文件中需要使用#ifndef xxx避免头文件重复引用
.c文件需要#include对应的.h文件
模块化编程可以使我们的逻辑更加清晰,代码给容易维护。 【打卡第七集】按键点灯
一,按键的原理
二,按键代码的实现
基础的代码逻辑大致为
if(KEY == 0){
Delay_ms(20);
if(KEY == 0){
功能的主体
}
}
三,按键的应用
这里的核心是使用<<移位操作符来实现流水灯的效果
因为每按一下就会往前进位并且高位舍去低位补零,这样控制引脚的电平流水一样的变化
页:
[1]
2