久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2139|回復(fù): 9
打印 上一主題 下一主題
收起左側(cè)

關(guān)于STC8單片機(jī)的一些疑惑,望大神有心情解答一下,功能腳切換使用問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1022674 發(fā)表于 2023-1-31 13:26 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
在使用單片機(jī)串口1時(shí),寄存器SCON,B0和B1位的RI和TI能直接使用,但是在使用串口2時(shí),S2CON,S2BUF,S2RI和S2RI都不能使用,S2RI和S2RI這兩個(gè)好像不好定義。在使用時(shí)是不是只能給S2CON整體賦值(運(yùn)算賦值)來達(dá)到發(fā)送/接收中斷請(qǐng)求標(biāo)志位清零?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1022674 發(fā)表于 2023-1-31 13:31 | 只看該作者
本來是點(diǎn)保存的,結(jié)果直接發(fā)了,現(xiàn)在圖片補(bǔ)上。不知道這樣能不能直接顯示出來。

串口2圖解.png (291.89 KB, 下載次數(shù): 106)

串口2圖解.png
回復(fù)

使用道具 舉報(bào)

板凳
ID:155507 發(fā)表于 2023-1-31 15:40 | 只看該作者
是的,只能給 S2CON 整體賦值(運(yùn)算賦值)來達(dá)到發(fā)送/接收中斷請(qǐng)求標(biāo)志位清零

  1. #include "reg51.h"
  2. #include "intrins.h"

  3. #define FOSC            11059200UL
  4. #define BRT             (65536 - FOSC / 115200 / 4)

  5. sfr     AUXR        =   0x8e;
  6. sfr     T2H         =   0xd6;
  7. sfr     T2L         =   0xd7;
  8. sfr     S2CON       =   0x9a;
  9. sfr     S2BUF       =   0x9b;
  10. sfr     IE2         =   0xaf;

  11. bit busy;
  12. char wptr;
  13. char rptr;
  14. char buffer[16];

  15. void Uart2Isr() interrupt 8
  16. {
  17.     if (S2CON & 0x02) //S2TI 串口 2 發(fā)送中斷請(qǐng)求標(biāo)志位
  18.     {
  19.         S2CON &= ~0x02;
  20.         busy = 0;
  21.     }
  22.     if (S2CON & 0x01)  //S2RI 串口 2 接收中斷請(qǐng)求標(biāo)志位
  23.     {
  24.         S2CON &= ~0x01;
  25.         buffer[wptr++] = S2BUF;
  26.         wptr &= 0x0f;
  27.     }
  28. }

  29. void Uart2Init()
  30. {
  31.     S2CON = 0x10;
  32.     T2L = BRT;
  33.     T2H = BRT >> 8;
  34.     AUXR = 0x14;
  35.     wptr = 0x00;
  36.     rptr = 0x00;
  37.     busy = 0;
  38. }

  39. void Uart2Send(char dat)
  40. {
  41.     while (busy);
  42.     busy = 1;
  43.     S2BUF = dat;
  44. }

  45. void Uart2SendStr(char *p)
  46. {
  47.     while (*p)
  48.     {
  49.         Uart2Send(*p++);
  50.     }
  51. }

  52. void main()
  53. {
  54.     Uart2Init();
  55.     IE2 = 0x01;
  56.     EA = 1;
  57.     Uart2SendStr("Uart Test !\r\n");

  58.     while (1)
  59.     {
  60.         if (rptr != wptr)
  61.         {
  62.             Uart2Send(buffer[rptr++]);
  63.             rptr &= 0x0f;
  64.         }
  65.     }
  66. }

復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

地板
ID:1022674 發(fā)表于 2023-1-31 16:18 | 只看該作者
angmall 發(fā)表于 2023-1-31 15:40
是的,只能給 S2CON 整體賦值(運(yùn)算賦值)來達(dá)到發(fā)送/接收中斷請(qǐng)求標(biāo)志位清零

新年快樂!感謝解惑!受教了,不停的看官方PDF,看多了就慢慢的好像就有點(diǎn)點(diǎn)明白了,但還是有很多不明白的地方,官方也沒有明說,還是非常感謝大神們的寶貴知識(shí)與經(jīng)驗(yàn)。
回復(fù)

