找回密码
 立即注册
楼主: 布丁橘长

视频教程-32位8051-屠龙刀-第0-100期合集-布丁橘长

   火... [复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-13 17:08:34 | 显示全部楼层
第5集学习笔记:电量共阳极LED,需要先将IO模式设置为准双向口|开漏|推挽(这三种模式都能承受20mA的灌电流)能保证系统正常运行(芯片不会爆炸),其他地方学习到,芯片总工作电流(IC的入口VCC至出口GNG之间)一般建议保证电流小于90mA为宜。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-13 17:33:47 | 显示全部楼层
第6集学习笔记:使用Delay函数实现led的闪烁效果,delay函数的原理是让CPU一直作数据运算已实现对时间的消耗和达到所需要的间隔延时时间。另外WTST这个,程序读取等待控制寄存器,其作用是控制cpu要去执行一条指令的时候的中间等待时间,即每条指令实际执行时钟数=指令时钟数+程序存储器的等待时钟数。stc32g12k128工作在35Mhz以下的主频时,建议将WTST改成0,以提升CPU更快的运行程序的各个指令。stc32g12k128的A版芯片的WTST上电默认为7,编程中看系统设置的主频情况来更改WTST的值。(WTST直接影响单片机代码的运行速度)。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-13 18:01:43 | 显示全部楼层
第7集学习笔记:对于单片机delay函数的编写和使用,最理想的办法是通过板机+示波器的方案实现精准控制延时时间。原本的习惯是使用stc-isp的延时计算方式得到相应的cpu对应账主频的1ms的delay函数得到1ms,再用这个函数为主题更改为delayxms,现在通过老师的实例的话,直接采用老师的自适应1ms的delay函数。后期运用仍然可继续采用老师的自适应delay函数。至于volatile关键字意在告知编译器,不可优化此变量的过程计算,此变量是一个易变化变量。请编译器注重处理过程并执行(粗鄙理解)。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 10:55:46 | 显示全部楼层
第8集学习笔记:流水灯的实现可通过for或者是while循环,循环内添加多行代码中间添加delay函数,也可使用取反符号和移位符来控制实现。需要自己理解BCD码,8位变量=0x11111111(依次是84218421),16位变量=0x1111111111111111(依次是8421842184218421),单片机操作,需要加强编程者本人对于十六进制的敏感度。对位操作的熟悉程度。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 11:01:07 | 显示全部楼层
第9集学习笔记:流水灯的实现通过数组的实现,将每一位led灯的亮灭所对应的8位二进制所对应的0xFF(16进制值)放进数组,array的每一个元素即可表示每一种led的亮灭组合,即后续使用中,只需要P2 = array其中一个元素即可实现一种led的亮灭控制。考虑到后期数码的显示和各种复杂灯效的实现,通过数组来控制能实现更快更简洁的代码实现过程。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 11:05:59 | 显示全部楼层
第10集学习笔记:花式流水灯的实现,每个等效封装成一个子函数,灯效子函数的内部,通过合理的二进制相加和取反操作以及中间运用delay函数,即可实现不同的灯效的实现。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 11:18:03 | 显示全部楼层
第11集学习笔记:IO的端口模式选择是通过置位端口内部寄存器实现,对内部上下拉电阻的控制,是控制PxPD和PxPU实现。32G12K128只开放了上拉电阻,在32G8K64上,即开上拉电阻和下拉电阻。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 15:15:08 | 显示全部楼层
第12集学习笔记:SFR,XFR,EAXFR,CKCON是特殊功能寄存器,当需要访问XFR的时候,需要提前给EAXFR置位为1,才能对XFR进行正常的读写。众多的内部功能牵扯到的寄存器的设置都需要对SFR下面的不同的寄存器设置,XFR是越来越多的功能所对应的寄存器数量已经超过SFR(地址0X80H至0XFFH),故产生了拓展的特殊功能寄存器,其全部归纳到XFR下面(0x7EFE00至0x7EFEFF,0x7EFD00至0x7EFDFF,0x7EFB00至0x7EFBFF,0x7EFA00至0x7EFAFF)。CKCON是外部数据总线时钟控制寄存器,相似于WTST那个程序读取等待时钟控制寄存器的原理,将这个CKCON设置为0,既能设置外部数据总线速度为最快。在STC32G系列单片机的工程中,"EAXFR = 1;CKCON = 1;WTST = 1"这3句,被放在工程开始位置,已实现对单片机系统上电之后的初始化。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 15:22:18 | 显示全部楼层
第13集学习笔记:数码管种类多,常见是7段数码管(7个笔画+1个点),其本质就是每1个笔画就是1个LED,这个电子元件内部是8个共阳极连接或者共阴极连接的led组。公共端是COM,另外的led不同的亮灭组合即可实现1位数码管显示不同的数字,再将这个不同的置位组合封装成数组,即后期在程序中只需要引用数组的特定元素,即可实现显示不同的“字”。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-02 19:40:32
已绑定手机

0

主题

22

回帖

84

积分

注册会员

积分
84
发表于 2025-2-14 17:14:57 | 显示全部楼层
第14集学习笔记:STC32G12K128的IO口直接驱动2位数码管,因为段码各个笔画的线是通用的,只能通过对公共端COM1和COM2的高低置位实现选择哪一位显示io口传输过来的数据,如此交替显示,即可利用人眼睛的反应延时实现同时多位置数码管显示不一样的“字”,这就是动态显示。即只占用一组IO口外加另外的com电平控制,即可实现动态显示多位数码管。而静态显示,是一个数码管数据线常连接这一位数码管,即不需要通过控制com的高低电平选择哪一位显示,如果需要静态显示多位数码管,是需要使用多个1位数码管组合使用而实现。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 03:01 , Processed in 0.245645 second(s), 99 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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