标题: 关于这个单片机程序的执行? [打印本页]

作者: 古体清英雅秀    时间: 2020-1-25 16:20
标题: 关于这个单片机程序的执行?
for(a=0;a<8;a++)   //发送8位数
{
  SER = dat >> 7;   //从最高位开始发送
  dat <<= 1;
  SRCLK = 0;    //发送时序
  _nop_();
  _nop_();
  SRCLK = 1;
}
想问问大家这个程序到底是什么意思,是如何执行??

作者: w1179benp    时间: 2020-1-26 11:05
不是在注释中已经说了吗?“发送8位数”,“从最高位开始发送”,而后移一位,a++后再送一位再.......直至8位逐个都发完
作者: csmyldl    时间: 2020-1-28 11:46
一个字节数据dat右移7位存放在SER中,得到最高位,如数据0xaa右移7位后得到SER=1,然后dat中数据左移一位,得到数据0x54(使原来第6位数据变为第7位数据),循环8次使所有数据8位全部发送一遍




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1