pic单片机c语言读eeprom,PIC16F877单片机内部EEPROM读写实例

;PIC16F877单片机内部EEPROM读写实例****************************************************************************************

; This is a program to test the function of reading&writting for EEPROM.

; YouCANOBServe the value of register(30H--?) buy changing "VALU" and "WRC_".

; Notice that:it must be { ADDR+WRC_<=0ffh } !

; ;****************************************************************************************

include "p16f877.inc"

ADDR EQU 20H ;写入地址寄存器

VALU EQU 21H ;写入值

REC_ EQU 22H ;读计数

WRC_ EQU 24H ;写计数

ORG 0000H ;

NOP ;放置一条ICD必须的空操作指令

GOTO main ;

;ORG 0008H ;

;org 0

;goto main

main nop

bcf STATUS,RP1

bcf STATUS,RP0 ;bank0

movlw 20h

movwf ADDR ;写入EEPROM初始值

;********************************************************************************************

clrf 8

bcf STATUS,2

DS2 nop

call DELAY

incf 8,1

movf 8,0

bcf STATUS,2

XORLW 0bh

btfss STATUS,Z

goto DS1

clrf 8

bcf STATUS,2

DS1 movf 8,0

bcf STATUS,2

call TABLE1

;***********************************************************************************************

;movlw 4fh

movwf VALU ;初始写入值

movlw 30h

movwf FSR ;间址,读出值初始存放地址

movlw 0Bh

movwf WRC_ ;写入次数

movwf REC_

;incf REC_ ;读出次数

wri_ ;写子程序

bsf STATUS,RP1

bsf STATUS,RP0 ;bank3

btfsc EECON1,WR

goto $-1

bcf STATUS,RP0

bcf STATUS,RP1 ;bank0

movf ADDR,W

bsf STATUS,RP1 ;bank2

movwf EEADR

bcf STATUS,RP1 ;bank0

movf VALU,W

bsf STATUS,RP1 ;bank2

movwf EEDATA

bsf STATUS,RP0 ;bank3

bcf EECON1,EEPGD ;to data memory

bsf EECON1,WREN

bcf INTCON,GIE

movlw 55h

movwf EECON2

movlw 0aah

movwf EECON2

bsf EECON1,WR

btfsc EECON1,WR

goto $-1

bsf INTCON,GIE

bcf EECON1,WREN

bcf STATUS,RP0

bcf STATUS,RP1 ;bank0

incf ADDR,1

;incf VALU,1

;decf VALU,1

decfsz WRC_ ;all write,to read_

;goto wri_

goto DS2

read_ ;读子程序

call TABLE1

bcf STATUS,RP1

bcf STATUS,RP0 ;bank0

decf ADDR ;next value

movf ADDR,W

bsf STATUS,RP1 ;bank2

movwf EEADR

bsf STATUS,RP0 ;bank3

bcf EECON1,EEPGD

bsf EECON1,RD

bcf STATUS,RP0 ;bank2

movf EEDATA,W

bcf STATUS,RP1 ;bnak0

movwf INDF ;存读出值

incf FSR

decfsz REC_

goto read_

goto main

;*******************************************************************************

TABLE1 ;取第二行的显示码TEL0755 27528531

ADDWF 2 ;地址偏移量加当前PC值

RETLW 30H ;0

RETLW 32H ;2

RETLW 30H ;0

RETLW 33H ;3

RETLW 33H ;3

RETLW 31H ;1

RETLW 36H ;6

RETLW 30H ;0

RETLW 30H ;0

RETLW 30H ;0

RETLW 33H ;3

;*******************************************************************************

DELAY

MOVLW 0FF

MOVWF 11

DTLAY1 DECFSZ 11

GOTO DTLAY1

RETLW 0

;*******************************************************************************

end

EEw&r.asm程序说明:

1、 本程序是对PIC16F877 单片机 的EEPROM数据区进行读写的演示程序;

2、 wri_为写入数据子程序,该子程序从ADDR寄存器确定的地址开始对EEPROM数据区写入(范例从10H开始),每进行一次写操作将使ADDR值加一;

写入数据的初始值由VALU寄存器给定(范例值为90H),每进行一次写操作将使VALU值减一;写入规定个数(由WRC_寄存器给定,范例值为0FH)的

数值后,结束写入,转至read_。

