打印
[其它应用]

如何才能正确寻址到TH4还有TL4

[复制链接]
1396|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wenfen|  楼主 | 2022-1-2 17:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何才能正确寻址到TH4还有TL4

使用特权

评论回复
沙发
supernan| | 2022-1-2 17:54 | 只看该作者

楼主详细说说怎么回事啊,这么说太笼统了

使用特权

评论回复
板凳
wenfen|  楼主 | 2022-1-2 19:05 | 只看该作者
sh79f3283的一个问题

使用特权

评论回复
地板
pengf| | 2022-1-2 19:07 | 只看该作者
楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
5
wenfen|  楼主 | 2022-1-2 19:09 | 只看该作者
void Timer2_Init()                                         //定时时间为125us
  {
             T2CON  = 0x00;                         //定时器4为波特率发生器
                                        //  TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2(0:自动重载   1:捕获)
                                        // RCLK:        0:定时器4产生接收波特率   1:定时器2产生接收波特率
                                       // TCLK: 0:定时器4产生发送波特率   1:定时器2产生发送波特率

           T2MOD  = 0x80;
                                        //  TCLKP2(选择为系统时钟/12)  空 空 空 空 空 T2OE(选择P05为I/O)  DCEN(只允许增加计数)

           TH2    = (65536-125)/256;
           TL2    = (65536-125)%256;
           RCAP2H = (65536-125)/256;
           RCAP2L = (65536-125)%256;
           ET2 = 1 ;                  //开定时器中断2                  
           TR2 = 1 ;                 //启动定时器2
  }

这段代码是初始化定时器2做125us定时,以及定时器4做波特率产生器,但是为什么两个定时器的计数值一直都相等,而且只要TR4 = 1,定时器2和4 就不工作了

  void Uart_Init()
  {
       T4CON = 0x00;             //设定定时器4位时钟为系统时钟,工作方式为波特率发生器
                                     // TF4 TC4 T4PS1 T4PS0 T4M1 T4M0 TR4 T4CLKS
           TH4   = (65536-78)/256;   //波特率设置为4800
           TL4         = (65536-127)%256;

           SCON  = 0x40;             //SM0 SM1 SM2 REN TB8 RB8 TI RI
           PCON  = 0x00;             //SMOD  SSTAT SSTAT1 空 GF1 GF0 PD IDL
           ES0   = 1;                //开串口中断
           //REN   = 1;
//           T4CON = 0x06;
//       IEN1  &= 0xbf;
       TR4   = 1;
  }

使用特权

评论回复
6
wenfen|  楼主 | 2022-1-2 19:14 | 只看该作者
sfr T2CON = 0xC8;
sfr T2MOD = 0xC9;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;

sfr T3CON = 0x88;  /*bank1*/
sfr TL3 = 0x8C;  /*bank1*/
sfr TH3 = 0x8D;  /*bank1*/
sfr T4CON = 0xC8;  /*bank1*/
sfr TL4 = 0xCC;  /*bank1*/
sfr TH4 = 0xCD;  /*bank1*/
sfr T5CON = 0xC0; /*bank1*/
sfr TL5 = 0xCE; /*bank1*/
sfr TH5 = 0xCF; /*bank1*/
sfr SWTHL = 0x89;

使用特权

评论回复
7
wenfen|  楼主 | 2022-1-2 19:16 | 只看该作者
我肯定拿到假的头文件了

使用特权

评论回复
8
dingy| | 2022-1-2 19:19 | 只看该作者
注意 BANK0 和BANK1的访问 。

使用特权

评论回复
9
jlyuan| | 2022-1-2 19:21 | 只看该作者
TH2    = (65536-125)/256;
           TL2    = (65536-125)%256;
           RCAP2H = (65536-125)/256;
           RCAP2L = (65536-125)%256;

使用特权

评论回复
10
juventus9554| | 2022-1-2 19:24 | 只看该作者
你的头文件什么样子?

使用特权

评论回复
11
wenfen|  楼主 | 2022-1-2 19:26 | 只看该作者
搞定了,呵呵,犯了低级错误……

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

737

主题

8940

帖子

8

粉丝