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

QQ登錄

只需一步,快速開始

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

單片機(jī)如何檢測(cè)多個(gè)IO狀態(tài) 求思路

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:101869 發(fā)表于 2022-4-7 19:50 來自手機(jī) | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
如何用簡(jiǎn)練的代碼反映多個(gè)非同一組IO口的變化,最好是組合到一起&0xff的辦法求個(gè)思路
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:161164 發(fā)表于 2022-4-8 07:56 | 只看該作者
unsigned char IO_In()
{
  unsigned char dat = 0;
  dat |= (char)P34 << 0;
  dat |= (char)P30 << 1;
  dat |= (char)P12 << 2;
  dat |= (char)P10 << 3;
  dat |= (char)P32 << 4;
  dat |= (char)P33 << 5;
  dat |= (char)P13 << 6;
  dat |= (char)P11 << 7;
  return dat;
}
回復(fù)

使用道具 舉報(bào)

板凳
ID:587810 發(fā)表于 2022-4-8 08:06 來自手機(jī) | 只看該作者
可以直接用串口擴(kuò)展io
回復(fù)

使用道具 舉報(bào)

地板
ID:887371 發(fā)表于 2022-4-8 09:59 | 只看該作者
  1. #define KB0 P34
  2. #define KB1 P30
  3. #define KB2 P12
  4. #define KB3 P10
  5. #define KB4 P32
  6. #define KB5 P33
  7. #define KB6 P13
  8. #define KB7 P11
  9. //#define KB7 0//如不需某位,要把某位定義為數(shù)值
  10. #define KPORT_GET_L4() (KB0?1<<0:0)|(KB1?1<<1:0)|(KB2?1<<2:0)|(KB3?1<<3:0)
  11. #define KPORT_GET_H4() (KB4?1<<4:0)|(KB5?1<<5:0)|(KB6?1<<6:0)|(KB7?1<<7:0)
  12. #define KPORT_GET() (KPORT_GET_L4()|KPORT_GET_H4())
復(fù)制代碼


這個(gè)和沙發(fā)方法幾乎一樣,只是這段代碼是放在頭文件。
回復(fù)

使用道具 舉報(bào)

5#
ID:121859 發(fā)表于 2022-4-8 10:08 | 只看該作者
用一個(gè)串轉(zhuǎn)并芯片接入到單片機(jī),可以實(shí)現(xiàn)。
回復(fù)

使用道具 舉報(bào)

6#
ID:101869 發(fā)表于 2022-4-8 12:23 來自手機(jī) | 只看該作者
lkc8210 發(fā)表于 2022-4-8 07:56
unsigned char IO_In()
{
  unsigned char dat = 0;

謝謝解答
回復(fù)

使用道具 舉報(bào)

7#
ID:101869 發(fā)表于 2022-4-8 12:23 來自手機(jī) | 只看該作者
datouyuan 發(fā)表于 2022-4-8 09:59
這個(gè)和沙發(fā)方法幾乎一樣,只是這段代碼是放在頭文件。

謝謝您的解答
回復(fù)

使用道具 舉報(bào)

8#
ID:123289 發(fā)表于 2022-4-8 13:49 | 只看該作者
學(xué)習(xí)匯編,就知道了。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表