找回密码
 立即注册
楼主: 大亮

《STC教学研讨会STC8H/STC32G》--学习记录/学习心得--打卡帖 | 建议送

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-11 15:53:24 | 显示全部楼层
2023/09/11 STC8H8K64U教学  PWM 打卡笔记



PWM 脉宽调制 应用场景 控制舵机转角,三线连接方式:电源线、地线、PWM控制信号(基于舵机的特性、查看舵机手册)、提供脉宽周期型调节信号、利用占空比变化,改变舵机转轴的角度

截图202309111425414844.jpg 截图202309111424597729.jpg 截图202309111425098199.jpg

周期性方波脉冲信号怎么产生: 定时器:如0~200个周期时间,改变定时器输出实现,更好的方式PWM模式
PWM用来控制电机的转速:电机参数查看手册,额定功率、电压、电流等 电机驱动:用继电器触点开闭控制通断,电路设计电源极性翻转控制正反转,电机调速:

半桥驱动芯片BTN7971 原理框图
截图202309111447086715.jpg

STC8H8K64U PWM模块:8通道16位高级PWM定时器,PWMA和PWMB,PWMA可配置成4组带死区控制的互补对称PWM(特别适合电机控制)或捕捉外部信号(脉冲检测),PWMB可配置4路输出或捕获外部信号;
PWM波形输出:单独使能PWMA1P/PWM2P/PWM3P/PWM4P输出(P端输出),也可单独使能N端输出,  捕获功能或者脉宽测量 P端具备
六路PWM输出--》用于电机控制,三相六路PWM波控制3个IGBT桥,驱动电机
时基单元的结构图
截图202309111529235579.jpg 看文档

截图202309111534177009.jpg 向上计数

计数模式
基于寄存器控制的PWM应用

文档要看看
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-11 16:44:59 | 显示全部楼层
2023/09/11 STC8H8K64U教学  梁工讲PWM驱动电机介绍 打卡笔记


电机:
截图202309111554455850.jpg 截图202309111555508342.jpg 截图202309111557165731.jpg
带HALL传感器反馈的电机
截图202309111601233114.jpg 截图202309111604161415.jpg 截图202309111605399279.jpg



不带HALL传感器反馈的电机
截图202309111607383004.jpg 等效模型,反电动势--》 截图202309111612524653.jpg 截图202309111616215442.jpg 截图202309111619403766.jpg 输入ADC,用CMP功能 截图202309111622393393.jpg 用比较器中断判断过零检测 截图202309111629255451.jpg
启动函数、强起

截图202309111633086130.jpg


与PWM相关的应用 在论坛上
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:12
  • 最近打卡:2023-12-18 15:13:58

4

主题

216

回帖

886

积分

高级会员

