当前位置: 首页 > news >正文

专业做网站较好的公司广州中国现货交易网

专业做网站较好的公司广州,中国现货交易网,电子商务系统设计报告,静态网站 源码本章重点讲解将TIM0用作两个8位定时器#xff0c;同时将TIM1用作波特率发生器。 当定时器T0在方式3时#xff0c;T1不能产生中断#xff0c;但可以正常工作在方式0、1、2下#xff0c;大多数情况下#xff0c;T1将用作串口的波特率发生器。 1、定时器0工作在模式3框图同时将TIM1用作波特率发生器。 当定时器T0在方式3时T1不能产生中断但可以正常工作在方式0、1、2下大多数情况下T1将用作串口的波特率发生器。 1、定时器0工作在模式3框图 2、定时器1工作在模式2用作波特率发生器框图  51单片机定时器T1用作波特率发生器时常选用定时器T1的工作方式为2有人说可以使用工作方式0或工作方式1不清楚。我觉得不入流的想法不要去好奇。 3、定时器0工作在模式3应用 #include REG51.h  //包含头文件REG51.h,使能51内部寄存器; #include stdio.h  //包含头文件stdio.h //_getkey();从串口读入一个字符; //putchar();向串口发送一个字节; //printf();向串口发送一串字节; //定时器的方式控制寄存器TMOD: GATE1,C/T1,M1_1,M1_0,GATE0,C/T0,M0_1,M0_0 //GATE11,表示T1是受INT1脚(P3.3)控制运行; //C/T10,表示T1的时钟源为fosc/12;C/T11,表示T1的时钟源为T1脚(P3.5); //GATE01,表示T0是受INT0脚(P3.2)控制运行; //C/T00,表示T0的时钟源为fosc/12;C/T01,表示T0的时钟源为T0脚(P3.4); //下面说明T0的工作方式 //M0_1:M0_000,表示T0为13位定时器/计数器; //M0_1:M0_001,表示T0为16位定时器/计数器; //M0_1:M0_010,表示T0为8位自动重装载定时器/计数器; //M0_1:M0_011,表示T0分为两个8位计数器; //下面说明T1的工作方式 //M1_1:M1_000,表示T1为13位定时器/计数器; //M1_1:M1_001,表示T1为16位定时器/计数器; //M1_1:M1_010,表示T1为8位自动重装载定时器/计数器; //M1_1:M1_011,表示T1没有此工作方式; //定时器的控制寄存器TCON: TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0 //TF11,表示T1溢出到0x0000,CPU响应中断后,由硬件自动清除; //当GATE10时,TR11,表示启动T1开始工作,当GATE11时,Timer1由INT1脚(P3.3)和TR0控制; //TF01,表示T0溢出到0x0000,CPU响应中断后,由硬件自动清除; //当GATE00时,TR01,表示启动T0开始工作,当GATE01时,Timer0由INT0脚(P3.2)和TR0控制; #define OSC_FREQ     11059200L //#define BAUD_115200  256 - (OSC_FREQ/192L)/115200L   // //#define BAUD_38400   256 - (OSC_FREQ/192L)/38400L    // #define BAUD_Time 1 #if(BAUD_Time1) //若波特率加倍,则使用下面参数; #define BAUD_57600   256 - (OSC_FREQ/192L)/57600L    //255 #define BAUD_28800   256 - (OSC_FREQ/192L)/28800L    //254 #define BAUD_19200   256 - (OSC_FREQ/192L)/19200L    //253 #define BAUD_14400   256 - (OSC_FREQ/192L)/14400L    //252 #define BAUD_9600    256 - (OSC_FREQ/192L)/9600L     //250 #define BAUD_4800    256 - (OSC_FREQ/192L)/4800L  //244 #define BAUD_2400    256 - (OSC_FREQ/192L)/2400L  //232 #define BAUD_1200    256 - (OSC_FREQ/192L)/1200L  //208 #else //若波特率不加倍,则使用下面参数; #define BAUD_9600    256 - (OSC_FREQ/384L)/9600L #define BAUD_4800    256 - (OSC_FREQ/384L)/4800L #define BAUD_1200    256 - (OSC_FREQ/384L)/1200L #endif #define TL0_Load_Value       256-100L   //配置TL0为100us中断一次; #define TH0_Load_Value       256-200L  //配置TH0为200us中断一次; sbit LED1 P1^0; sbit LED2 P1^1; uynsigned int Time0TL0Count; uynsigned int Time0TH0Count; //函数功能: TL0计数器的中断服务函数,每100us中断一次; void TL0_interrupt_program() interrupt 1 using 1 { TL0TL0_Load_Value;    //手动装载初值; Time0TL0Count; if(Time0TL0Count5000)//0.5秒 LED1~LED1; } //函数功能: TH0计数器的中断服务函数,每200us中断一次; void TH0_interrupt_program() interrupt 3  using 1 { TH0TH0_Load_Value;    //手动装载初值; Time0TH0Count; if(Time0TH0Count5000)//0.5秒 LED2~LED2; } //函数功能: Timer0初始化; void timer0_initializtion() { TMOD 0xF4;          //设置GATE00,即不允许外部INT0脚控制Timer0; TMOD| 0x03;     //配置Timer0为方式3(两个8位定时器,一个用TL0计数,一个用TH0计数); TL0TL0_Load_Value;    //手动装载初值; TH0TH0_Load_Value;    //手动装载初值; TR01;                //当GATE00时,TR01,表示启动Timer0中的TL0开始工作; TR11;                //设置Timer0的TH0时钟源为晶振频率的1/12,并启动TH0开始工作; ET01;                //允许Timer0中的TL0溢出中断; ET11;                //允许Timer0中的TH0溢出中断; EA1;                 //开总中断允许位; Time0TL0Count0; Time0TH0Count0; } //函数功能: Timer1初始化; void timer1_initializtion() { TMOD 0x4F;    //设置GATE10,即不允许外部INT1脚控制Timer1; TMOD| 0x20;    //配置Timer1为方式2(8位自动重装载),用于波特率发生器; TH1BAUD_9600;  //TH1:  reload value for 9600 baud 11.0592MHz; TL1TH1; } //函数功能:初始化串口,设置波特率为9600bps11.0592MHz,使能接收,使用8位UART; void Serial_Port_Initialization() { PCON 0x80; SCON0x50; //串行控制寄存器: SM0,SM1,SM2,REN,TB8,RB8,TI,RI //SM1:SM001,选择方式1,SM20,表示非多机通讯,8-bit UART; //REN1,使能接收; timer1_initializtion(); TI1;    //发送UART的第一个字节,为下次发送做准备; RI0; //ES1; //使能串口接收和发送中断; EA1; //开总中断 } void main(void) { timer0_initializtion(); //Timer0初始化; Serial_Port_Initialization(); //初始化串口,设置波特率为9600bps11.0592MHz,使能接收,使用8位UART; printf( Timer0 works in mode3;\n ); printf( TL0 is a timer.\n ); printf( TH0 is a timer,too;\n ); printf( Timer1 works in mode2,It is a baud_rate_generator!\n ); while(1); { } }
http://www.hkea.cn/news/14432936/

