单片机遇到“auto segment too large“怎么办

这篇具有很好参考价值的文章主要介绍了单片机遇到“auto segment too large“怎么办。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

遇到这个情况有可能是某一个数组太大,然后单片机内部数据存储区不够用,

所以可以把这个数据存在单片机外例如

     int led[8][8]={
        {1,1,1,1,1,1,1,1},//1
        {1,0,0,0,0,0,0,1},//2
        {1,0,0,0,0,0,0,1},//3
        {1,0,0,0,0,0,0,1},//4
        {1,0,0,0,0,0,0,1},//5
        {1,0,0,0,0,0,0,1},//6
        {1,0,0,0,0,0,0,1},//7
        {1,1,1,1,1,1,1,1}//8

}

解决的办法是在变量前面加前缀xdata.改为

    xdata int led[8][8]={
        {1,1,1,1,1,1,1,1},//1
        {1,0,0,0,0,0,0,1},//2
        {1,0,0,0,0,0,0,1},//3
        {1,0,0,0,0,0,0,1},//4
        {1,0,0,0,0,0,0,1},//5
        {1,0,0,0,0,0,0,1},//6
        {1,0,0,0,0,0,0,1},//7
        {1,1,1,1,1,1,1,1}//8

}

这样就可以了,如果是直接修改keil的配置,后面会发生另外的意外,如果使用这个办法不会发生那样的事情。所以这个方法应该更好,例如把数据全部存在外部,那么访问速度会更慢

//注意了:如果按照上面办法会发生另外的错误

因为使用如果要使用上面的方法,或者把keil的设置更改为large,最后在Proteus仿真的时候都要外接一个RAM才能够模拟,而初学者是没有学习怎么外接RAM的,所以最好可以这么改

   unsiged char code led[8][8]={
        {1,1,1,1,1,1,1,1},//1
        {1,0,0,0,0,0,0,1},//2
        {1,0,0,0,0,0,0,1},//3
        {1,0,0,0,0,0,0,1},//4
        {1,0,0,0,0,0,0,1},//5
        {1,0,0,0,0,0,0,1},//6
        {1,0,0,0,0,0,0,1},//7
        {1,1,1,1,1,1,1,1}//8

}

这个code的意思:表示要把数据粗存在程序储存区,AT89C51单片机有64K之多,远远大于128B

足够用了。文章来源地址https://www.toymoban.com/news/detail-621976.html

到了这里,关于单片机遇到“auto segment too large“怎么办的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单片机 | 51单片机原理

    【金善愚】 单片机应用原理篇 笔记整理 课程视频 :https://space.bilibili.com/483942191/channel/collectiondetail?sid=51090 三类 电源及晶振引脚(共4只) 控制引脚(共4只) 端口引脚(共32只) Vcc(40脚):电源端,接+5V电源。 Vss(20脚):接地端。 XTAL1(19脚):接外部晶振和微调电容的一端。 XTAL2(18脚):

    2024年02月02日
    浏览(49)
  • 单片机2:单片机介绍

    Single Chip Microcomputer 将以下部件全部做到一块集成电路芯片中:CPU(进行运算和控制)、RAM(数据存储)、ROM(程序存储)及输入输出设备。 RAM:主要存储数据,掉电会丢失数据。 ROM:掉电不丢失 51单片机是所有兼容Intel 8031指令系统的单片机的统称。 我的单片机板子参数:

    2024年02月06日
    浏览(54)
  • 【单片机】单片机入门指南

    一、概述 单片机(Microcontroller,简称MCU)是一种集成了微处理器、存储器、时钟、IO端口和外设接口等的集成电路芯片。它可以通过编程实现各种控制、运算等功能,常用于自动化控制、家电、智能仪表等领域。 二、单片机的种类和选型 根据位数、功能、性能等不同指标,

    2024年02月10日
    浏览(35)
  • 单片机入门——什么是单片机?

    单片机就是一个集成电路芯片,是一个采用超大规模集成电路技术将具有数据处理能力的CPU,存储器,IO端口,定时器等功能集成到一个硅片上,具有小而完整的微型计算机系统。 就是将复杂的计算机系统 进行裁剪,然后封装起来,可以实现一定功能的微型小电脑。 单片机

    2024年02月07日
    浏览(41)
  • 【单片机】单片机存储器结构

    单片机内部存储结构分析    我们来思考一个问题,当我们在编程器中把一条指令写进单片要内部,然后取下单片机,单片机就可以执行这条指令,那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢

    2024年04月12日
    浏览(41)
  • c51单片机串行通信示例代码(单片机--单片机通信)(附带proteus线路图)

      后面这个是接收端代码  另外发现一个奇怪的现象:如果把T1口改为T0口没有办法正常模拟

    2024年02月13日
    浏览(41)
  • 51单片机实现贪吃蛇(清翔单片机)

    目录 一、创作背景 二、实现过程 1.一些声明与定义 2.键盘扫描 3.定时器中断 5.蛇的初始化 6.蛇体的移动 7.食物的创建 8.食物的检测和身体的增长 9.检测死亡 10.总代码 总结 由于大一的一个小作业,花了10天完成了这个小项目,中途克服了很多困难,发此文章以作纪念。 这些

    2024年02月08日
    浏览(38)
  • 51单片机的基础知识——单片机简介

    仅用于学习交流!!! 仅用于学习交流!!! 仅用于学习交流!!! 单片机,即单片微型计算器,简称为单片机。用专业术语来讲单片机就是在一块硅片上集成了微处理器、存储器以及各种输入/输出(I/O,I指的是input,O指的是output)口的芯片。通俗点讲,单片机是一块集

    2024年02月03日
    浏览(52)
  • 51单片机:设计一单片机双机通信电路

    鱼弦:CSDN内容合伙人、CSDN新星导师、全栈领域优质创作者 、51CTO(Top红人+专家博主) 、github开源爱好者(go-zero源码二次开发、游戏后端架构 https://github.com/Peakchen) 设计一单片机双机通信电路。要求编程实现:甲单片机系统中的按键可以控制乙单片机系统中的数码管(MPX8)动

    2024年02月20日
    浏览(47)
  • c51单片机串口通信(中断方式接收数据)(单片机--单片机通信)示例代码 附proteus图

         单片机一般采用中断方式接受数据,这样便于及时处理 其中发送数据段采用的是查询方式,接收端采用了中断方式, 要注意的地方有: 在中断处理函数int_0()内,处理数据前要先关闭中断,否则中断可能会不断传过来, EA=0; 然后退出中断处理函数前恢复中断处理能力:

    2024年02月13日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包