摘要:
使用51单片机开发会容易出现DATA区内存不足的情况,有时体现为某SEGMENT OVERFLOW。这个时候可以充分利用128字节的片外RAM,在定义较大的数据类型时在最前面加上idata,在后面的程序中直接调用就可以了。 另外经常会出现栈溢出的问题。如果在主函数中单独调用子函数不会出错,而在另一个 阅读全文
摘要:
1)经常出现的问题是内存不够,即提示address overflow或者“data” segment too large时,建议把所有int类型的数据改为unsigned char或者char,因为unsigned char的取值范围刚好是0~255,即0x00~0xff;据说可以用xdata区来存 阅读全文
摘要:
1 unsigned char count=0; 2 void initT1() 3 { 4 EA=1; 5 TH1=0xDC; 6 TL1=0X00; 7 TMOD=0x10; 8 TR1=1; 9 ET1=1; 10 } 11 12 void t1() interrupt 3 13 { 14 TH1=0xDC; 15... 阅读全文
摘要:
基本组件是一个51单片机,一个74154译码器,四个MATRIX-8X8。 考虑到单片机引脚有限,所以使用P0口和P2口的总共16根引脚选择列,而P1口的低4位接译码器,译出的一个低电平选择行。所以图像的显示机制大概如下: (1)按行扫描,不需要手动选择哪一行,只需要将行数设置为自动加一即可。 (2 阅读全文