02 2020 档案
摘要:翻查DS18B20的DataSheet编写操作函数,其过程遇到了不少坎,记下来备查。 对于单总线的DS18B20芯片,首先严格按照时序图写出正确的“写0”、“写1”和“读0、1”的基础函数,再以此写出其他基础操作的命令。 我在编制“写0”函数的时候,省却了最后拉高总线的一句bus=1,结果后续操作过
阅读全文
摘要:经过几天时间,看着DS12C887的DataSheet把这个带闹钟的电子日历遍了出来。 发现了几个问题,在此记录一下: DS12C887虽然说带闰年、星期等等的自动计算,可是在手工设置时间时,居然可以把超出时间范围的数字写入相应的地址,例如在日期地址中可以写入“32”号,时钟过了23:59分后,居然
阅读全文
摘要:网上DS12C887的文章涉及到时间的存储格式使用的都是二进制代码,究竟使用BCD码该如何操作?正好美信官网上有一篇文章。美信官网不稳定,先贴到这里,有时间再翻译。 原文链接 State Machine Logic in Binary-Coded Decimal (BCD)-Formatted Re
阅读全文
摘要:用DS12C887设计一个万年历,虽然反复查看说明书,还是出各种的错误。 因此,从美信官网查询资料,翻译的不太通,凑合着对照看。 原文链接 Tips for Writing Bulletproof Real-Time Clock Control Code 关于编写健壮的实时时钟控制代码的提示 摘要
阅读全文
摘要:在调试串口通讯过程中搞清楚几个配合问题: 使用Keil带的C51库函数puts、printf之前必须置TI=1; 蓝色(一)处可以使用ES=0、ES=1,这时串口中断中(二)处,有无TI=0均可; 如果(一)处不使用ES=0、ES=1,这是串口中断中(二)处,不能使用TI=0; puts发送完字符串
阅读全文
摘要:原文排版远些乱,整理了一下。 1 #include <reg51.h> 2 3 #define XON 0x11 /*串口流控制符 启动*/ 4 #define XOFF 0x13 /*串口流控制符 中断*/ 5 6 /* putchar (full version): expands '\n' i
阅读全文
浙公网安备 33010602011771号