找回密码
 立即注册
查看: 1047|回复: 12

8月8日学习何宾教授课程笔记

[复制链接]

该用户从未签到

1

主题

14

回帖

111

积分

注册会员

积分
111
发表于 2023-8-8 18:02:12 | 显示全部楼层 |阅读模式
今天有幸参加学习,感谢何宾教授,感谢主办方STC。这么好的学习资源,而且免费,好安逸。笔者入门级学习,听课后,有做以下笔记,以加深记忆。

堆栈(stack
SP总是指向栈顶
堆栈存储:SP先加1,再存储数据
堆栈出:先出数据,SP再减1
堆栈有先进后出的特点
针对16位,32位数据,有大端小端存储的方式
大端:字节从高字节开始存
小端:字节从低字节开始存
程序flash存储器
PC指向下一条要执行的指令
复位后,PC内容为0x0000
最大容量不会超过0xffff,即不会超过64K
用来服务中断的服务程序入口地址放在存储单元低地址的地方,发生中断时,PC指向跳转的地址
程序存储器的特点:低压保护;对外不提供读,防止程序破解,程序要先擦才能写
数据flash与程序flash分开,下次下载程序,数据不会被覆盖
数据flashRam中数据不一样,数据flash掉电不会消失
Flash相对cpuflash很慢,所以设置WT2~ET0,设置flash的擦除与编程时间,让两者匹配
接下来是RAM存储器 以stc15为例
基本RAM  256 Byte
扩展的+上面的256Byte = 4k
RAM分为三个部分
直接寻址可以访问SFR
间接寻址可以访问RAM128字节
为什么分4组,不用R0~R31,因为1~32要用5位。从R0~R8只用3位就可以了
通过RS0 RS1 赋4种值,在不同的时间,就可以分别访问这32RAM
姚总:
EEPROM触发寄存器
必须先发向寄存器IAP_TRIG   5A  A5两个触发命令来触发擦除
关于flash电压,flash电压与mcu电压匹配
内部flashEEPROM,每个扇区包含512字节
flash字节是FF,可以写。如是FF,必须擦除,才能写
软件把XFR打开后,一般不用再关
32位单片机内部结构
24位地址总线   32位数据总线
兼容816 32
片内核心4K EDATA,扩展XDATA  8k,总共12k
24位的地址,它们的区分,不光能用指令来区分,还能根据其地址总线定义区分:其访问的是哪一个区域。
高8位表示访问的段空间,低16位表示访问段空间具体的存储单元位置
DMA的机制,可以不通过cpu,让内存与外设通信
32位寄存器文件,充分兼顾了32168
提供40个寄存器(以8位宽度计算)
其访问可以:
8位:按字节访问
16位:按字访问
32位:按双字访问





stc32g内部结构图

stc32g内部结构图

存储

存储
回复 送花

使用道具 举报

  • TA的每日心情
    奋斗
    2023-12-18 15:13
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    4

    主题

    221

    回帖

    884

    积分

    高级会员

    积分
    884
    发表于 2023-8-9 11:13:56 | 显示全部楼层
    欢迎楼主继续打卡学习,
    分享更详细的上课感受和学习到的知识
    优秀的打卡贴会优先获赠实验箱包邮

    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-9 17:23:41 | 显示全部楼层
    8月9号学习  陈老师:(单片机原理、接口技术及应用实战9)
    今天学习了陈老师的汇编指令集讲解

    姚总:
    超级强大的自动烧录工具usb Link 1D,仿真工具
    这个工具确实好用,我自己在淘宝买了一个,连接stc32g单片机,用keil编译后,直接就可以keil烧录及仿真
    非常方便,并且仿真口可选,对于被占用的口,可选另外的仿真口。强大。
    STC8H本身与电脑通信的串口最高10m波特率,非常快,比ch340g强大多了
    这几天学习,最好能掌握usb直接通信这种最强大的串口方法
    陈老师:(单片机原理、接口技术及应用实战9
    要成为大佬,最好能学会汇编,更能从底层理解。
    今天讲汇编语言指令系统
    位操作指令
    17条指令,在程序中,要怎么表示这个位呢?
    位地址(十六进制数表示)
    写成 字节地址.位号   例如0B8H.0   20H.7
    位寄存器的定义名称  比如C  EA  EA高电平命令:SETB  EA
    对于位寻址寄存器,可用 字节寄存器.位数
    伪指令 
    1.png
    2.png
    3.png
    姚总:
    RET 子程序返回
    RETI 中断返回,通知cpu解除挂在那里的优先级
    陈老师:
    如果在电脑旁边,最好装好keil,做一些例子
    程序的一般步骤与基本框架
    关于仿真,最好还是有硬件,软件仿真还是跟不上硬件的仿真
    4.png


    回复 支持 1 反对 0 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-11 09:36:58 | 显示全部楼层
    本帖最后由 aniet 于 2023-8-11 11:08 编辑

    8月11日使用Link 1D工具仿真stc32g,注意事项,写下来
    扫描串口上,显示的是STC-USB LINK1(LINK1)   不是STC-USB Writer(HID1)  , Link 1D工具接上电脑就可以用,不需要再控制P32断电
    把目标芯片stc32g做成仿真芯片,此时实际上,是要烧录的,此时默认的烧录通信口是P30 P31,所以工具与目标芯片的这两个口连接
    硬件选项,选择与程序一致的系统时钟
    Link1/U8W脱机 这里,一定要勾选“在线下载完成后持续给目标芯片供电”
    此时,虽然烧录通信的是P30 P31,但如果后续这两个脚可能被占用,在制作仿真时,可以选择其它组,我这里选择的是P36 P37
    烧录完成后,把通信口从连接目标的P30 P31改为P36 P37
    此时,keil中,可以开心的仿真及直接keil烧录了,非常方便

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    1 小时前
  • 签到天数: 95 天

    [LV.6]常住居民II

    14

    主题

    615

    回帖

    2335

    积分

    超级版主

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

    www.STCAI.com
    微信&手机:18106296591
    QQ:3133693787
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-11 18:20:56 | 显示全部楼层
    8051启蒙者 发表于 2023-8-11 14:02
    楼主对我们的免费公开课 认可/支持/给力,建议主动联系我们同事
    =====提前获得 【免费+包邮送】的 STC32G12 ...

    谢谢,今天已经收到贵司送的stc32g样品箱。仿真器Link 1D之前已经在淘宝买了一个,正好配合用

    点评

    好的!拿到实验箱后就可以边上免费培训课边实际操作啦!期待楼主后续能分享更多的学习心得~  详情 回复 发表于 2023-8-12 09:27
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-11 18:47:52 | 显示全部楼层

    stc32g点亮第一颗灯

    本帖最后由 aniet 于 2023-8-11 19:41 编辑

    8月11日学习笔记

    程序加密后传输(发布项目程序)让客户自己升级程序,不需要寄回来,又保护了我们的源代码。
    6冲哥讲usb实战,很重要
    触摸按键很敏感,不要走多余的线,不要实地铜,最好铺网格铜,反面不要铺铜
    PWM用各种方式实现正弦波。ADC来保证精度。
    何老师
    1.png
    2.png
    3.png
    4.png
    中断最好不要写太多,让堆栈小些
    另一方面要快进快出,可以放一些flag,在main中处理

    另外送的32g实验箱到了,这几天讲汇编,于是学习一下汇编,点亮第一颗灯(comm共用头文件在官网下载的)
    $include (comm/STC32G.INC)
            ORG 0000H //程序由位址0开始执行
            LJMP MAIN
            ORG 0200H
    MAIN:
            MOV WTST, #00H     ;设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
         MOV CKCON,#00H     ;提高访问XRAM速度
         ORL P_SW2,#080H    ;使能访问XFR
            
            MOV SP, #3FH //设定堆叠指针至RAM位址

            MOV P0M1,#00H
            MOV P0M0,#00H
            MOV P1M1,#00H
            MOV P1M0,#00H
            MOV P2M1,#00H
            MOV P2M0,#00H
            MOV P3M1,#00H
            MOV P3M0,#00H
            MOV P4M1,#00H
            MOV P4M0,#00H
            MOV P5M1,#00H
            MOV P5M0,#00H
            MOV P6M1,#00H
            MOV P6M0,#00H
            MOV P7M1,#00H
            MOV P7M0,#00H
            CLR P4.0  
            
    LOOP:
            CLR P6.0
            JMP LOOP
            
            END

    点亮第一颗灯.zip

    120.04 KB, 下载次数: 42

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    1 小时前
  • 签到天数: 95 天

    [LV.6]常住居民II

    14

    主题

    615

    回帖

    2335

    积分

    超级版主

    积分
    2335
    QQ
    发表于 2023-8-12 09:27:05 | 显示全部楼层
    aniet 发表于 2023-8-11 18:20
    谢谢,今天已经收到贵司送的stc32g样品箱。仿真器Link 1D之前已经在淘宝买了一个,正好配合用 ...

    好的!拿到实验箱后就可以边上免费培训课边实际操作啦!期待楼主后续能分享更多的学习心得~
    www.STCAI.com
    微信&手机:18106296591
    QQ:3133693787
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-14 18:04:08 | 显示全部楼层

    读写EEPROM基本操作_stc32g学习笔记

    8月14日,学习陈老师单片机C语言相关



    需要声明较大的数组时,可以用xdata关键字,将变量数组保存在扩展RAM
    pdata尽量不要用
    unsigned char xdata arr[300][2];
    volatile影响编译器编译的结果,所以加了这个关键字后,就不要编译优化
    陈老师关于中断号,用易记符代替的建议
    do while  做了再判断 ,至少都会执行一次
    While   先判断再做,有可能一次也不执行
    Do while对应汇编中的djnz,在某些编译器中,时间数值统计更精确


    读写EEPROM基本操作.zip

    144.54 KB, 下载次数: 43

    读写EEPROM基本操作

    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    14

    回帖

    111

    积分

    注册会员

    积分
    111
     楼主| 发表于 2023-8-15 18:50:55 | 显示全部楼层
    今天学习了冲哥,单脚P60输出占空比20%,频率21k Hz的方波。加入附件,随时可以复习。

    P60输出占空比20%的21kHz方波.zip

    196.2 KB, 下载次数: 38

    单脚 输出pwm

    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-17 10:22 , Processed in 0.081413 second(s), 70 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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