3、 read_为读出数据子程序,该子程序从ADDR寄存器当前值确定的地址开始对EEPROM数据区读出(当前值=ADDR+WRC_<=0FFH),每进行一次读操

作将使ADDR值减一;读出数据后程序将把该数据存入通用寄存器中,开始存放的地址由FSR的值指定(范例为30H),每进行一次读操作将使FSR的值

加一;读出规定个数(由寄存器REC_给定,范例值为0FH)的数值后,结束读出,回main。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/382939.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言运行gis空间叠加分析,GIS空间叠加分析与缓冲区分析.doc

《地理信息系统》报告专 业 资源环境与城乡规划管理 姓 名 成 绩班 级 学 号 日 期 2014/6/20目录TOC \o "1-2" \h \u 14469 一、题目 23290 二、设计目的27200 三、设计背景2四、设计内容27200 四、步骤与过程27200 五、专题地图 37521 四、总结分析 9题目佛山市顺德…

组件文件已损坏或android内部模块,android - Android Q更新后,模块化系统组件在托管配置文件中不可用 - 堆栈内存溢出...

在从工作配置文件配置的设备设置应用中将操作系统从Android 9升级到10后&#xff0c;请停止运行。java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.settings/com.android.settings.applications.InstalledAppDetailsTop}: java.lang.NullPoin…

android文本复制自定义剪切板,android 剪切板-文本复制、粘贴

1. 粘贴&#xff0d;文本保存到剪切板中ClipboardManager clipboardManager (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);//创建ClipData对象ClipData clipData ClipData.newPlainText("orderNo", txt);//添加ClipData对象到剪切板中…

android保持服务不休眠,Android开发保持屏幕常亮和CPU不休眠唤醒状态

安卓手机 APP 开发&#xff0c;有的时候需要屏幕长时间亮着&#xff0c;也就是不锁屏&#xff0c;这时CPU会一直处于不休眠唤醒状态。下面介绍两种方法。方法一&#xff1a;通过 PowerManager 实现。此种方法会在软件安装时用户可以看到屏幕选项。首先&#xff0c;在 AndroidMa…

android 磁场传感器 罗盘,Android开发获取重力加速度和磁场强度的方法

本文实例讲述了Android开发获取重力加速度和磁场强度的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;Android获取重力加速度和磁场强度主要依靠&#xff1a;Sensor.getRotationMatrix (float[] R, float[] I, float[] gravity, float[] geomagnetic)输入数据&am…

android spinner位置,在Android中的Spinner中没有选择位置0

我创建了一个有三个项目的微调器日常每周每月一次我在我的java文件中执行了以下操作&#xff1a;navSpinner new ArrayList();navSpinner.add(new SpinnerNavItem(getResources().getString(R.string.dailyview)));navSpinner.add(new SpinnerNavItem(getResources().getStrin…

android tombstone发生过程,Android Tombstone解决步骤

这周和同事一起解了个tombstone的bug, 记录下分析的过程&#xff0c;免得以后又忘记。。。1>log的分析pid: 122, tid: 14745, name: Binder_2 >>> /system/bin/mediaserver <<<signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000058eax 00000…

优酷android手机客户端for,优酷手机客户端

优酷手机客户端官方最新版是官方出品的最新版播放软件&#xff0c;该软件上面汇聚了其他视频app上没有的精彩节目&#xff0c;全国各大精彩剧集与电影免费首播&#xff0c;更有独特高清蓝光画质播放&#xff0c;想要体验的朋友可以来欣赏一下!软件特点1、高清流畅播放2、国内外…

html在线编辑器 asp.net,ASP.NET网站使用Kindeditor富文本编辑器配置步骤

1. 下载编辑器下载 KindEditor 最新版本&#xff0c;下载页面: http://www.kindsoft.net/down.php2. 部署编辑器解压 kindeditor-x.x.x.zip 文件&#xff0c;将editor文件夹复制到web目录下3、在网页中加入(ValidateRequest"false")4、引入脚本文件(XXX部分需要修改)…

html表格中绑定显示xml文档内容的简单实例,JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)...

本文实例讲述了JS读取XML文件数据并以table形式显示数据的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;先看xml文件&#xff1a;张秋丽女 18李文才男 31李斯文男 22马英女 25孙红雷男 32欧阳俊雄男 28江琳女 23小小女 22aspx页面代码&#xff1a;function load…

html中通过定位 实现下拉,JS+CSS相对定位实现的下拉菜单

