aniet 发表于 2023-8-8 18:02:12

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

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




月光如盐 发表于 2023-8-9 11:13:56

欢迎楼主继续打卡学习,
分享更详细的上课感受和学习到的知识
优秀的打卡贴会优先获赠实验箱包邮
https://www.stcaimcu.com/data/attachment/forum/202308/09/110558tmdfkk1dfdsf22fd.png

aniet 发表于 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位寄存器的定义名称  比如CEA让EA高电平命令:SETBEA对于位寻址寄存器,可用 字节寄存器.位数伪指令 


姚总:RET 子程序返回RETI 中断返回,通知cpu解除挂在那里的优先级 陈老师:如果在电脑旁边,最好装好keil,做一些例子程序的一般步骤与基本框架关于仿真,最好还是有硬件,软件仿真还是跟不上硬件的仿真


aniet 发表于 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烧录了,非常方便

8051启蒙者 发表于 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(周一 到 周五, 法定节假日除外)

aniet 发表于 2023-8-11 18:20:56

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

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

aniet 发表于 2023-8-11 18:47:52

stc32g点亮第一颗灯

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

8月11日学习笔记

程序加密后传输(发布项目程序)让客户自己升级程序,不需要寄回来,又保护了我们的源代码。周6冲哥讲usb实战,很重要触摸按键很敏感,不要走多余的线,不要实地铜,最好铺网格铜,反面不要铺铜PWM用各种方式实现正弦波。ADC来保证精度。何老师



中断最好不要写太多,让堆栈小些另一方面要快进快出,可以放一些flag,在main中处理
另外送的32g实验箱到了,这几天讲汇编,于是学习一下汇编,点亮第一颗灯(comm共用头文件在官网下载的)$include (comm/STC32G.INC)      ORG 0000H //程序由位址0开始执行      LJMP MAIN      ORG 0200HMAIN:      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

8051启蒙者 发表于 2023-8-12 09:27:05

aniet 发表于 2023-8-11 18:20
谢谢,今天已经收到贵司送的stc32g样品箱。仿真器Link 1D之前已经在淘宝买了一个,正好配合用 ...

好的!拿到实验箱后就可以边上免费培训课边实际操作啦!期待楼主后续能分享更多的学习心得~

aniet 发表于 2023-8-14 18:04:08

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

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



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

aniet 发表于 2023-8-15 18:50:55

今天学习了冲哥,单脚P60输出占空比20%,频率21k Hz的方波。加入附件,随时可以复习。
页: [1] 2
查看完整版本: 8月8日学习何宾教授课程笔记