你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【NUCLEO-F412ZG试用体验】+DS3231,DS18B20,LCD1602用户自定义外...

[复制链接]
donatello1996 提问时间:2017-2-9 12:43 /
    学习单片机,总免不了要与各种各样的外设器件进行通信,与外设通信则必须通过信号线,信号线接口按照传输数据的方式分为串行接口和并行接口,其中常用的串行接口有IIC,SPI,U(S)ART和单总线。
    今天用到的DS18B20是DALLAS公司研发的单总线的温度传感器,主机发送温度检测命令后的规定延时后,温度数据以二进制BCD码传回到主机,数据线只有一根。由于是单总线器件,因此在写程序时必须严格控制延时,如果STM32像51单片机那样使用粗延时函数来与DS18B20通信是绝对会出错的,因此必须使用基于SYSTICK的精确延时函数。在宏定义中可以配置相关引脚,方便移植。
1.JPG 2.JPG 3.JPG 4.JPG
    而今天用到的DS3231同样是DALLAS公司研发的就属于IIC总线的日历芯片,有一根数据线和一根时钟线与主机通信。鉴于STM32的硬件IIC函数库使用非常麻烦,因此采用IO模拟的IIC接口来与DS3231通信,事实证明并没有多大影响,通信正常。在宏定义中可以配置相关引脚,方便移植。
5.JPG 6.JPG
        今天用到的LCD1602原本是并行数据接口器件,一共需要占用10个GPIO(RS数据命令选择,EN使能,8个数据线),可是我外接了一个74HC595给它,8个数据线转化成了RCLK,SER,SRCLK三个命令线,该器件就变成了模拟SPI接口器件,只占用5个GPIO。在宏定义中可以配置相关引脚,方便移植。
IMG_20170209_122513.jpg 7.JPG 8.JPG
     老规矩,上传一份可以直接调用的头文件。
头文件.zip (3.35 KB, 下载次数: 61)
收藏 2 评论9 发布时间:2017-2-9 12:43

举报

9个回答
zero99 回答时间:2017-2-9 13:21:14
谢谢分享,字体好大啊,可以改小点
donatello1996 回答时间:2017-2-9 13:45:41
zero99 发表于 2017-2-9 13:21
谢谢分享,字体好大啊,可以改小点

请问管理员,现在发帖还有10个ST金币打赏吗?
zero99 回答时间:2017-2-9 14:17:51
donatello1996 发表于 2017-2-9 13:45
请问管理员,现在发帖还有10个ST金币打赏吗?

有的,原创和分享定期会给(视内容质量)
zoomdy 回答时间:2017-2-9 16:04:39
首先感谢分享,其次鄙视审美观,搞那么大字体真难看
jackten 回答时间:2017-2-9 16:05:53
谢谢分享               
钊钊 回答时间:2017-2-9 16:21:46
难怪我之间写的18B20代码,通讯起来有时候会没数据,原来如此,
donatello1996 回答时间:2017-2-9 18:18:31
zero99 发表于 2017-2-9 14:17
有的,原创和分享定期会给(视内容质量)

这个帖子质量行吗?可以的话就打赏一下呗
埃斯提爱慕 回答时间:2017-2-11 18:23:58
提示: 作者被禁止或删除 内容自动屏蔽
csg123 回答时间:2018-7-18 08:14:01
首先感谢分享

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版