找回密码
 立即注册
查看: 3958|回复: 9

STC32学习日记

[复制链接]
  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-1-23 22:37:39 | 显示全部楼层 |阅读模式
大概是2023年12月份,也就是上个月,
无意中在B站刷到有UP主分享的梁工基于STC32开发的声卡,
由于我正在尝试制作蓝牙音箱,正好也有制作声卡的想法,进而受到吸引。
根据B站视频的线索,以“stc 喀秋莎 声卡”为关键字搜到本论坛。

实际我还有一个吃灰的STC89C52的实验箱,普中的,查记录购于2021年,
当时在B站学习“江协科技”的STC视频时购入的。这个芯片实在太古老了,
感觉它的资源严重脱离现实,印象中我学到中断和寄存器的时候我就放弃了,
另一个原因是太难,学得很吃力。
1706017767955.jpg
1706017767931.jpg

我也很难理解这些培训机构为啥为以最古老的STC89C52作为教材,现在看来,如果不是STC发展出STC32,并且大力推广学习,我估计各种机构会把STC89C52再用10年。
无标题.png

目前我对硬件电路、模拟电路的知识略有了解,但对单片机编程是空白,在一些开源项目中照搬别人的开源程序,深感受限。

根据本论坛的视频,我首选了何宾老师的《STC单片机原理及实战教程》,计划学完之后转入CAN,符合自己的行业需求。

目前学到第9集,感觉学得粗糙,很多没有深入理解,后面估计需要至少再看一遍,总结笔记。总结的过程就是消化的过程。

在此留下记录,敦促自己勤加学习,实现MCU编程自由的愿望。






回复

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-1-23 22:42:15 | 显示全部楼层
从最古老的8位STC89C52到最新的32位STC32,感觉跨越了一个世纪。
在32位MCU已经普及的今天,感觉还是来得太迟了。

虽迟但到。

1706017767912.jpg



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:557
  • 最近打卡:2025-06-18 20:18:47

21

主题

564

回帖

2874

积分

金牌会员

积分
2874
发表于 2024-1-24 08:11:00 | 显示全部楼层
厉害,STM32的高手
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:213
  • 最近打卡:2025-06-18 08:40:13
已绑定手机

0

主题

85

回帖

590

积分

高级会员

积分
590
QQ
发表于 2024-1-24 08:22:22 | 显示全部楼层
大哥,看你的标题是走错地方的吧????
我要用AI32做个感应加热器的控制核心,加油~!!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:548
  • 最近打卡:2025-06-18 08:33:08
已绑定手机

1

主题

838

回帖

1695

积分

金牌会员

积分
1695
发表于 2024-1-24 09:07:14 | 显示全部楼层
改一下标题吧,咱们是STC
靡不有初,鲜克有终
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-1-24 11:02:53 来自手机 | 显示全部楼层
一字之差,差之千里😂,我回头改了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-1-24 19:53:50 | 显示全部楼层
本帖最后由 zanfi 于 2024-11-3 14:58 编辑

第1集
单片机设计导论

单片机=单个集成电路芯片上的小型计算机,主要面向嵌入式应用。

指令集架构(ISA)与CPU
我理解是:
指令集架构是一种规范或者协议,是一种理论或者纸面的东西;
CPU(微架构)是基于指令集架构设计的物理实现的产品;

SRAM:静态随机访问存储器,是一种易失性存储器,断电数据会丢失→理解为内存
Flash:用于保持程序代码,非易失性存储器→理解为硬盘

UART(Universal Asynchronous Receiver/Transmitter):通用串行收发器,以穿行放上发生和接受数据的外部设备(外设)
GPIO(General Purpose Input&Output):通用输入输出,外设
定时器(Timer):为MCU提供定时和计数功能,为嵌入式操作系统提供“嘀嗒”时钟,外设
中断控制器(Interrupt Controller):MCU的最基本功能单元。为MCU提供处理内部和外部事件的能力,使其最最高效和最快的响应速度处理内部和外部事件。
EMIF(External Memory Interface):提供连接片外SRAM芯片的能力。片外SRAM成本高,非必要不采用。
ADC(Analog-to-Digital Converter):模数转换
DAC(Digital-to-Analog Converter):数模转换

低功耗模式:
间歇工作模式、休眠模式、冬眠模式

SoC(System on Chip):片上系统,高度集成CPU、SRAM、Flash和外设的MCU芯片


第2集
处理器核的指令集类型:
1.MIPS:MIPS公司,RISC(精简指令集)
2.ARM:ARM公司,RISC
3.MCS-51(8051):Intel公司,CISC(复杂指令集)。8位算术逻辑单元、8位数据总线和8位寄存器。
  MCS-251(80251):Intel公司,CISC

MCS-51包含111条指令集,其中有49条单字节指令,46条双字节指令,16条三字节指令,称之为复杂指令集(CISC)。

核心区别:
·CISC的典型特点就是具有可变的指令集长度,不但允许在寄存器上执行算术和逻辑运算,并且允许在存储器上执行算术和逻辑运算。
·RISC指令集长度固定,只能在寄存器上执行算术和逻辑运算,不允许在存储器上执行算术和逻辑运算。


MCS-251:
·片内提供了24位线性寻址能力,可寻址高达16MB的存储空间
·可通过字节、字和双字方式访问处理器核内的存储器
·用于加速获取外部指令的页面模式
·指令通道采用了流水线技术
·丰富的指令集包括16和32位算术和逻辑指令

MCS-251在MCS-51基础上进行了扩展,包括新的操作、寻址模式和操作数。许多指令可以对8/16/32位操作数进行操作。
MCS-251兼容MCS-51,MCS-51编写的代码不需要任何修改就可以运行在MCS-251上。

Keil C251:
可将STC32G系列单片机配置位二进制模式(binary mode)或源模式(source mode)
两种模式口可以执行所有MCS-51和所有MCS-251指令,但
源模式对MCS-251指令更高效,二进制模式对MCS-51更高效
二进制模式下,8051单片机的目标代码无需重新编译即可在STC32G系列单片机运行,该模式是对基于8051单片机开发的代码进行兼容。
无标题.png



第3集
尽管MCS251指令集是32位,但Intel自己的80251微架构内部用8位的数据总线实现32位操作(仍可认为80251是32位芯片)。
1.png

2.png

3.PNG

分层结构:
从底层到顶层,指令集→汇编语言→机器指令→高级语言

单片机性能评价,以示例代码为例:
1.时钟周期数:stc32g是stc15/stc8的1/3
2.调用指令条数:stc32g是stc15/stc8的1/2
3.指令总长度:指令总长度缩短,即存储容量stc32g是stc15/stc8的80%


第4集
STC公司简介
STC产品发展历史
无标题2.PNG

无标题3.PNG

ISP:在系统编程,将本地固化程序的方式
IAP:在应用编程,单片机处于使用状态时固化程序的方式。
IAP的典型实现方式,将存储空间划分为两个空间。运行其中一个空间的程序,更新另一个空间的程序,更新完切换。

STC32G系列单片机功能简介
内核:32位,100%兼容MCS-251 ISA。比传统8051快70倍。
支持在线仿真/调试功能
MDU32,硬件32位乘除法器
工作电压:1.9~5.5V
工作温度:-40~85℃,可使用内部晶振(最高36MHz)和外部晶振
工作温度:-40~125℃,高于85℃需要使用外部晶振,且需要控制频率低于24MHz
Flash:最大128K
支持用户配置EEPROM
支持USB和串口下载
支持硬件SWD仿真
SRAM,共12K:4K内部SRAM(edata)+8K内部扩展RAM(xdata)
中断:支持49个中断源。所有I/O口均支持中断。
支持4个中断优先级
数字外设:
5个16位定时器
2个高速同步/异步串口
2个高速异步串口
2组高级PWM
3组硬件SPI
I2C
ICE
RTC
USB,兼容USB2.0、USB1.1
CAN,两个独立的CAN2.0控制单元
LIN
LCD驱动模块
DMA,直接存储器访问,无需内部CPU干预
硬件数字ID,支持32字节

模拟外设:
超高速ADC,12位高精度15通道
比较器
最多60个GPIO
所有GPIO均支持4种模式:准双向口模式,强推挽模式,开漏输出模式,高阻输出模式
除P3.0和P3.1外,其余IO口上电后默认高阻输入模式,使用IO口时必须线设置IO口模式
每个IO口均可独立使能内部4k上拉电阻


第5集
STC32系列单片机简介
命名规则:
STC 32 X aK bc
STC——公司名称宏晶
32——32位
X——子系列
  G——G系列,无硬件浮点
  F——F系列,有硬件浮点
