手把手教你学51单片机之十八 RS485通信与Modbus协议(5)

2020-05-06 11:18

{

UartDriver(); } }

void ConfigTimer0(unsigned int ms) //T0配置函数 {

unsigned long tmp;

tmp = 11059200 / 12; //定时器计数频率 tmp = (tmp * ms) / 1000; //计算所需的计数值 tmp = 65536 - tmp; //计算定时器重载值

tmp = tmp + 34; //修正中断响应延时造成的误差

T0RH = (unsigned char)(tmp >> 8); //定时器重载值拆分为高低字节 T0RL = (unsigned char)tmp; TMOD &= 0xF0; //清零T0的控制位 TMOD |= 0x01; //配置T0为模式1 TH0 = T0RH; //加载T0重载值 TL0 = T0RL;

ET0 = 1; //使能T0中断 TR0 = 1; //启动T0 }

void InterruptTimer0() interrupt 1 //T0中断服务函数 {

TH0 = T0RH; //定时器重新加载重载值 TL0 = T0RL;

if (flagBuzzOn) //蜂鸣器鸣叫或关闭 BUZZ = ~BUZZ; else BUZZ = 1;

UartRxMonitor(1); //串口接收监控 }


手把手教你学51单片机之十八 RS485通信与Modbus协议(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:演讲稿-拿什么奉献给你我的祖国 -

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

马上注册会员

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