积分
886
发表于 2023-9-11 17:08:13 | 显示全部楼层
楼主对我们的免费公开课 认可/支持/给力,建议主动联系我们同事
=====提前获得 【免费+包邮送】的 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(周一 到 周五, 法定节假日除外
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-11 22:09:14 | 显示全部楼层
STC芯 发表于 2023-9-11 17:08
楼主对我们的免费公开课 认可/支持/给力,建议主动联系我们同事
=====提前获得 【免费+包邮送】的 STC32G12 ...

感谢STC提供的如此优秀的系列课程,收到!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-11 23:47:49 | 显示全部楼层
本帖最后由 大亮 于 2023-9-11 23:49 编辑

《何老师 STC32位8051单片机原理及应用-STC32G12K128》2023/8/8 (上)


端: 8个比特位按一个字节存储     字节存储顺序:小端模式 (little endian),0x1234 占两个字节 存储器地址0x0 -->0x34   0x1-->0x12 先保存最低有效位或者低字节  MSB -- 》 LSB
大端模式: 先保存高地址字节,再保存低地址字节


L8051 CALL指令,压栈先保存下一条指令地址的低字节,是以小端模式保存在堆栈里的(特例),其他16位或32位数据,均采用大端模式


程序Flash存储器 程序存储器空间映射 8位单片机存储器结构何空间地址 STC15系列/STC8系列增强型8051单排年纪的程序空间位于0x0000~0xFFFF的地址范围
16位的PC指向下一条要执行的指令
CPU只能通过使用MOVC指令,从程序空间读取数据
当复位时,PC的内容位0x0000,因此,从程序存储器地址为0x0000的地方开始执行程序(初始化配置为0x80以上,run main之前还有boot)
截图202309112240427406.jpg 40K存储器空间
中断服务程序的入口地址(也成为中断向量)也放在程序存储器单元低地址空间/区域,在程序存储单元中,对于每个中断来说都有一个固定的入口地址, 截图202309112245555417.jpg Flash特殊结构决定。

数据Flash,8051内部 提供大容量的数据FLASH存储器,用于实现电可擦除的只读存储器EEPROM的功能 截图202309112248306391.jpg 截图202309112249245828.jpg ,非易失性区域,
操作的特殊SFR,
ISP/IAP地址寄存器 (IAP_ADDRH 和 IAP_ADDRL)0xc3 和 0xc4
ISP/IAP命令寄存器 IAP_CMD 0xC5     MS1[1]  MS0[0]
ISP/IAP命令触发寄存器 IAP_TRIG 0xC6 IAPEN[7] SWBS[6] SWRST[5]  CMD_FAIL[4]  WT2~WT0[2~0]
PCON 电源控制寄存器 0x87
截图202309112259549936.jpg
内部数据RAM存储器:MCU内部集成,用于存放程序执行的中间结果和过程数据,STC15 4K内部数据存储器 在逻辑和物理上,分为两个地址空间:内部基本RAM,256B,内部扩展RAM 3840B
截图202309112314021175.jpg 256个字节地址空间
低128个字节地址空间怎么用:
截图202309112316261515.jpg 32字节/4组寄存器地址 ,,,16字节(128位)可位寻址区域,,,,用户自由发挥区域

Intel用CISC复杂指令集架构,但是用紧凑型结构实现CPU的,

片内扩展RAM:2DPTR
设计 截图202309112323519620.jpg   访问: 通过MOVX指令访问内部扩展RAM区域 汇编:MOVX @DPTR 或 MOVX @Ri  C:xdata声明存储类型来访问内部扩展RAM区域


片内外 SFR 0x8e EXTRRAM[1] 辅助寄存器AUXR控制 访问内部扩展 "0" 0X0000 ~ 0X0EFF 3839字节

外部数据存储器:硬件电路(数据地址总线,端口复用),提供BUS_SPEED特殊功能寄存器   (现在极少应用了,片内够了)

微架构 32位时代
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-12 08:51:15 | 显示全部楼层
《何老师 STC32位8051单片机原理及应用-STC32G12K128》2023/8/8 (下)



32位单片机处理器核的内部结构     STC32系列单片机处理器核兼容MCS-251 ISA, 实现1位/8位/16位/32位的操作,
截图202309120802414801.jpg 24位地址总线 XXXXXXXX [高8位二进制数表示访问的段 区域] YYYYYYYY YYYYYYYY[低16位表示当前访问段空间的具体存储单元位置 具体单元]


DMA机制:direct memory access  DMA控制单元 外设和存储器直接通信,跳过CPU
时钟:内部高精度IRC、内部32khz IRC 、外部晶振、内部相位锁相环输出时钟  PHASE LOCK LOOP PLL
专用乘法除法单元  MDU32

32位MCU的寄存器:
截图202309120813452470.jpg

组:同一时刻/一次能操作的8个 不同组 通过设置PSW相应位进行设置
寄存器文件 register file
专用寄存器:

紧凑、小巧

指令集 芯片文档 有详细介绍



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-12 13:21:28 | 显示全部楼层

现代高性能CPU中几十个寄存器就够用了。
寄存器是CPU中用于存储数据的单元。在运算器、控制器中,都需要有记忆功能的单元来保存从存储器中读取的数据,以及保存运算器生成的数据,这样的单元就是寄存器。
区分:“寄存器” register CPU内部单元 容量小 计算过程中中间数据,瞬时性《==》"存储器" Memory 位于CPU外部 容量大 保存程序、输入输出数据和最终结果
数据寄存器
指令寄存器
地址寄存器
标志位寄存器
寄存器的一个重要概念“位宽”。CPU中经常将一组寄存器单元使用一个模块实现,形成寄存器堆,寄存器堆的典型结构包含3个端口:
地址端口(选择要读写的寄存器编号)
读/写控制端口(向控制器单元写骄傲是从控制器单元读出)
数据端口(从寄存器单元读出或向寄存器单元写入的数据)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-13 03:36:26 | 显示全部楼层
《何老师 STC32位8051单片机原理及应用-STC32G12K128》2023/8/11

截图202309121423501725.jpg 寄存器组解决寄存器瓶颈问题,寄存器合并解决寄存器位宽问题;    R0~R7 *4 ==32

截图202309121429323802.jpg 低32字节的存储空间地址  片内基本RAM  EDATA 截图202309121431017545.jpg ,映射特殊功能寄存器



截图202309121518501171.jpg 对寄存器的操作,R拼出WR,WR拼出DR,体现Intel典型的紧凑型设计理念

R10寄存器就是寄存器B R1 就是累加器ACC/A   寄存器DR56:扩展的数据指针 (DPX extended data pointer)   寄存器DR60:是扩展的堆栈指针(SPX Extended Stack Pointer)

截图202309121600434210.jpg 扩展的数据指针 低八位 高八位 在扩展16位 截图202309121602121377.jpg


KEIL的DEBUG 可以把CPU的底层看得很清楚

程序状态字:CY 进位标志 最高有效位有进位 MSB most significate bit
PSW1

========^^^^^^^^^^^^^^^^^内核^^^^^^^^^^==============================================

截图202309121610446409.jpg 程序入口地址:FF0000H


截图202309121844254588.jpg 截图202309121846049193.jpg 截图202309121851074962.jpg


程序计数器 PC 当给STC32G系列单片机复位后,程序计数器PC得内容为FF0000H  (从这里开始执行程序)
在程序存储器中,每个中断都有一个固定的入口地址,当发生中断并且处理器核响应中断后,PC就会自动跳转到相应的中断入口地址去执行程序
Flash数据存储器 相当于EEPROM  以字节为单位读/写数据,以512字节为页单位进行擦除。
数据存储器:

中断:两个目的:能够让CPU尽快响应事件、最小的代价处理事件,中断系统,处理器育有处理外界紧急事件(转化为端口高低电平、脉冲)能力而设置的一种机制,程序计数器跳转,设计芯片的人设计的内部规则
截图202309130335011692.jpg




回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-13 14:21:55 | 显示全部楼层
《何老师 STC32位8051单片机原理及应用-STC32G12K128》2023/8/15



课堂例程已经找到并下载,前堂可的苦恼解决,有效提高了听课效率!“STC 32位单片机原理及应用配套设计案例,北京化工大学何宾老师配套资料
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=3876
(出处: 国芯论坛-STC全球32位8051爱好者互助交流社区)”


=================================================================================
MCS-251: 定义  位 1     字节 8       字word  16      双字dword   32
字和双字以大端模式保存在内存和寄存器文件中
MOV WR0, #0A3B9H       MOV 00:0201H, WR0        MOV DR4,#0000C4D7H
在MSC-51 ISA中,操作数定义:

一天机器指令包含两部分,操作码和操作数
数据存在哪里?CPU指令里(存在指令本身)、寄存器里、edata内存储、扩展存储区、code

MSC-251 ISA支持的寻址模式 (区分源和目的):目的操作数<---源操作数
寄存器寻址;操作数在寄存器中
立即(数)寻址:操作数在指令里 MISP架构也是这样
直接寻址:提供数的地址 片上RAM地址范围00:0000H~00:007FH   SFR S:000h~S:0FFH  MOV DR0,EDATA 0100H       MOV WR2,0X60 (一个wr类型,取两个字节)
间接寻址:给出寄存器、寄存器的内容是要访问的地址  MOV @WR0,WR2      MOV @DR0,WR8
位移寻址:指令一个寄存器和一个偏移量   @WRj+dis16      MOV @WR2+0X100, WR4
相对寻址:跳转指令,带符号偏移量  *RETURN: MOV R1,#0XA0    MOV A,#0X60   ADD A,R1   JC RETURN
截图202309131053291050.jpg
位寻址:包含位地址
截图202309131054267717.jpg

机器码二进制序列表示,16进制展示

MCS-51 ISA(cpu mode)存在双模式:0xA5
MCS-251 ISA中包含268条指令 MCS-51 ISA中包含111条指令

ADD指令 CY 第7/16/31位有进位,设置为1            AC 第第三位到第四位有进位,设置为1,只对8位数据相加运算有效
ADD A,Rn
ADD A,dir8
ADD A,@Ri
ADD A, #data.
ADD Rmd,Rms
ADD WRjd,WRjs
ADD DRkd,DRKS
ADD Rm,#data
ADD WRj,#data16
ADD DRK,#0data16
ADD Rm,dir8
ADD Rm,dir16
ADD WRj,dir16
ADD Rm,@WRj
ADD Rm, @DRk
ADDC 实现带进位标志的加法。。。。看STC指令手册....
SUB指令 用于从目标操作数中减去指定的变量,将结果留在目标操作数中
SUBB 带借位的减法
递增指令 INC
递减指令
乘法指令 MUL AB  高8位放在B寄存器 低8位放A寄存器   MUL Rmd,Rms
除法指令 DIV AB 商A 余数B
BCD调整指令 DA A
比较指令 CMP R1,R0
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-03-18 20:40:21

1

主题

75

回帖

345

积分

中级会员

积分
345
发表于 2023-9-14 11:27:14 | 显示全部楼层

GPIO:P0组、P1组、P2组、P3组  内部结构框图

P0端口 截图202309140017037880.jpg 另输出时,漏极开路(数据地址总线使用,做外扩存储器,少用)

P1端口 截图202309140024376575.jpg 内部总线数据,经锁存器反相,输出到外部管脚,双向
P2端口 截图202309140402519061.jpg
P3端口 截图202309140405042105.jpg


回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-24 18:45 , Processed in 0.137896 second(s), 104 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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