DS18B20在STM8S208MB中的应用 - 图文(4)

2019-02-15 15:52

EN=0;

LCDdat=dat; delay(1); EN=1; delay(1); EN=0; }

void Display(unsigned char Row,unsigned char Col,unsigned char *Character)//显示位置控制 {

switch(Row) {

case 1: Row=0x80;break; case 2: Row=0x90;break; case 3: Row=0x88;break; case 4: Row=0x98;break; default: Row=0x80; }

LCDwrite(Row+Col,0);

while(*Character!='\\0') //将字符逐一送入 {

delay(10);

LCDwrite(*Character,1); Character++; } }

void delay(unsigned int count)//一个延时函数 {

unsigned char i,x; while(count--) {

for(i=0;i<10;i++) for(x=0;x<10;x++); } }

DS18B20 .c

#include \#include \#include \

#define DS18B20out PI_ODR_ODR4 #define DS18B20in PI_IDR_IDR4

void DS18B20IO(unsigned char x); void delay1(unsigned int count); bool DS18B20init();

unsigned int DS18B20Read();

void DS18B20Write(unsigned char data); bool DS18B20init() {

unsigned char x;

//DS18B20初始化函数

DS18B20IO(1); //引脚切换到输出状态 //DS18B20out=1; //delay1(1700); DS18B20out=0; delay1(1700); DS18B20out=1; DS18B20IO(0); delay1(65); x=PI_IDR_IDR4; while(!PI_IDR_IDR4); return (bool)x; }

void DS18B20Write(unsigned char data) {

unsigned char mask; DS18B20IO(1);

for(mask=0x01;mask!=0;mask<<=1) {

DS18B20out=0; delay1(10); if((mask&data)) DS18B20out=1; else

DS18B20out=0; delay1(100); DS18B20out=1; } }

unsigned int DS18B20Read() {

unsigned int mask,data; unsigned char x=0;

for(mask=1;mask!=0;mask<<=1) {

//引脚为高电平输出

//延时大约600us,此句可以省略 //引脚切换到低电平输出 //延时大约600us

//引脚切换到高电平输出

//引脚状态切换为输入状态侦听数据 //延时约30us

//保存引脚的电平状态 //等待低电平结束

//返回数据,0或1 //写命令函数,先从低位开始写 //读数据函数,先从低位开始读。 DS18B20IO(1); DS18B20out=0; delay1(10); DS18B20out=1; DS18B20IO(0); delay1(10); x=PI_IDR_IDR4; if(x)

data|=mask; else

data&=~mask; delay1(150); }

return data; }

void DS18B20IO(unsigned char x) {

if(x) {

PI_DDR_DDR4=1; PI_CR1_C14=1; PI_CR2_C24=0; } else {

PI_DDR_DDR4=0; PI_CR1_C14=1; PI_CR2_C24=0; } }

void delay1(unsigned int count) {

do{}while(count--); }

//引脚输入和输出切换函数。//延时函数,


DS18B20在STM8S208MB中的应用 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018年小学语文春季学期期末检测模拟试卷(五年级)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: