您尚未登录。

#1 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-26 11:31:02

armstrong 说:

既然你在学习这些通常被其它人忽略的基础,这几本书推荐给你【画框的那些】,最后都买上,真的很有帮助!
https://whycan.cn/files/members/1592/QQ图片20200424163435.jpg
https://whycan.cn/files/members/1592/QQ图片20200424163429.jpg

周六有在看CM3权威指南和ATPCS规则,CM3权威指南没看完,还是学习到了很多。

#2 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-26 11:26:47

armstrong 说:

既然你在学习这些通常被其它人忽略的基础,这几本书推荐给你【画框的那些】,最后都买上,真的很有帮助!
https://whycan.cn/files/members/1592/QQ图片20200424163435.jpg
https://whycan.cn/files/members/1592/QQ图片20200424163429.jpg

大神的书好多,我也要加油了。

#3 Re: 全志 SOC » 哇酷网友都乐于分享:为大家制作了F1C100s的RTX4+emWin5稳定项目! » 2020-04-26 11:25:25

armstrong 说:

老帖子已请求站长作废删除,另开此贴分享。欢迎大家交流!

哈哈,楼主你这个项目很不错,可以公布下你的硬件设备吗,用的啥开发板和屏幕。用相同的设备学习可能对小白来说更容易一些。
当然不是指我,我近期计划没有这个芯片的学习,后面有可能接触这芯片。

#4 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-22 13:29:16

aozima 说:

1. 去下载ARM的技术手册啊,实际用的时候有CMSIS的库,还有芯片厂家提供的库,不用自己抠寄存器。
2. 看ATPCS
5. 堆和栈 没有任何关系
6. 1

              芯片厂家提供的库?我所说的寄存器是R0-R15,不是那些GPIO寄存器之类的
              ATPCS有我要的一些答案,谢谢。
              好的,堆和栈是两个东西,堆栈指针SP只是栈处理。
              GCC如果没有定义堆空间,使用melloc时怎么分配空间?直接使用没被使用的内存空间?为什么不想MDK那样定义个堆空间呢?

#5 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-22 13:28:12

metro 说:

楼主的这些问题基本上在权威指南里面都有解答。这本书蛮好的,值得反复看。

准备详细看权威指南

#6 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-22 09:54:45

@aozima 芯片厂家提供的库?我所说的寄存器是R0-R15,不是那些GPIO寄存器之类的
              ATPCS有我要的一些答案,谢谢。
              好的,堆和栈是两个东西,堆栈指针SP只是栈处理。
              GCC如果没有定义堆空间,使用melloc时怎么分配空间?直接使用没被使用的内存空间?为什么不想MDK那样定义个堆空间呢?

#7 Re: Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-22 09:48:50

本人第一个贴,学习完CM3内核后,准备学习CM7和ARM920T内核,如果大家对内核的学习有什么建议可以畅所欲言,比如为什么要学习内核知识,内核知识主要了解哪一部分就可以了等等。

#8 Cortex M0/M3/M4/M7 » CM3内核学习疑惑 » 2020-04-22 09:39:57

lt56
回复: 12

1.CM3每个寄存器有什么作用?
2.进入函数时,函数的局部变量,形参,执行到哪,都怎么存放在内存中的?形参太多怎么处理的?
3.还有函数调用时,上面这些东东又是如何保存的?
4.多级函数调用时,这些又是怎么保存的?
5.堆栈指针SP好像就是栈空间和栈顶的处理,是向下生长的,SP主要是用来压栈和出栈的。
   然后堆呢?堆不是向上生长,主要用来C库的melloc等函数吗?堆是怎么处理的?
   还有就是看了stm32的gcc的链接脚本,没有定义堆空间,只有定义栈空间,然后直接把栈顶放在第一个地址去,
   这时要用melloc怎么处理的,直接用没被使用的内存?
   即使是stm32的MDK中定义了堆空间和堆地址,也进行对堆地址保存,但实际用时编译器是自动去调用这个堆地址的吗?
6.CM3有一部分寄存器是自动压栈的?为什么是那一部分寄存器?为什么要留其他的手动压栈?

目前还没开始看CM3的权威指南,只是带着这些疑惑准备详细读下CM3的权威指南,有些问题可能问得很白,希望大神们可以帮忙解答一下

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn