在你的C文件里引用EEPROM函数的头文件,eeprom_routinesh
然后在程序中使用
voideeprom_write(unsignedcharaddr,unsignedcharvalue);
unsignedchareeprom_read(unsignedcharaddr);
这两个函数了。
这两个函数一个读一个写。比如你想写0x10到地址为0x55的EEPROM,
就写:eeprom_write(0x55,0x10);
同理,如果想读取0x55地址处的值,
就写:ee_value=eeprom_read(0x55);
如果编译时编译器提示找不到eeprom_routinesh,可以在
X:\ProgramFiles\HI-TECHSoftware\PICC\981\include 目录下找,然后复制到自己项目文件夹下。
对了,我用的是MPLabIDE,编译器使用的是PICC。
先右键单击要导入程序的PIC芯片,然后再左键单击,d出属性对话框,有一个Program files选项,单击文本框后面的按钮即可导入你学要的程序,注意必须是十六进制文件,即hex格式
如果你习惯用C语言写程序的话,先告诫你,PIC系列的8位单片机很少用汇编写程序的。微芯也没推出针对pic8位单片机的C语言编译器(PIC18除外)。所以要用到C的时候,要用PICC这个编译器(这软件最便宜的也要五六百,但网上有破解)。如果用pic18系列或者PIC的16位单片机的话,推荐用微芯出的C语言编译器。(比PICC还贵,但也有破解的)。
单片机的替代有两层含义:一、不修改PCB的管脚兼容替代,比如用STC89C52替代AT89C52。这个层面上,松瀚单片机不可以替代pic,因为管脚不兼容。二、功能替代,可以修改原理图、PCB,只要求完成同样功能。这个层面上,条件宽松许多,但是松瀚单片机能不能替代pic,就要看资源是否满足,即IO管脚数、外设、速度,如果这些都没问题,可以替代,付出的代价是修改原理图、PCB、移植程序。
microchip 的PIC 单片机,使用 MPLAB 编译器进行程序编译。
比较cao蛋的是,MPLAB 具有多种编译器,版本相互不兼容。
其中市场主打 的PIC16F 系列,多数采用 MPLAB IDE 编译器(本人用V88版本(破解的,嘘),新的应该是V89版本,不过本人没多关注,也不知道正不正确)。
MPLAB 编译器,在编程的时候,必须选择单片机型号,而本人使用的IDE V88版,并不能支持所有的PIC16系列单片机型号(最起码,最近使用的PIC16F1513就没有支持,在MPLAB X IDE里有支持)
而microchip 的高级单片机 PIC18系列,则以 MPLAB X IDE 编译器为主(行业称“十”版本),不过用了IDE V88后,再下载使用 IDE 10(就是上面的十版本)。你会觉得画风突变,完全找不着北,连配置字、用户程序版本号都没法兼容使用。前面熟悉的IDE,完全没法发挥任何作用。你又得重新开始学习一个新的编程软件(害得哥在新项目上浪费了N多时间)。
最可恨的是,IDE 10 把市场上销售的PICKIT 3 的离线脱机下载功能给搞死了(一插上KIT 3,IDE 10就自动升级KIT 3 的内部固件程序)。然后哥只能给它贴上“研发专用”标签!
PIC 的单片机很多地方要注意的,不用的特殊功能(特别是AD)不是你不开就好的,而是你必须关闭才行。
PIC 单片机有自己的一套 汇编,如果你用汇编,你必须重新学习它的汇编语言。如果你使用C,那还好,多数是兼容的(除了 程序续行(就是单行程序太长,进行多行显示))。不过哥没整好它的混编(不知道是哥能力不够,还是破解安装少东西,都是编译错误),没法发挥它的高效。PIC 单片机的 除法运算1000个周期、左右移16位无法编译、硬堆栈层限制(就是函数内 调用函数 调用函数 调用函数……,最明显的就是递归调用被限死)…………一堆弱点!
以上就是关于pic单片机EEPROM怎么编写程序全部的内容,包括:pic单片机EEPROM怎么编写程序、proteus怎么仿真PIC单片机怎么往里面导入程序、pic单片机用什么开发软件(pic单片机开发环境)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)