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

【已送实验箱】何宾教授主讲《STC32位8051单片机原理及应用-STC32G12K128》线上课程打

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

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 12:14:27 | 显示全部楼层 |阅读模式
本帖最后由 32位8051-STCAI 于 2023-9-7 14:30 编辑

建议能看会议直播,尽量看。可以实时互动,有问题可以直接解答。看回放,效果要差些



第一天:
单片机基础知识及架构等

1.jpg

指令集类型、mcs51和251区别、嵌入式系统硬件和软件介绍


2.jpg

单片机程序设计语言、性能评价等


3.jpg








回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 12:20:47 | 显示全部楼层
本帖最后由 firefly2k 于 2023-8-30 13:04 编辑

第二天:STC32G介绍


4.jpg

Keil软件介绍

5.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 13:02:58 | 显示全部楼层
本帖最后由 firefly2k 于 2023-8-30 13:13 编辑

第三天:keil应用程序开发项目创建、相关文件的用处或功能,硬件在线调试,不同进制数的表示方法等


6.jpg


7.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 13:19:45 | 显示全部楼层
第四天:不同进制数的进一步讲解,处理器核内部结构

8.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 13:20:26 | 显示全部楼层
本帖最后由 firefly2k 于 2023-8-30 13:23 编辑

第五天: 字节存储顺序,存储结构和地址空间



9.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 13:27:14 | 显示全部楼层
第六天:处理器核内部结构,存储结构和地址空间、中断系统原理等



10.jpg


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-8-30 13:30:35 | 显示全部楼层
第七天:数据类型和端、指令中的符号规则、


11.jpg


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-9-3 20:26:47 | 显示全部楼层
本帖最后由 firefly2k 于 2023-9-3 21:53 编辑

2023/9/1
今天干货很多,又学习到了很多关键点。而且有老师现场解答。这里放一下一些关键的笔记


位寻址及定义
bdata指8051兼容的位空间;ebdata指定扩展的stc32G单片机的空间
int bdata ibase//可位寻址的int型
char ebdata arry[4]//可位寻址的char型数组
sbit mybit0= ibase^0 //ibase的位0
sbit mybit15= ibase^15 //ibase的位15
sbit ary07= arry[3]^7  //arry[3]的位7
8051总位数最大128bit,STC32可扩展位空间最多768位变量
禁止 bit *ptr,bit ware[5],指针和数组不行

变量寻址范围
idata, data, pdata(指针),只能寻址8位
near, xdata, code(指针),寻址16位

far, huge(指针),寻址32位

浮点数问题检测
C251库函数有_chkfloat_检查浮点数状态
switch( chkfloat (f1))//调用判定结果结果
{
case 0:// 取值为0,表示浮点运算结果正常
printf (”result is a number\n"); break; // 在Keil UART窗打印信息
case 1:// 取值为1,表示浮点除数为零
printf ("result is zero\n"); break;// 在Keil UART窗口打印信息
case 2:// 取值为2,表示浮点运算上溢
printf ("result is +INF\n"); break;// 在Keil UART窗口打印信息
case 3:// 取值为3,表示浮点运算下溢
printf ("result is -INF\n"); break;// 在Keil UART窗口打印信息
case 4:// 取值为4,表示不是一个数
printf ("result is NaN\n"): break;// 在Keil UART窗口打印信息
}


Double变量注意的问题
使用double,必须在keil->C251,选中“double precision floating point”

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-28 14:10:14

19

主题

385

回帖

2508

积分

版主

积分
2508
QQ
发表于 2023-9-4 08:46:44 | 显示全部楼层
建议爱学习的小伙伴直接联系我们客服小姐姐,以便更快的获的实验箱,
同时也希望能看到小伙伴后面更详细的学习感悟,一起提升大家的学习热情

=====提前获得 【免费+包邮送】的 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(周一 到 周五, 法定节假日除外)
QQ:1463035472,微信:19952583954
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-03-30 20:18:10

11

主题

45

回帖

236

积分

中级会员

积分
236
发表于 2023-9-5 16:02:55 | 显示全部楼层
本帖最后由 firefly2k 于 2023-9-5 17:00 编辑

2023/9/5 讲了几种变量类型的定义和指针
const运行时未修改的对象,常数变量
const unsinged short xdata a[10]={1,2,3....}//在data, idata, xdata定义
const unsigned short code a[10]={0,12...}//在ROM中定义
const unsigned char mask[]={0,1,3...};
const unsigned char *cp = mask;
unsigned char *p=mark;//与cp效果相同
....
*p='a';//这里没有意义,不会警告
*cp= 'a';//这里中导致错误 常数指针不能更改

volatile易失性限定符,用于限制编译器对对象值的假设
unsigned char reg1,reg2;
reg2= 7
reg2= 0xff
优化器对连续赋值的通一变量,会优化成只赋值一次。使用volatile要求不进行优化,所有的均执行

   
auto是本地变量默认的存储类型;只能在函数定义内使用

register寄存器变量,通常C251编译器忽略register存储类,如有可能所有变量都保存在寄存器中;只能在函数定义内使用

static 限制变量范围并修改局部变量生存期。在函数外声明时,无法在声明文件外访问该变量;当声明时,该变量在启动时就被初始化(与其他变量一样),并且在调用该函数时保持
int cal(intx)
{
static int y=0;
y=x-y-i;
return y;
}
若没有static,每次进入y都被初始化成0;若有static,第二次进入y=0的初始化无效,用上次的结果值

extern声明在另一个模块中定义的全局变量,不能初始化,因已经在定义时初始化完了

_at_绝对位置变量,xdata, edata是基于基地址的偏移量;其他类型为绝对地址


C251支持使用*字符声明变量指针
没有显式类型指针为通用指针
具有显式类型的指针为存储器特定指针
float data *dp //8位指针
int near *np;//16位指针
long xdat *xp//16 位指针


C251编译器可以转换指针的存储类型
在对printf的调用中,:表示2字节near指针的参数fmt被自动转换成强制为通用指针
这样做是因为printf的原型需要一个通用指针作为第一个参数。根据存储器模型,通用指针的大小为2个字节或4个字节
2.jpg
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-3 12:55 , Processed in 0.139359 second(s), 103 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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