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

標題: 關于51單片機bit用法 [打印本頁]

作者: 美琴的備胎    時間: 2022-7-8 20:39
標題: 關于51單片機bit用法
好兄弟們,比如我下面的程序段
sbit dat=P0^0;
......
void x(bit y){......};
......
int main()
{
   x(dat);
   .......
}
沒有報錯。
這種方法為啥不行嘞
bit不是可以對變量賦值嗎?

作者: 美琴的備胎    時間: 2022-7-8 20:45
x的內容是 y=0;或者 y=1;
作者: 人工置頂員    時間: 2022-7-9 00:48
頂一下
作者: Hephaestus    時間: 2022-7-9 00:54
確實傳bit y的值進去了,哪里不行了?
作者: daemondong    時間: 2022-7-9 06:28
標準C來說,函數里修改參數的值是無效的,這里還涉及到了非標類型bit,

建議采用如下方式。

char x(bit y) {
}

dat=(bit)x(dat);

作者: datouyuan    時間: 2022-7-9 09:37
注意,51的sfr只能直接尋址,你想間接操控P00是不被允許的。

樓主函數中的y和dat是有區別的。
y是51單片機的CY標志,它會在進入函數時會等于dat的值。
y=0;或 y=1;僅僅是CY標志標志改變,但dat值不會跟著改變。
作者: 美琴的備胎    時間: 2022-7-9 14:32
Hephaestus 發表于 2022-7-9 00:54
確實傳bit y的值進去了,哪里不行了?

io口默認置高電平,置低無反應。這個方法應該不可行,用其他方法了。我會把另一個方法回復我自己,謝謝了
作者: 美琴的備胎    時間: 2022-7-9 14:33
datouyuan 發表于 2022-7-9 09:37
注意,51的sfr只能直接尋址,你想間接操控P00是不被允許的。

樓主函數中的y和dat是有區別的。

是的,換了個方法,先謝謝了。新方法我會回復我自己
作者: 美琴的備胎    時間: 2022-7-9 14:34
新方法,
作者: 美琴的備胎    時間: 2022-7-9 14:34
  sbit dat0=P0^0; sbit dat1=P0^1; void x(uchar io){ switch(io) {   case 0:dat0=1;break  case 1:da1=1;break; //.... } };此貼封樓了
作者: 3235356465    時間: 2022-7-10 11:22
bit只是一個數據0或1




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 男人午夜视频 | 亚洲精品一区二区 | 国产精品久久久久不卡 | 久久久久中文字幕 | 亚洲精品久久久久久久久久久久久 | 国产一区二区在线视频 | 久草网址 | 免费观看一级视频 | 天天操网 | 精品av | 日韩在线播放网址 | 欧美三级视频在线观看 | 免费精品视频在线观看 | 亚洲va欧美va天堂v国产综合 | 国产日韩欧美一区二区 | 日韩在线精品强乱中文字幕 | 久草电影网 | 羞羞色网站 | 欧美精品在线免费观看 | 婷婷去俺也去 | 中文字幕日韩一区 | 欧美日韩网站 | 激情免费视频 | 亚州精品天堂中文字幕 | 久久精品一区二区 | 亚洲综合视频 | 一区二区三区四区av | 在线日韩欧美 | 亚洲天堂一区 | 三级成人在线 | 亚洲男人天堂网 | 天堂一区 | 中文字幕1区 | 99热.com| 毛片免费视频 | 久亚州在线播放 | 伊人影院99 | 欧美激情欧美激情在线五月 | 日韩欧美手机在线 | 成人免费在线视频 | 精品福利一区二区三区 |