使用道具 舉報(bào)

5#
ID:1042619 發(fā)表于 2023-1-31 16:30 | 只看該作者

STC8單片機(jī)的S2CON地址0x9A,不支持位操作(地址低4位是0或者8的SFR寄存器才支持位操作),所以需要通過整體賦值(運(yùn)算賦值)的方式進(jìn)行設(shè)置。
STC32的所有SFR寄存器都支持位操作,就可以直接對(duì)S2RI,S2TI進(jìn)行位操作。
回復(fù)

使用道具 舉報(bào)

6#
ID:1034262 發(fā)表于 2023-1-31 23:21 | 只看該作者
51核的特殊功能寄存器,地址結(jié)尾不是0或8的,都不能位尋址,只能用賦值、與、或操作,建議用與、或操作。
S2CON &= ~0x01;   //清除S2RI
S2CON &= ~0x02;   //清除S2TI
S2CON |= ~0x80;   //置位S2SM0

回復(fù)

使用道具 舉報(bào)

7#
ID:1022674 發(fā)表于 2023-2-1 03:01 來自手機(jī) | 只看該作者
大漠孤煙001 發(fā)表于 2023-1-31 16:30
STC8單片機(jī)的S2CON地址0x9A,不支持位操作(地址低4位是0或者8的SFR寄存器才支持位操作),所以需要通過 ...

非常感謝大神說的知識(shí)點(diǎn),接觸單片機(jī)的時(shí)間不長,要學(xué)的東西太多了,謝謝!新年快樂!
回復(fù)

使用道具 舉報(bào)

8#
ID:1022674 發(fā)表于 2023-2-1 03:07 來自手機(jī) | 只看該作者
coody_sz 發(fā)表于 2023-1-31 23:21
51核的特殊功能寄存器,地址結(jié)尾不是0或8的,都不能位尋址,只能用賦值、與、或操作,建議用與、或操作。
...

感謝大神耐心的解惑,關(guān)于單片機(jī),需要學(xué)習(xí)的知識(shí)點(diǎn)太多了,邊實(shí)踐邊學(xué)習(xí)才是掌握知識(shí)最快的途徑,謝謝!新年快樂!
回復(fù)

使用道具 舉報(bào)

9#
ID:130230 發(fā)表于 2023-2-6 17:46 | 只看該作者
有些寄存器是可以位尋址的,有些不可以。
回復(fù)

使用道具 舉報(bào)

10#
ID:491577 發(fā)表于 2023-2-11 15:03 | 只看該作者
可以位尋址的寄存器畢竟是少數(shù),要習(xí)慣整體賦值。如果是STM32全部寄存器都只能整體賦值。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人一区二区三区在线观看 | 亚洲视频1区 | 草久久久| 日韩美女一区二区三区在线观看 | 免费天天干 | 一区二区精品 | 国产精品黄视频 | 九九伦理片 | 国产精品不卡一区 | 日韩精品成人在线 | 麻豆视频在线免费看 | 国产精品揄拍一区二区 | 欧美男人天堂 | 国产xxx在线观看 | 国产精品久久久久久久久久免费看 | 亚洲欧美日本在线 | 亚洲嫩草 | 久久精品视频亚洲 | 成人av观看 | jdav视频在线观看免费 | 亚洲精品一区二三区不卡 | 国产一区二区在线免费播放 | 欧美一级特黄aaa大片在线观看 | 亚洲国产欧美国产综合一区 | 国产精品日韩欧美一区二区三区 | 国产丝袜人妖cd露出 | 精品免费视频 | 日韩av成人 | 国产日韩精品久久 | 亚洲欧洲精品一区 | 一区二区精品 | 欧美精品久久 | 亚洲精品一区二三区不卡 | 一区二区三区精品视频 | 精品视频一区二区 | 中文字幕在线电影观看 | 九九视频在线观看 | 99视频在线免费观看 | 五月天天色 | 狠狠亚洲 | 久久亚洲一区二区三 |