完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
这是一个比较简单的 1-wire 总线 C++ 模板库。这个库由 4 个部分组成:
1、1-wire 协议链路层接口类:ow_t 定义了 1-wire 协议的操作集合:reset, enum, touch。但这里没有具体实现这些操作。 2、1-wire 器件枚举类:ow_enum_t 实现了 enum 操作。 3、1-wire 协议链路层实现类:owou_t,owobb_t 在指定的数据链路层上实现了 reset 和 touch 操作。 owou = 1-wire over uart owobb = 1-wire over bit-banging 4、1-wire 协议物理层类 提供“链路层实现类”所需要的物理操作。 得益于 C++ 的模板编程,这个 1-wire 库是非常灵活而高效的:它可以选择枚举、数据链路、以及实现数据链路的物理方法。 例如示例中的定义: ds18b20_t 表示了以 atmega48 的 uart 数据链路实现的 1-wire 总线,总线具有枚举功能,其上挂有多个 ds18b20 器件。 ds18b20_t 表示了以 atmega48 的 uart 数据链路实现的 1-wire 总线,总线没有枚举功能,其上只有一个 ds18b20 器件。 ds18b20_t 表示了用 atmega48 的 PORTD0 引脚,以 bit-banging 方法实现的 1-wire 总线,总线没有枚举功能,其上只有一个 ds18b20 器件。 定义好后,就可以很方便的操作 1-wire 器件了。 附件为 avrstudio 示例工程(需要 avr-gcc 4.3 以上)。 ![]() |
|
相关推荐
2 个讨论
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
ULink2 和keil4 连接显示 SWD通讯失败,硬件在另一台电脑上是可以连接成功的,有没有大佬能帮忙解答一下的
342 浏览 0 评论
1440 浏览 1 评论
923 浏览 0 评论
888 浏览 0 评论
QuarkPi-CA2 RK3588S卡片电脑:6.0Tops NPU+8K视频编解码+接口丰富,高性能嵌入式开发!
1819 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12886 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-4-18 10:53 , Processed in 0.401146 second(s), Total 38, Slave 30 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191