首页 > 电子

stm32程序如何确定栈的大小

这两天花了一点时间,把基于esp8266的内置编程网页的简易PLC一体机改为基于w5500可以通过网页连接的设备。目的在于考虑到有一些场合,可能2.4G的wifi连接不稳定,需要通过有线或者是5.8G的wifi连接,内置编程网页的有线连接的PLC的一体机的成功研发使得PLC的应用覆盖了该使用场景,将esp8266上采用freertos操作系统的tcpclient和tcpserver以及httpserver,web网页前端等移植到stm32f103RET6处理器上,并且纯裸奔未使用操作系统,还是比较考验软件设计的功底。

1、一个进程的堆和栈有多大

栈是线程的,不是进程的是一个进程一个堆,一个线程一个栈吗堆≈虚拟内存大小1GB栈通常为4MB下面是一些说明文件:VisualC 编译器选项/F(设置堆栈大小)请参见发送反馈意见设置程序堆栈大小(以字节为单位)。/F[]number参数number堆栈大小(以字节为单位)。备注如果不使用此选项,堆栈大小默认为1MB。number参数可以用十进制或C语言表示法表示。

2、单片机的栈大小和位置是固定的吗?

51单片机复位后堆栈的位置是固定的即(SP)07H由于占用了工作寄存器区因此需要重新设置堆栈指针的位置和大小例如可以设为MOVSP,#6FH即将70H~7FH作为堆栈使用。51是可以自己定义的,其它的不清楚,估计也应该是可以的。接触到的单片机都是的。大小可以自己定义,位置不行。

3、stm32的一款芯片说明“程序存储器大小64KB数据RAM大小20KB”这两...

程序存储器是flash,断电后不会丢,ram是sram,断电后会丢,sram的速度比flash要高一个数量级。通常放数据。程序一般放在flash中。程序存储器是指芯片的flash,是只读存储器,掉电后不会丢,主要存储你所编写的程序代码,运行过程不能修改,只能随机读取;ram是sram,是随机存取存储器,断电后会丢失数据,主要是在运行时存储程序中的变量,可以随机读写。

4、stm32的内存大小如何选择?

能提这个问题,那么我可以认为这两点你都能做到吧?1、使用stm32串口收发数据。2、使用stm32对flash进行读写,至于你说的“边发送边解析”是什么意思?就是说整个文件你并不是全部都要,只是提取出有用数据来然后再写进flash里面是吗?而且你要在stm32里面解析文件,而且这个文件还比flash要大?告诉你的是,解析文件那肯定是要在ram中进行的,只有在ram中进行处理后提取出有用信息才能写入flash。

保存到:

相关文章

Top