找回密码
 立即注册
查看: 706|回复: 21

最给力的stc32G12K128视频——

[复制链接]

1

主题

30

回帖

71

积分

注册会员

积分
71
发表于 2026-7-28 10:44:56 | 显示全部楼层 |阅读模式
最近发现这个视频是最高效的,句句真理,没有废话,看这个视频收货满满。
截图202607281042238614.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 10:47:48 | 显示全部楼层
在这里做一个学习记录,希望能够领到一张学习板,
第0集:学习这个板子需要很多的电路板和周围的配套元器件,也很感谢博主为这个视频教程所做的一切努力
截图202607281047048579.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 11:08:04 | 显示全部楼层
第一集:为入门者介绍了STC的烧录的软件keiC251,之前因为需要单独安装这个,所以就放弃了,今天突然间发现他们可以安装在一起是比较好的C 51a和C251可以同时装在一台电脑上,非常方便,
1    本集主要讲解了C 251的基本设置输出设置
2  用串口下载的基本操作:连上数据线,按下P3.2按钮和OFF按键,在IP下载端会显示串口连接的,就可以用USB串口方式直接下载,不需要下载器,
3   sTC官方的下载器直接连接,设置好串口可以直接点击下载就行了
4,没有下载器,用普通的C340下载下载器的TXD和RXD和单片机的TX.D和RX.D对调连接如下图所示,因为下载器的发射端要对住单片机的接收端,而单片机的接收端对应下载器的是发射端的。



按钮
图标描述
名称
快捷键
功能说明
①单个文档图标编译当前文件 (Compile)Ctrl+F7只编译当前打开的单个 .c 文件,生成对应的 .obj 目标文件,不链接
②两个文档+箭头编译/构建目标 (Build Target)F7编译有改动的文件并链接,生成可执行文件(.hex)。增量编译,只编译修改过的文件
③两个文档+绿色箭头重新构建所有目标 (Rebuild All Target)无默认快捷键全部重新编译所有源文件(不管有没有改动)并链接,生成 .hex 文件
④文件夹图标批量编译 (Batch Build)无默认快捷键对项目中多个 Target(如 Debug 和 Release)依次执行 Build 操作

截图202607281051436748.jpg
截图202607281053535806.jpg
截图202607281105389044.jpg
截图202607281209494166.jpg
回复

使用道具 举报 送花

36

主题

250

回帖

1521

积分

版主

积分
1521
发表于 2026-7-28 11:48:23 | 显示全部楼层
要 做到 USB不停电下载;
要 尝试 AiCube 图形化自动配置生成程序工具;
推荐优先看的:  
printf_usb("Hello World !\r\n")及
USB不停电下载, 演示视频链接:
https://www.stcaimcu.com/thread-19077-1-1.html
下载 最新的 AiCube-ISP-V6.96Z 或以上版本软件 !

深圳国芯人工智能有限公司-工具软件
下载 最新的 USB库函数,永远用最新的 USB库函数 !
深圳国芯人工智能有限公司-库函数
下载 最新的 用户手册 !
下载 最新的 上机实践指导书 !
下载 最新的 STC32G12K128 用户手册
https://www.stcaimcu.com/data/download/Datasheet/STC32G.pdf
下载 最新的 STC32G12K128 实验指导书
有 AiCube 图形化自动配置生成程序工具使用说明
https://www.stcaimcu.com/data/do ... %AF%BC%E4%B9%A6.pdf



上面是 小李 演示:STC32G12K128, printf_usb("Hello World !\r\n")及usb不停电下载@AiCube之图形化程序自动生成


上面是 姚工 演示:STC32G12K128, printf_usb("Hello World !\r\n")及usb不停电下载@AiCube之图形化程序自动生成


回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 14:46:58 | 显示全部楼层
芯S*** 发表于 2026-7-28 11:48
要 做到 USB不停电下载;
要 尝试 AiCube 图形化自动配置生成程序工具;
推荐优先看的:  

第二集 IO口的模式设置


1  本期介绍的IO的工作模式:L口可以设置成准双向模式,推完输出 高频输入和开漏模式
2 各种模式也有对应的两个寄存器来控制PNM0和PNM1,一个引脚对应一个寄存器的位具体可在STC 32数据手册的608页有详细介绍
   准双向IO口模式:可以作为输入,输入读取外部的状态,又可以作为输出,

   推挽输出模式:强上拉输出,
  高阻态输入
  开漏输出

