用51单片机存储数据
1、)MCS-51单片机的存储器从物理结构上分为:片内和片外数据存储器,片内和片外程序存储器。
2、片内数据存储器,51 系列是:00~FFH,共 256B。52 系列是:00~7FH,共 128B。片外数据存储器:0000~FFFFH,共 64KB。特殊功能寄存器:80H~FFH,只有 21 个单元。位寻址区,RAM 功能:00~7FH,共 128 bit 。
3、把参数保存到51单片机:如果是保存掉电不保护的缓存数据,可以用单片机内部的RAM空间,包括20H~7FH直接寻址区、80H~FFH中非SFR占用的间接寻址区,在STC单片机中还有内部扩展RAM也可以使用。
4、单片机内部RAM中低128字节的20H~2FH共16个字节可以用位寻址方式访问其各位。共128个位地址为00H~7FH。假设位地址为48H,那么单元地址=48H/8+20H=29H。
5、单片机内部数据存储器有几个可寻址位?--在字节地址 20H~2FH,称为“位寻址区”。--在位寻址区,共有 16 字节,形成 128 个可寻址位。其地址范围是多少?--位地址的范围是:00H~7FH。
51单片机中16位的数据怎么存放在存储地址中
按照这个方法,把它存放到八位的51单片机数据存储器,也不难。
读出51单片机T0计数器的计数值,并存到内部RAM的(31H)(30H)中,这很简单,用两条指令就行。
还有一种方法是存在外置的eeprom里面,这种芯片保存数据比较安全可靠,容量也大,但是价格比较贵,一般是用SPI通讯来实现的!纯手打,望采纳!楼主还有什么不明白的可以追问。
寄存器寻址:操作数放在寄存器中,在指令中直接以寄存器的名字来表示操作数的地址。例如MOV A,R0就属于寄存器寻址,即将R0寄存器的内容送到累加器A中。
51单片机,采用4路AD采集数据,AD采集完成后,这4个数据如何保存?
1、单片机AD读取外界数据,存储在单片机的寄存器中,00H~7FH都可以存储,一般存在30H~7FH中,00H~1FH是工作寄存器区域,20H~2FH为位地址区域,最好不占用。
2、随便只要是存储器里都可以储存,如果需要掉电保存,就得保存到EEPROM,或者flash里,想看的话,要程序读出,在屏幕上显示,或者上传给电脑读取数据查看。
3、AD采集的数据在AD内部,你不读它,它就不出来。至于读出来后,你想放在单片机内部或外部RAM何处那就是你自己的事了。
c51如何保存现场数据
几种方法: 把数据保存到片内Flash,EEPROM中, 上电取出来。 把数据保存到外扩EEPROM中 把数据保存到外扩Flash中 把数据保存到nonvolatile RAM中。别的就不知道了。
ROM只是程序的载体,程序的执行是要在单片机内部寄存器中执行的,先从ROM中把指令读到RAM中,然后执行。
如果是常量,一般是存在ROM中和程序放在一起,只需要将这个常量定义成code存储类型,如果这个常量数组很大,也可以存在外部NVM中,例如FLASH,EEPROM等等。当需要大容量变量时,一般是放在FLASH、EEPROM中。
不用操作,可自动保存。不用操作,只要你写完程序运行成功,就可以。turboc++0会自动生成exe文件。
C51程序保存的文件类型为A *** ,保存汇编后缀为.A *** 。C51是和计算机硬件相结合的一种编程技术。C51单片机本书是以目前最为流行的8051系列单片机为主体,同时使用c程序设计语言来进行描述的。
51单片机如何保存大量实验数据
用EEPROM 的24C02记录下每一秒的温度好了,2K的存储量,能记录下很多数据了。电路图接法和程序网上都有。
现在流行的c51单片机如c51等都有Flash存储器,可掉电保存数据,这样就不需要外扩存储器。经典的MCS-51很古老,没有Flash,所以一般单片机教材上的都没讲怎样保存数据。具体有没有Flash可以查看单片机的数据手册。
可以用定时器控制,同时每50ms就将数据保存一次。在主程序的开始再将数据读取出来就可以了,51单片机内部没有EEPROM,所以不能够实现该功能,可以用52。或者是用外部芯片,用24c02,也可以实现这个功能。
可以啊。开辟一个数组空间,把采集的数据存在数组里,到用串口的时候,把数组的数据从串口发送出去就行啦。
程序存储区不能存储数据,可以用EEPRAM来存储数据。不外加存储器也可以实现,就用STC单片机它内部有EEPRAM。
STC51单片机自带flash数据存储,芯片文档有很详细的使用说明。
还没有评论,来说两句吧...