/*
说明
DS1302.h DS1302中的特殊定义
DS1302op.h 操作DS1302的函数声明
DS1302op.c 操作DS1302的函数实现
*.* 其余文件为调试时的辅助文件
源程序按版本号放在文件夹中。里面有在Protues中仿真的DSN文件。
打开MPLAB的MCP文件进行编译
将DSN文件载入Protues中
将生成的HEX导入到Protues中的16F84A中 -> RUN
编译调试环境:
Protues 4.7 SP3
MPLAB 7.5
PICC 8.05 PL1
PIC.jpg 为在Protues中仿真的效果图。(图中为简化线路,未加驱动芯片,晶振等)
*/
/*
版本历史
0.0
确定使用不同的函数实现RAM的读/写,时间的读写,以及多字节的读写
确定读/写单字节用用函数实现
确定各个函数的入口参数及类型
1.0
实现0.0
使用行汇编,并且可选择使用汇编代码还是C代码
做出最基本的功能,满足读写1302的要求
完成八个函数:单字节读/写,多字节读/写 分别为RAM操作和时间操作
2.0
将时间和RAM操作的命令合并,合并为四个函数
更改头文件定义,各函数入口参数及类型不变
3.0
将单/多字节函数合并,将读/写命令合并,只使用一个函数OperateDS
操作方法由参数给出
返回值不显式给出,由代码生成
单字节操作使用中间变量DataTemp,目的:统一单/多字节操作
更改头文件定义,各函数入口参数及类型不变
4.0
去掉部分行汇编,改用C语言操作间接寻址器
不再提供C与汇编的选择,部分汇编改由C编写
将读字节函数嵌入到OperateDS中,提高效率
由于控制字节CMDByte使用一次后便没有用了
因此取消外部参数传递变量DataAll,复用CMDByte
由于写字节函数还需要写操作码,因此用不同于读字节的方法
更改头文件定义,各函数入口参数及类型不变
5.0
去掉多余的东西
头文件改动: 在单字节写入操作时,如果数据以变量形式给出,给出专用的函数以节省资源
variable edition: WriteDSvar(cmd,VarData)
WriteRAMvar(Address, VarData)
WriteTimevar(Address, VarData)
更改头文件定义,以前各函数入口参数及类型不变
潜在问题:
OperateDS的ptr参数直接传给FSR,没有进行页面处理,可以用FSR=ptr解决
WriteByte与OperateDS不同页时,可能会导致 CMDByte 传递出错,解决方法:重写WriteByte函数增加中间变量
...
5.1
让5.0的例子可以使用。只修改了DS1302op.h文件中端口定义部分
*/
//Code example:
#include <pic.h>
#include "DS1302op.h"
void main()
{
//Make sure you have already defined the pin in head file DS1302op.h
unsigned char Times[8];
TRISA=0;
UnlockDS1302;
Times[DS_Second]=0x03;
Times[DS_Minute]=0x34;
Times[DS_Hour]=0x17;
Times[DS_Date]=0x21;
Times[DS_Month]=0x01;
Times[DS_Year]=0x07;
//Set time and date to 21-01-07 17:34:03
WriteTimeAll(Times);
}
小贝德罗
- 粉丝: 89
- 资源: 1万+
最新资源
- ivms4200海康威视
- 经典低压带隙基准Banba,电流模结构,有版图 VDD=1.5V,输出为890mv,前仿真ppm为22.7,想要别的电压值可以自己再做调整 工艺是smic130nm 包含两个bandgap电路在里
- vite.config.mjs
- 机械设计拆齿机sw20可编辑非常好的设计图纸100%好用.zip
- 机械设计侧面旋转提升机sw21可编辑非常好的设计图纸100%好用.zip
- 基于springboot的课程设计PDF
- Anaconda安装教程注意事项PDF
- 华为低代码平台加速企业数字化转型:从理论到实践的全面解析
- 基于java+ssm+mysql的大学心理咨询管理子系统开题报告.doc
- 基于java+ssm+mysql的二手车交易平台开题报告.docx
- 基于java+ssm+mysql的二手车交易平台任务书.doc
- 文字生成图片-可灵1.6
- 1篇:BIM+钢筋集中加工论文
- easyocr使用的craft-mlt-25k.pth文件
- python个人设计代码.zip
- 深入浅出HTTP协议PDF
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