aK——SRAM存储容量,akB
bc——Flash存储容量,bckB

封装类型
双列直插式,DIP
薄型四方扁平式,LQFP
薄的缩小型小外形,TSSOP
方形扁平无引脚,QFN

引脚驱动模式
  准双向输出,可以作输出和输入功能,而不需要重新配置IO口输出状态
1.PNG
  强推挽输出,下拉结构与开漏输出和准双向输出的下拉结构相同
2.PNG
  高阻输入
3.PNG
  开漏输出,既可以读取引脚的外部状态,也可以控制引脚输出高电平或低电平。如果要读取外部状态或者需要对外输出高电平时,需要外加上拉电阻
4.PNG
注:(1)软件执行低变高的指令后,加入1到2个空操作指令,再读取外部状态,以避免因为IO口状态改变(比如寄生电容充电导致延时)跟不上处理器速度,导致状态读取错误。
    (2)通过IO端口模式寄存器,可以切换引脚的工作模式。

下载电路
串口下载和USB下载共用引脚P3.1和P3.0

第6集
Keil μVision 下载及介绍
也可参考STC32系列数据手册第5章

第7集
Keil μVision 设置介绍

第8集
Keil 代码案例讲解。
分析代码的编译过程。

第9集
一、STC-ISP下载程序的按钮操作→已练习,成功进行程序下载
按钮操作的本质:按住P3.2,将P3.2口拉低,然后给单片机重新上电(冷启动)。还可以按住P3.2,重新拔插一次USB。
“追风剑”使用USB TYPE C线下载固件的方法,IRC频率根据程序需求设置,此处仅作示例:
无标题4.png 无标题5.png

NyGlGQMUk5urU70ViiDxP4Q2iOa1AHTMO4faejLU.jpeg
D5h1aQUm047o8ZwDCfulvEWPH9gRIO2G1VxrByxt.png
二、硬件仿真
1.STC-isp:选项卡"Keil仿真设置",视频使用使用的Link1,选择的“使用SWD口仿真”,而我使用“追风剑”开发板练习,选择“使用USB口进行仿真”,点击“将所选芯片设置为仿真芯片”,根据提示,给单片机重新上电(建议直接拔插USB-A口),选项卡“USB-HID助手”显示“STC/USB-ICE”,表明仿真功能生效。同时参考了STC-ISP选项卡"Keil仿真设置"页面的“仿真器使用说明”→已练习,成功进行设置

无标题3.png
无标题2.png
2.Keil:Project Target右键“Option for Targe...”:
①“Debug”选项卡,选择“STC monitor-251 Driver”,旁边的“Settings”,选择“USB”→已练习
②“Utilities”选项卡,“Use Target Driver for Flash Programming”选择“STC monitor-251 Driver”,勾选“Update Target before Debugging”,旁边“Settings”,勾选“Erase”,“Erase sectors”下拉菜单选择“Used”,勾选“Program”→已练习
③点击菜单“Debug”→点击“Strat/Stop Debug Session”→测试多次,Keil总是死机
无标题.png

三、二进制、十进制、十六进制
问:为何大于9的十六进制用字母A~F表示?
答:正如十进制有0~9共计10个不同的基础数字,因十六进制同样需要十六个不同的基础数字,可以理解为十六个不同的符号。
四、正数的表示方法
“正数”对应计算机的“无符号数据”,指大于零的数,包含正整数和正小数。

第10集 上
数值的表示和转换
原码、补码

第10集 下
处理器内部架构介绍
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-3-12 19:37:13 | 显示全部楼层
第11集~第17集

好抽象啊,决定先通看一遍。再看第二遍然后总结吧。

留几个字,表示还在学习。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:469
  • 最近打卡:2025-06-18 06:25:36
已绑定手机

19

主题

3233

回帖

5293

积分

论坛元老

积分
5293
发表于 2024-7-6 21:52:45 | 显示全部楼层
stc8051u可以让老开发板重新活起来
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:70
  • 最近打卡:2025-02-04 20:10:36

1

主题

42

回帖

169

积分

注册会员

积分
169
发表于 2024-11-3 14:59:16 | 显示全部楼层
继续学习哦
截图202411031459127170.jpg
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-6-18 21:18 , Processed in 0.140638 second(s), 107 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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