0x00 是几位的?
0x00 是一个 8 位(1 字节)的十六进制数。
在 C 语言中,以 0x 开头的数字表示十六进制(Hexadecimal)。0x00 展开为二进制是 0000 0000,共 8 位。

第一个"0"和第二个"0"分别代表什么?
我们先把 0x00 拆开看:
[td]
写法
含义
0x十六进制前缀,告诉编译器后面的数字是十六进制格式
第一个 0十六进制的高 4 位(高半字节),对应二进制 0000
第二个 0十六进制的低 4 位(低半字节),对应二进制 0000
所以 0x00 的完整二进制展开是:
0x00  →  0000  0000          ↑高4位 ↑低4位📋
结合代码中的实际含义
回到您的代码:
P2M1 = 0x00;      // 高4位=0000,低4位=0000 → 整体=0000 0000P2M0 = 0xFF;      // 高4位=1111,低4位=1111 → 整体=1111 1111每个二口都是8位的,所以用十六进制是表示高四位、低四位,0X00,PM0和PM1也是对应8位IO口



截图202607281246242462.jpg
截图202607281421528207.jpg
截图202607281422188712.jpg
截图202607281431216492.jpg
截图202607281431388716.jpg
截图202607281435468948.jpg
截图202607281437337018.jpg
截图202607281449489066.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 14:51:37 | 显示全部楼层
不得不说,STC现在开发的AI助手真的很不错的,有什么不懂的都可以在上面输入,当然是相关单片机程序方面的,地址如下https://help.stcaimcu.com/
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 15:05:17 | 显示全部楼层
第三期  本期主要说明了define和typedef的用法


截图202607281459359819.jpg
截图202607281501022868.jpg
截图202607281503152824.jpg
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 15:49:54 | 显示全部楼层
第四期  点亮供阳极的led,所谓共阳极,就是正极接在一起,接到高电平而led的负极接到IO口,由IO口来控制它的亮灭,所以低电平可以让led亮起来
回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 16:29:02 | 显示全部楼层
file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps1.jpg
第五期 使用delay函数来实现闪烁灯的效果 WTST可以增加程序运行的时钟,也就是加长了延长的时间


第六期 volatile 的本质
volatile 是C语言的一个类型修饰符,它告诉编译器:
"这个变量的值随时可能被意外改变,不要对它做任何优化,每次使用都必须从内存中重新读取。"
void delay1(u16 ms)//简单延时函数,自适应主频,1毫秒*ms
{
volatile u16 i;
volatile u32 j;//volatile关键字防止变量i,j被编译器优化
for(i = 0; i < ms;i++)
for(j = 0;j < MAIN_Fosc / 9000;j++);
}
特别注意: 在STC单片机中,sfr 和 sfr16 关键字定义的寄存器已经隐含了volatile属性,但用 #define 定义的XFR地址需要手动加 volatile:
// 访问XFR(扩展特殊功能寄存器)的正确方式
#define CLKSEL  (*(volatile unsigned char xdata *)0xfe00)
#define CLKDIV  (*(volatile unsigned char xdata *)0xfe01)
#define HIRCCR  (*(volatile unsigned char xdata *)0xfe02)
volatile 的三大作用
作用
说明
不加的后果
防止编译器优化掉读取操作
每次使用都从内存地址读取,而不是从寄存器缓存
循环条件永远不满足
防止编译器优化掉写入操作
确保每次赋值都真正写入内存
中断标志写不进去
防止编译器重新排序
保证volatile操作按代码顺序执行
时序错乱


第七期 移位法,实现流水灯的效果while(1) { for(i = 0;i < 8;i++) { P2 = ~(0x01 << i); //P2口正向流水灯,移位法 delayms(500); //延时500毫秒 } }
.file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps2.jpg
file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps3.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps4.jpg


file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps5.jpg
file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml7456/wps6.jpg



回复

使用道具 举报 送花

1

主题

30

回帖

71

积分

注册会员

积分
71
 楼主| 发表于 2026-7-28 16:32:57 | 显示全部楼层
第八期
截图202607281632392682.jpg
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-11-7 14:26 , Processed in 0.081885 second(s), 78 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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