本文实例讲述了JSCSS相对定位实现的下拉菜单。分享给大家供大家参考。具体如下&#xff1a;这里使用的是相对定位&#xff0c;不过效果还可以&#xff0c;用时候再修整一下&#xff0c;这个只是实现了大概功能&#xff0c;还有许多细节没有修饰。运行效果截图如下&#xff1a;在…

html页面包含头文件,Web前端技术:HTML部分---Head标签中包含的头文件标签,body标签包含的内部标签...

1、Head标签中包含的 头文件标签的作用&#xff1a;(1)title标签&#xff1a;定义网页的标题。(2)meta标签&#xff1a;一般用于定义页面的特殊信息&#xff0c;例如页面的关键字、页面描述等(3)link标签&#xff1a;用于引入外部样式文件(CSS 文件)。(4)style标签&#xff1a;…

爬虫图片href是html图片,xpath爬虫实例,爬取图片网站百度盘地址和提取码

某套图网站&#xff0c;套图以封面形式展现在页面&#xff0c;需要依次点击套图&#xff0c;点击广告盘链接&#xff0c;最后到达百度网盘展示页面。这一过程通过爬虫来实现&#xff0c;收集百度网盘地址和提取码&#xff0c;采用xpath爬虫技术1、首先分析图片列表页&#xff0…

HTML如何做个播放器图表,Web绘图神器之ECharts-ts文件播放器

前言最近在做一个项目需要用到大量的图形报表来展示数据。就去对比了一些前端图形报表框架&#xff0c;有Highcharts、Echarts、Three.js。发现Three.js比较笨重&#xff0c;不太适合数据展示&#xff0c;做前端动画还是比较好。而highcharts、echarts比较轻量级拿来就用比较方…

微型计算机主存可以分为,计算机基础试题 (含答案)

计算机基础试题 (含答案)一、填空题(每空1分&#xff0c;共30分)1、计算计的软件系统通常分成______软件和______软件。2、字长是计算机______次能处理的______进制位数。3、1KB______B;1MB______KB。4、计算机中&#xff0c;中央处理器CPU由______和______两部分组成。5、CPU按…

90年代微型计算机,版本控制如何在80年代和90年代的当今微型计算机上工作?

您必须在当时的通用基础结构中看到这一点。在80年代初期&#xff0c;IBM发布了“个人计算机”&#xff0c;您可以从字面上理解它。开发PC应用程序的最常见方法是一个人创建某些东西并试图出售它。因此&#xff0c;每个发行版本一张软盘可能很常见。您可以购买一些漂亮的彩色标签…

全国英语计算机9月统考2019,2019年9月网络教育统考《计算机应用基础》模拟题6...

本文为大家提供2019年9月网络教育统考《计算机应用基础》模拟题6&#xff0c;有需要的考生请自取。网络教育本科全国统考《计算机应用基础》模拟题6一、单选题1、第一台电子数字计算机诞生于 ______。A &#xff1a; 麻省理工学院B &#xff1a; 哈佛大学C &#xff1a; 宾夕法…

计算机网络原码反码补码,计算机的原码和反码及补码到底是什么

数据在计算机里面都是以0和1存储和运算的&#xff0c;这是冯诺依曼体系的基础。比如一个数在计算机中若有正负之分&#xff0c;则用一个数的最高位(符号位)用来表示它的正负&#xff0c;其中0表示正数&#xff0c;1表示负数。原码就是整数绝对值的二进制形式&#xff0c;为了解…

计算机组装活动口号,广教育、多技能、求发展喜迎计算机系第五届电脑文化节...

在深入学习实践科学发展观&#xff0c;改革教育教学模式&#xff0c;迎接高职院校人才培养评估工作的今天&#xff0c;为贯彻以人为本理念&#xff0c;全方位服务学生&#xff0c;培养学生综合技能&#xff0c;本学期计算机系举办第五届电脑文化节&#xff0c;举办电脑文化节是…

关于计算机应用基础问题,《计算机应用基础》习题及问题详解

《计算机应用基础》习题及问题详解 (17页)本资源提供全文预览&#xff0c;点击全文预览即可全文预览,如果喜欢文档就下载吧&#xff0c;查找使用更方便哦&#xff01;19.90 积分实用文档第一章 计算机基础知识填空题&#xff1a;1. 信息技术在现代工业工程中的应用十分广泛&…