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

学习打卡

[复制链接]
  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

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

    回复 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

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



    IMG_20230806_155441.jpg
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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

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

    1.png



    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

    积分
    262
     楼主| 发表于 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


    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

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


    vxdfbv.png
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    37

    回帖

    262

    积分

    中级会员

    积分
    262
     楼主| 发表于 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
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    9

    主题

    296

    回帖

    1724

    积分

    版主

    积分
    1724
    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, 2024-5-13 02:36 , Processed in 0.070528 second(s), 68 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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