51单片机 lcd1602 ds18b20
时间: 2023-08-03 16:02:52 浏览: 104
根据引用\[1\],你想要使用51单片机、LCD1602和DS18B20温度传感器进行温度显示。根据引用\[2\],你可以使用以下代码来初始化DS18B20传感器:
```c
unsigned int Init_DS18B20(void) {
unsigned int x=0;
DQ = 1; //DQ复位
delay(4); //稍做延时
DQ = 0; //单片机将DQ拉低
delay(60); //精确延时,大于480us
DQ = 1; //拉高总线
delay(8);
x = DQ; //稍做延时后,如果x=0则初始化成功,x=1则初始化失败
delay(4);
return x;
}
```
根据引用\[3\],你可以使用以下代码来向DS18B20传感器写入一个字节或指令:
```c
void WriteOneChar(unsigned char dat) {
unsigned char i=0;
for (i=8; i>0; i--) {
DQ = 0; // 如果位是1的话 就拉高 然后延时 因为指令执行时间已经超过了1us 可以马上拉高 输入1
// 如果位是0的话 就拉低 然后延时
DQ = dat&0x01; //与1按位与运算,dat最低位为1时DQ总线为1,dat最低位为0时DQ总线为0
delay(4);
DQ = 1;
dat>>=1;
}
delay(4);
}
```
这些代码可以帮助你在51单片机上实现LCD1602和DS18B20的连接和通信。
#### 引用[.reference_title]
- *1* [51单片机使用LCD1602显示DS18B20温度传感器温度](https://blog.csdn.net/weixin_45488643/article/details/105968683)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [LCD1602和DS18B20两个模块的51驱动程序](https://blog.csdn.net/qq_65036889/article/details/129065721)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文