时间:2023-05-07 11:30:01 | 来源:网站运营
时间:2023-05-07 11:30:01 来源:网站运营
最大化使用51的RAM空间:真正能用于产品的代码为非阻塞代码,需要做分层和隔离,为此使用了队列结构,另外为了标志各个状态,使用大量的变量,这些都增加了RAM存储器的消耗,由于51的资源很有限,如何才能最大化的发挥RAM空间呢?本文来探讨这个问题。//满洲里国峰电子科技 guofengdianzi.com//微信:GuoFengDianZi//已下代码基于STC89C52#define KEY_NOT_PRESSED 0 //之前做好的库函数中的变量定义char Key11_Value=KEY_NOT_PRESSED;//修改为bit类型bit Key11_Value=KEY_NOT_PRESSED;
同样的如果变量的范围不需要那么大,将其降级,比如从int型修改为char型。//满洲里国峰电子科技 guofengdianzi.com//微信:GuoFengDianZi//已下代码基于STC89C52//之前做好的库函数中的变量定义static unsigned int Key11TimerS,Key11TimerL;//"降级“变量的类型static unsigned char Key11TimerS,Key11TimerL;
//满洲里国峰电子科技 guofengdianzi.com//微信:GuoFengDianZi//已下代码基于STC89C52#define TXBUF_SIZE 64//例如串口发送缓存unsigned char TX_BUFF[TXBUF_SIZE];//可考虑将TXBUF_SIZE的大小改小//#define TXBUF_SIZE 8
然而修改了发送缓存的大小后,使用printf需要注意,例如://满洲里国峰电子科技 guofengdianzi.com//微信:GuoFengDianZi//已下代码基于STC89C52#define TXBUF_SIZE 4//例如串口发送缓存unsigned char TX_BUFF[TXBUF_SIZE];printf("------"):
使用串口助手打印://满洲里国峰电子科技 guofengdianzi.com//微信:GuoFengDianZi//已下代码基于STC89C52#define TXBUF_SIZE 64//例如串口发送缓存unsigned char xdata TX_BUFF[TXBUF_SIZE];//可考虑将TXBUF_SIZE的大小改小//#define TXBUF_SIZE 8
作者:潇洒的电磁波(专业:射频芯片设计、雷达系统、嵌入式。欢迎大家项目合作交流。)关键词:空间,使用