找回密码
 立即注册
楼主: ESP8266

最给力的stc32G12K128视频——

[复制链接]

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 17:31:34 | 显示全部楼层
第九期  花式流水灯
  这个程序相对复杂一点,需要开发板到了之后一个一个试验


截图202607281731311252.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 17:51:03 | 显示全部楼层
第十期    IO口内部的上拉、下拉电阻模式设置为高阻态
本期引入了XFR的设置 此区域是独立区域,使用时需要使能EAXFR为一。才能使用上拉下拉电阻高阻态模式
EAXFR = 1;   //使能XFR; 否则无法访问XFR,PxPD功能受限   
//EAXFR:扩展SFR使能寄存器

截图202607281750481191.jpg
截图202607281751004433.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 18:07:06 | 显示全部楼层
第十一期  SFR   XFR          EAXFR
               
一、SFR(标准特殊功能寄存器)
· 全称:Special Function Register
· 地址范围:0x80 ~ 0xFF(标准 8051 的 128 字节 SFR 空间)
· 访问方式:直接寻址(MOV A, 0x90)或位寻址(SETB P1.0)
· 特点:这是传统 8051 就有的寄存器空间,例如 P0、P1、TMOD、TCON、SCON、SBUF 等都在此区域。
· 无需额外设置:直接读写即可。



二、XFR(扩展特殊功能寄存器)
· 全称:eXtended Function Register(扩展特殊功能寄存器)
· 地址范围:0FA00H ~ 0FFFFH(STC8G/8H/Ai8H 系列),STC32 系列为独立线性编址区域
· 访问方式:必须使用 MOVX 指令(MOVX A, @DPTR / MOVX @DPTR, A)进行读写
· 特点:
o 存放的是新增外设的控制寄存器,如高级 PWM、USB、DMA、触摸按键、RTC 等模块的配置寄存器。
o XFR 的地址与外部扩展 RAM 的高地址段(0FA00H~0FFFFH)是重叠的。
o 默认禁止访问,必须先使能 EAXFR 位才能读写。



三、EAXFR(使能访问 XFR 的控制位)
· 全称:Enable Access to eXtended Function Register
· 位置:P_SW2 寄存器的 Bit7
· 寄存器地址:P_SW2 的 SFR 地址为 0BAH
符号
地址
B7
B6
B5
B4
B3
B2
B1
B0
P_SW2
BAH
EAXFR
-
I2C_S[1:0]
CMPO_S
S4_S
S3_S
S2_S
· 功能:
o EAXFR = 0:禁止访问 XFR 区域,此时对 0FA00H~0FFFFH 地址的 MOVX 操作访问的是外部扩展 RAM。
o EAXFR = 1:使能访问 XFR 区域,此时对 0FA00H~0FFFFH 地址的 MOVX 操作访问的是扩展特殊功能寄存器。

回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 21:58:33 | 显示全部楼层
第12期,数码管的原理
数码管有8个led灯,通过不同的位置排列,形成了人为认知的八字形,控制8个led灯的亮灭来组成人为认知的数字0123456789 , 数码管又分为共阴极和共阳极数码管。
共阴极  是把8个led灯的阴极连成一个点上连在一起
共阳极  是把八个阳极连在一起,共阳极又可以作为控制端控制数码管的亮灭

截图202607281817423422.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 21:59:50 | 显示全部楼层
第13期 两位数码管的控制
   IO口直接驱动数码管,需要在IO口加入470欧的限流电阻,否则l led容易烧坏

截图202607282159473220.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 22:00:48 | 显示全部楼层
第14期,八位数码管的驱动
     P2 = SEG_Code[2];
   P0 = SEG_WeiCode[0];  //第1位显示2
   delayms(1);
  
   P2 = SEG_Code[0];
   P0 = SEG_WeiCode[1];  //第2位显示0
   delayms(1);
  
   P2 = SEG_Code[2];
   P0 = SEG_WeiCode[2];  //第3位显示2
   delayms(1);
  
   P2 = SEG_Code[3];
   P0 = SEG_WeiCode[3];  //第4位显示3
   delayms(1);

截图202607282200445267.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 23:18:37 | 显示全部楼层
第15期  74HC595 功能详解一、芯片概述
74HC595 是一个 8位串行输入、并行输出的移位寄存器,带有一个存储寄存器(输出锁存器),属于 CMOS 逻辑系列,工作电压范围通常为 2V~6V。



四、工作原理(分步说明)
1. 数据移位过程
· 每个 SH_CP 上升沿,DS 引脚上的当前电平被移入移位寄存器的 最低位(bit0),同时原有数据整体向高位移动一位(bit0→bit1,bit1→bit2,...,bit6→bit7)。
· 经过 8个 SH_CP 上升沿 后,一个字节的 8 位数据(先发送高位还是低位由软件决定)全部移入移位寄存器。
· 移位寄存器的 最高位(bit7) 会从 Q7' 引脚输出,用于级联下一片 74HC595。
2. 数据锁存过程
· 当 8 位数据全部移入移位寄存器后,在 ST_CP 上升沿,移位寄存器中的数据被一次性锁存到存储寄存器(输出锁存器)中。
· 锁存后,数据稳定出现在 Q0~Q7 输出引脚上。
· 关键优势:移位过程中,输出引脚 Q0~Q7 的数据不会变化,只有在 ST_CP 上升沿之后才会更新。这解决了 74HC164 在移位过程中输出不断抖动的问题。
3. 输出使能控制
· OE = 0:Q0~Q7 正常输出锁存器中的数据。
· OE = 1:Q0~Q7 为高阻态,可用于多片 74HC595 输出总线共享。
4. 级联扩展
· 将第一片的 Q7' 连接到第二片的 DS,两片的 SH_CP 和 ST_CP 并联。
· 先发送第二片的数据(高位字节),再发送第一片的数据(低位字节),然后产生一个 ST_CP 锁存脉冲,即可同时更新两片的数据。
· 理论上可以无限级联,但速度会随级联数量增加而降低。
·



回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 23:20:48 | 显示全部楼层
第15期  74HC595 功能详解
一、芯片概述
74HC595 是一个 8位串行输入、并行输出的移位寄存器,带有一个存储寄存器(输出锁存器),属于 CMOS 逻辑系列,工作电压范围通常为 2V~6V。
file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml1404/wps8.jpg
四、工作原理(分步说明)
1. 数据移位过程
· 每个 SH_CP 上升沿,DS 引脚上的当前电平被移入移位寄存器的 最低位(bit0),同时原有数据整体向高位移动一位(bit0→bit1,bit1→bit2,...,bit6→bit7)。
· 经过 8个 SH_CP 上升沿 后,一个字节的 8 位数据(先发送高位还是低位由软件决定)全部移入移位寄存器。
· 移位寄存器的 最高位(bit7) 会从 Q7' 引脚输出,用于级联下一片 74HC595。
2. 数据锁存过程
· 当 8 位数据全部移入移位寄存器后,在 ST_CP 上升沿,移位寄存器中的数据被一次性锁存到存储寄存器(输出锁存器)中。
· 锁存后,数据稳定出现在 Q0~Q7 输出引脚上。
· 关键优势:移位过程中,输出引脚 Q0~Q7 的数据不会变化,只有在 ST_CP 上升沿之后才会更新。这解决了 74HC164 在移位过程中输出不断抖动的问题。
3. 输出使能控制
· OE = 0:Q0~Q7 正常输出锁存器中的数据。
· OE = 1:Q0~Q7 为高阻态,可用于多片 74HC595 输出总线共享。
4. 级联扩展
· 将第一片的 Q7' 连接到第二片的 DS,两片的 SH_CP 和 ST_CP 并联。
· 先发送第二片的数据(高位字节),再发送第一片的数据(低位字节),然后产生一个 ST_CP 锁存脉冲,即可同时更新两片的数据。
· 理论上可以无限级联,但速度会随级联数量增加而降低。
·


回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 23:21:29 | 显示全部楼层
第16期74H595驱动2~8位数码管,

回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-29 06:57:31 | 显示全部楼层
第15期  74HC595 功能详解一、芯片概述
74HC595 是一个 8位串行输入、并行输出的移位寄存器,带有一个存储寄存器(输出锁存器),属于 CMOS 逻辑系列,工作电压范围通常为 2V~6V。
四、工作原理(分步说明)
1. 数据移位过程
· 每个 SH_CP 上升沿,DS 引脚上的当前电平被移入移位寄存器的 最低位(bit0),同时原有数据整体向高位移动一位(bit0→bit1,bit1→bit2,...,bit6→bit7)。
· 经过 8个 SH_CP 上升沿 后,一个字节的 8 位数据(先发送高位还是低位由软件决定)全部移入移位寄存器。
· 移位寄存器的 最高位(bit7) 会从 Q7' 引脚输出,用于级联下一片 74HC595。
2. 数据锁存过程
· 当 8 位数据全部移入移位寄存器后,在 ST_CP 上升沿,移位寄存器中的数据被一次性锁存到存储寄存器(输出锁存器)中。
· 锁存后,数据稳定出现在 Q0~Q7 输出引脚上。
· 关键优势:移位过程中,输出引脚 Q0~Q7 的数据不会变化,只有在 ST_CP 上升沿之后才会更新。这解决了 74HC164 在移位过程中输出不断抖动的问题。
3. 输出使能控制
· OE = 0:Q0~Q7 正常输出锁存器中的数据。
· OE = 1:Q0~Q7 为高阻态,可用于多片 74HC595 输出总线共享。
4. 级联扩展
· 将第一片的 Q7' 连接到第二片的 DS,两片的 SH_CP 和 ST_CP 并联。
· 先发送第二片的数据(高位字节),再发送第一片的数据(低位字节),然后产生一个 ST_CP 锁存脉冲,即可同时更新两片的数据。
· 理论上可以无限级联,但速度会随级联数量增加而降低。
截图202607290658487414.jpg
截图202607290658597251.jpg
截图202607290659524090.jpg
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-11-7 11:51 , Processed in 0.086153 second(s), 78 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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