找回密码
 立即注册
查看: 3682|回复: 20

学习打卡

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-4 14:47:10 | 显示全部楼层 |阅读模式
第一集 了解了单片机是什么,常见单片机的式样,有些什么样的功能,能拿来做些什么以及对于学习单片机的一些建议。

第二集介绍了红外发射管和红外接收管的的工作方 式,电压比较器有怎样的作用,数码管、LED灯、矩阵键盘、LCD。NTC以及DS18B20温度传感器测温的区别, 在同等条件下,NTC测温比DS18B20更快,也更精确。ADC按键,只需一个引脚检测到16个按键的读取,它是以基于基准电压来帮助判断判断按键的按下,在应用到多个按键时可以节省IO口资源。24C02外部存储器的作用,保存一些重要的参数数据。
对于ADC读取按键的操作,期待后续的讲解。

第三集如何把写好的程序下载进单片机

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-4 20:39:12 | 显示全部楼层
第四集上
LED灯亮灭原理, 我的理解是和普通的二极管特性一样,单向导电性,正向导通反向截止,正向电压减去反向电压的值大于导通电压,电流就会通过,反之就截止。
用1表示高电平,0表示低电平。
IO口的含义,用来做电平的输出或输入读取,和80C51单片机一样的分组,一组8个引脚。
视频中LED电路图部分中的三级管作用其实相当与一个开关,它是PNP型的,按图中的设计,基极给低电平,它会处于一个饱和的工作状态。
1.png
建工程,写代码。一开始还疑惑不用头文件,后面才看到是自己去定义P0以及对应的寄存器地址,然后每一行代码,每一个操作为什么这样做,作用是什么,讲解很仔细。

第四集下
更加便捷的下载方法,讲真每次下载还要按两个按键,也是挺麻烦的,好在有解决办法。介绍到了stc32g.h头文件,写代码更方便了。
如果函数写到了主函数后面,需要在主函数前面做一个声明,才能调用。以后新建工程的模板有了,节省时间。总的来说有种回到初学51单片机的时候,写代码直观,直接让IO口来输出的方式,很习惯。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-5 14:31:13 | 显示全部楼层
第五集上
学会了如何使用单片机把数据发送到电脑显示出来,介绍了ASCII码字符表,学会如何把一些特殊的字符能够打印出来,以及进制之间的转换,进制计算,常见进制的含义 。
第五集下
算术运算符的使用,加减乘除,取余和取整的操作,能把运算结果在电脑上显示出来。位运算符的使用,以及它的作用,写到程序里的效果, 左移<<,与& ,huo |。赋值运算符的使用。介绍了数据类型。

第六集上
学到#define的应用,系统时钟的选择。如何写一个延时函数,应用延时函数,实现LED灯的闪烁。while()和do  while()的区别和使用,前者条件为真才能执行,后者不管条件真假,都会至少运行一次。
第六集下
函数的定义、声明以及调用,取函数名字要避开关键字、非特殊字符,并且不重复的名字。后缀 .h 的文件定义方法
#idndef  +名字
#define   +名字
内容(包括函数声明)
#endif //以这句结尾
在main .c  文件里包含  (名字.h) 文件,就能调用 .h文件对应 .c文件里写好的函数。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-5 22:09:33 | 显示全部楼层
第七集上
按键本质上是两个引脚之间的通断,按下之后有的是导通,有的是断开。机械开关在按下时有抖动,抖动的时间一般是10ms,经典按键操作,按键消抖,确实经典。不消抖,当按键按下时,比如点灯,不亚于抛骰子猜大小。
判断按键有没有按下,==两个等号表示判断。
if(引脚==0){}
运用取反的操作,~,来点灯,每一次按下的状态都与上次相反,上次是亮,下次就是灭。
判断按键的弹开。
while(引脚==0);
当按键按下时,该引脚检测到的信号一直是低电平,所以程序会在这里等待到按键弹开,即引脚变为高电平时,程序继续执行。

第七集下
用按键按下来实现,流水灯的效果。
数组定义:
数据类型 名称[长度 ]={数值};
使用
  赋值:名称[ 索引]= 数值
索引就是由0往上的正整数值。
用数组来实现流水灯效果。哈哈,我已经入门%80了!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-6 17:18:44 | 显示全部楼层
第八集
根据蜂鸣器内有无震荡源,分有源蜂鸣器和无源蜂鸣器。通过按键控制蜂鸣器响起来,在程序中和按键控制LED灯的亮灭原理一样,改变一下引脚就行。
蜂鸣器的实战应用 屠龙刀暂时做不了。

第九集
认识各种各样不同功能的数码管,本质是点亮内部的LED来显示。认识数码管的引脚对应内部二极管单元的排列。
数码管分共阴极和共阳极,共阴极是内部二极管反向端都连接在一起接地,共阳极是内部二极管同向端都连接在一起接电VCC。
四位数码管的介绍,如何点亮四位数码管中的一个8,给需要点亮的那位数码管的COM端一个低电平,给该位数码管的8个段给高电平就能亮。 延时一段时间,自动显示0-9。

屠龙刀到了,程序也下载成功了,不过遇到点问题,已在对应帖子求问。



IMG_20230806_155441.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-7 10:25:53 | 显示全部楼层
第十集
数码管动态刷新,多位数码管同时使用,先使能第一位数码管,即给控制第一位的数码管一个低电平,然后延时一会,再使能第二位数码管,延时一会,以此类推,总的延时时间加起来不能大于20ms。这是视觉残留的一个假象,人的肉眼难以分辨。
每位数码管的开启使用数组,开启之后就给相应要显示的段码数值数组,比如0,或者1,然后延时,数组的索引值加一,定义一个变量++,就行,当下一次循环到来的时候就会自动开启下一位数码管,并显示相应数字。