相关文章:

  • 白银做网站四川省城乡建设信息网站证件查询
  • 河南电商网站设计南浔建设局网站
  • 网站推广与优化怎么做wordpress 根据id获取分类名称
  • 建立网站的费用阿里巴巴自助建站的一般流程
  • 网站建设一般多少钱有网站建设费科目吗
  • 推荐网站建设收费标准龙华网站建设推广外包
  • 用v9做网站优化深圳微商城网站设计
  • 什么是网站建设公司交互网站设计
  • 西安国际网站设计做暖暖视频网站大全
  • 做发帖的网站代码传奇电脑版
  • 福州网站制作网站项目网项目平台
  • 网上帮人做网站微博网页版入口
  • 网站被降权怎么办wordpress 搜索调用
  • 做一个人网站需要注意什么网站的代理页面怎么做
  • 网站上传的视频播放卡个人做网站开工作室
  • 企业站官网wordpress 织梦 淘客
  • 山东省建设厅举报网站桂林公司做网站
  • 网页设计与网站建设在线作业网站开发 外包公司
  • 广东专业高端网站建设杭州优化seo公司
  • 做代理记账网站网站开发推荐英文字体
  • 二 加强门户网站建设网站被k了怎么办
  • 手机膜+东莞网站建设做一个网站成本多少钱
  • 做照片的网站山西网站建设开发
  • 合肥蜀山网站开发2024年新闻热点事件摘抄
  • 酒类网站建设网络营销中的seo与sem
  • 两学一做网上答题网站wordpress小程序直播
  • 公司免费招聘网站网站分析百度
  • 个人网站什么语言做wordpress插件没有设置
  • 怎么塔建网站网站建设吉金手指排名13
  • 网站php怎么做的wordpress发布文章关键词