迅维网

查看: 1689|回复: 1
打印 上一主题 下一主题

NUCLEO-F412ZG试用体验】+DS3231,DS18B20,LCD1602用户自定义外 设综合实验

[复制链接]
跳转到指定楼层
1#
发表于 2017-2-9 12:58:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 来自: 山东青岛 来自 山东青岛

马上注册,获取阅读精华内容及下载权限

您需要 登录 才可以下载或查看,没有帐号?注册

x
学习单片机,总免不了要与各种各样的外设器件进行通信,与外设通信则必须通过信号线,信号线接口按照传输数据的方式分为串行接口和并行接口,其中常用的串行接口有IIC,SPI,U(S)ART和单总线。
    今天用到的DS18B20是DALLAS公司研发的单总线的温度传感器,主机发送温度检测命令后的规定延时后,温度数据以二进制BCD码传回到主机,数据线只有一根。由于是单总线器件,因此在写程序时必须严格控制延时,如果STM32像51单片机那样使用粗延时函数来与DS18B20通信是绝对会出错的,因此必须使用基于SYSTICK的精确延时函数。在宏定义中可以配置相关引脚,方便移植。

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

    而今天用到的DS3231同样是DALLAS公司研发的就属于IIC总线的日历芯片,有一根数据线和一根时钟线与主机通信。鉴于STM32的硬件IIC函数库使用非常麻烦,因此采用IO模拟的IIC接口来与DS3231通信,事实证明并没有多大影响,通信正常。在宏定义中可以配置相关引脚,方便移植。

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

       今天用到的LCD1602原本是并行数据接口器件,一共需要占用10个GPIO(RS数据命令选择,EN使能,8个数据线),可是我外接了一个74HC595给它,8个数据线转化成了RCLK,SER,SRCLK三个命令线,该器件就变成了
模拟SPI接口器件,只占用5个GPIO。在宏定义中可以配置相关引脚,方便移植。

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图

                               
登录/注册后看高清大图


2#
发表于 2017-2-9 12:59:31 | 只看该作者 来自: 山东青岛 来自 山东青岛
附件太大了上传不了,需要的话私聊

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表
附近
店铺
微信扫码查看附近店铺
维修
报价
扫码查看手机版报价
信号元
件查询
点位图 AI维修
助手



芯片搜索

快速回复