第十一集
定时计数器:
1.设置为定时器时,可实现硬件计时,或者每隔一段固定时间完成一项操作。
2.设置为计数器时能够对脉冲进行计数
3.替代delay,提高CPU的效率。
中断,停止主程序正在执行的部分,转而去执行中断服务函数里面的内容。
定时器中断:定一个时间,时间到了后就执行中断操作。
定时器T0,定时1ms的设置,中断服务函数中P2高4位置0,现象是点亮4盏灯。

1.png



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-7 13:25:34 | 显示全部楼层
第十二集
计数器的设置,外部计数模式,外部下降沿(高电平变成低电平)触发。
计数器0,按键按一下,计数值就溢出,然后进入中断函数,LED0的状态翻转一次。
1.png



定时器0与计数器1一起启用,按键按下,定义的全局变量Count_T1计数+1,并且LED3的状态翻转一次。计数器1中当Count_T1大于或等于8时,定时器0中会让LED5状态翻转一次,
并让计数值归0,定时器中每到2秒,LED0状态翻转一次,即2s的LED闪烁。

2.png


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-7 13:28:17 | 显示全部楼层
ZZlibray 发表于 2023-8-7 10:25
第十集
数码管动态刷新,多位数码管同时使用,先使能第一位数码管,即给控制第一位的数码管一个低电平,然 ...


vxdfbv.png
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:101
  • 最近打卡:2025-04-28 20:23:24
已绑定手机

5

主题

43

回帖

110

积分

注册会员

积分
110
发表于 2023-8-7 16:07:44 | 显示全部楼层
第十三集总
理清程序的逻辑思路。应用模块化的编程(.c+,h文件)。做好一些重要参数变量的注释,对重要的函数进行说明。
修饰符extern的使用,用在变量或者函数声明前,用来说明“此处变量/函数是在别处定义的,要在此处引用”。
extern 修饰的变量不能给初值。

bdata位寻址变量的使用。
u8 bdata LED=0x00;
sbit LED0=LED^0;
sbit LED1=LED^1;

模块化就是把需要的某种功能在 .c文件中写主体部分,如IO口的初始化函数,或者是定时计数器的初始化函数,也可以写达到某种效果的函数,这些函数需在对应的 .h文件中进行声明。后面要使用这些功能,直接在主程序最前面包含 “xx.h”文件,就可以调用这些函数了。
快捷更改函数名称。
for循环的使用,for( ; ; ),第一个是变量初始值,第二个是条件判断关系,为0,则结束循环,第三个是变量值更改,一般是自增或自减,for为有限次的循环,最终是要结束循环的。

第十四集
在按键数量较多时,为了减少I/O口的占用,使用矩阵按键。
8x8矩阵按键控制控制原理,首先把四个按键设为高电平,然后另外四个拉低,再单独的把这低电平的四个按键一个一个拉低,即8个I/O口始终保持只有一个I/O口是电平,这样之后只要读取高电平的4个I/O口哪个被拉低了,横轴和纵轴都为0,这样就能知道哪一按键被按下。

第十五集
中断系统的介绍。
外部中断0程序的编写。


先设置触发模式,如IT0=1,为为外部中断0下降沿触发,IE0=0,清除中断标志位,EX0=1,使能外部中断0,EA=1,允许中断。 设置比较简单。
外部中断1设置。

1.png


asd.png
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-28 14:10:14

19

主题

385

回帖

2508

积分

版主

积分
2508
QQ
发表于 2023-8-7 17:10:11 | 显示全部楼层
楼主对我们的免费公开课 认可/支持/给力,建议主动联系我们同事
=====提前获得 【免费+包邮送】的 STC32G12K128实验箱 或 STC8H8K64U实验箱
=====现在送的,都可以利用MCU自带的 硬件USB直接仿真,硬件USB直接下载


【免费+包邮】 送/申样/采购 可加 如下 QQ或微信联系
加STC华南区客服刘经理QQ: 3398500488 ;微信:18106296592  要求 【免费+包邮】 送, 还免费教仿真  
加STC华南区客服曹经理QQ:1933892258 ;微信:18106296595 要求 【免费+包邮】 送, 还免费教仿真
加STC华东区客服聂经理QQ:2593903262;微信:18106296598  要求 【免费+包邮】 送, 还免费教仿真
加STC西北区客服孙经理QQ: 1347154513 ;微信:18106296593  要求 【免费+包邮】 送, 还免费教仿真
加STC华北区客服石经理QQ: 1638975601 ;微信:19952583876  要求 【免费+包邮】 送, 还免费教仿真
加STC华中区客服唐经理QQ:2571301708 ;微信:18106296589 要求 【免费+包邮】 送, 还免费教仿真
加STC东北区客服张经理QQ:3141888640 ;微信:19952583265   要求 【免费+包邮】 送, 还免费教仿真
加STC西南区客服张经理QQ:3141888640 ;微信:19952583265   要求 【免费+包邮】 送, 还免费教仿真
工作时间:  8:30-12:00,13:00-17:30(周一 到 周五, 法定节假日除外)


【免费+包邮】 送/申样/采购传统电话热线:0513-55012928、0513-55012929、0513-55012966
工作时间:  8:30-12:00,13:00-17:30(周一 到 周五, 法定节假日除外)


QQ:1463035472,微信:19952583954
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 13:33 , Processed in 0.146516 second(s), 104 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表