EDN China > 设计实例 > 模拟设计 > 传感器 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 基于ARM和DS18B20的数字测温系统

21ic?? 2011年09月28日 ?? 收藏0

  2 系统软硬件设计

  2.1 硬件设计

  我们采用的控制器是SAMSUNG公司的32位ARM微控制器S3C44BOX,是三星公司为一般应用提供的高性价比和高性能的微控制器的解决方案,功耗小,可靠性高。它使用ARM7TDMI核,工作在66MHz。采用的该ARM控制器将服务于整个热误差补偿系统,完成包括数据处理与通讯、控制等多任务的实现。机床测温系统只使用小部分片上资源。

  我们主要通过对I/O引脚的电平读写来完成单总线的通讯,采用ARM内部的定时器产生中断来完成有时隙要求的工作。由于我们通过预分频后产生的计时值单位达到1μs,完全能够满足时序工作的需要。

  DS18B20与控制器的接口及其简单,只需将DS18B20的信号线与控制器的一位双向端口连接即可。系统连接如图6所示:

系统连接

  2.2 软件设计

  遵循DS18B20单总线通讯协议,温度转换与读取工作的软件流程可表示为图7(该流程是在已经选中激活某个选中的DS18B20以后,选中激活流程软件原理类似,此处省略)。?

温度转换与读取工作的软件流程

?  可见,与DS18B20进行通讯主要完成以下三个基本子程序:初始化程序(复位程序)、‘读’子程序,‘写’子程序。系统采用 C语言进行设计,以下是初始化(复位)子程序,设计如下:

程序

  调用该初始化程序就可以实现复位要求。“读”子程序、“写”子程序实现机制类似,代码不再赘述。在单总线协议下,通过调用这几个子程序进行相应的控制,就能完成主机与DS18B20的通讯,实现温度的采集。

  3 结论

  本系统接口电路简单,通讯可靠,集成后的系统运行良好,测试精度高,试验证明能完成预定测试任务。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

ARM? DS18B20? S3C44BOX? 数控机床?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