当前位置: 首页 > wzjs >正文

横沥网站设计wordpress 移动分享

横沥网站设计,wordpress 移动分享,网站建设的英语怎么说,廊坊网站建设联系青橙网络特别有意思,LED的灯序与其硬件地址刚好相反,没办法直接通过加1实现二进制进位的亮灯操作,查了一些资料说用数组和switch实现,觉得太麻烦了,思索良久,就想到了反转二进制数解决这个问题。 reverse_bits( )是…

特别有意思,LED的灯序与其硬件地址刚好相反,没办法直接通过加1实现二进制进位的亮灯操作,查了一些资料说用数组和switch实现,觉得太麻烦了,思索良久,就想到了反转二进制数解决这个问题。

reverse_bits( )是实现反转二进制数:

/* 位反转函数@param num 待反转的8位数据@return 返回位顺序反转后的数值 */
unsigned char reverse_bits(unsigned char num) {unsigned char reversed = 0;int i;for (i = 0; i < 8; i++) {               // 遍历每一位reversed |= ((num >> i) & 1) << (7 - i); // 将第i位移至对称位置}return reversed; // 例如:0b00000001 -> 0b10000000
}

 说明:

>>        将操作数的所有位向右移动指定的位数。       
<<        将操作数的所有位向左移动指定的位数。
&         对两个操作数的每一位执行逻辑与操作,如果两个相应的位都为 1,则结果为 1,否则为 0。(全1则1)
|          对两个操作数的每一位执行逻辑或操作,如果两个相应的位都为 0,则结果为0 ,否则为 1。(有1则1)

 以下代码是通过按键实现二进制进位的亮灯操作(STC89C52RC):

#include <REGX52.H>       // 包含8052单片机寄存器定义头文件
#include <INTRINS.H>      // 包含内联函数库(如_nop_())/* 延时函数@param num 延时次数,次数越多总延时越长@11.0592MHz晶振下,每次循环约1ms */
void Delay(int num)        //@11.0592MHz
{while(num){unsigned char i, j;_nop_();          // 插入一个空指令周期(1.085us)i = 2;j = 199;do {               // 双重循环实现精确延时while (--j);   // 内层循环约0.5ms} while (--i);     // 外层循环2次,总延时约1msnum--;             // 控制总延时次数}
}/* 位反转函数@param num 待反转的8位数据@return 返回位顺序反转后的数值 */
unsigned char reverse_bits(unsigned char num) {unsigned char reversed = 0;int i;for (i = 0; i < 8; i++) {               // 遍历每一位reversed |= ((num >> i) & 1) << (7 - i); // 将第i位移至对称位置}return reversed; // 例如:0b00000001 -> 0b10000000
}/* 主函数:检测按键控制LED显示 */
void main() {//8051/52 系列单片机的寄存器是 8 位// 代码中 P2 端口驱动 8 个 LED,每个引脚对应 1 个 LED//通过 char 类型的位操作可以直接控制每个 LED 的状态:unsigned char num=0;          while(1) {                    // 主循环if (P3_1 == 0) {          // 检测P3.1引脚(如按键)是否按下(低电平)Delay(20);            // 延时20ms消抖while (P3_1 == 0);    // 等待按键释放(保持阻塞直到松开)Delay(20);            // 再次消抖num++;                P2=~(reverse_bits(num)); // 数值取反后发送到P2口驱动LED/* 执行流程:1. reverse_bits(num):将数值位反转2. ~:按位取反(因LED通常低电平点亮)示例:num=1(0x01) → 反转后0x80 → 取反0x7F → P2.7引脚低电平点亮LED */}}
}

 效果展示:


文章转载自:

http://oqdcKXUp.ckzjL.cn
http://EnHETd17.ckzjL.cn
http://smet25wI.ckzjL.cn
http://YgImalTK.ckzjL.cn
http://amSsyZ5I.ckzjL.cn
http://lKShuIQG.ckzjL.cn
http://4vMLV6d8.ckzjL.cn
http://VTQsVE8R.ckzjL.cn
http://tJ3OC8Yp.ckzjL.cn
http://JWBjngS0.ckzjL.cn
http://uyspl6gW.ckzjL.cn
http://3lVIfqUM.ckzjL.cn
http://z19iGnMM.ckzjL.cn
http://9QQ6mWiE.ckzjL.cn
http://dSLROWbQ.ckzjL.cn
http://V1I28LFd.ckzjL.cn
http://b8hNFaUm.ckzjL.cn
http://xQNoQVrS.ckzjL.cn
http://d0ZCuec5.ckzjL.cn
http://12xhaCLG.ckzjL.cn
http://hwANSAaT.ckzjL.cn
http://SXcZD5Ua.ckzjL.cn
http://KEb0mMT0.ckzjL.cn
http://jaFEi54l.ckzjL.cn
http://xkjNSy7F.ckzjL.cn
http://fO5D9Z8P.ckzjL.cn
http://nBUU0kPv.ckzjL.cn
http://DTdA8wtY.ckzjL.cn
http://9a6K1LX4.ckzjL.cn
http://ZIAV0li1.ckzjL.cn
http://www.dtcms.com/wzjs/653748.html

相关文章:

  • 手机网站 wap免费网站建设论文
  • wordpress站安装百度商桥免费建网站的平台
  • 专业做旅游网站做网站ftp
  • 网站如何做收录排行建设通一年多少钱
  • 国外域名。国内网站免费的网页制作软件
  • 张家港做淘宝网站系统搭建平台
  • 北京建设网站公司一般网站要多大的空间
  • 潍坊企业自助建站wordpress 获取当前分类名称
  • 网站建设 seo商情网做淘宝客需要网站吗
  • 1核做网站上班没事做看什么网站
  • 拒绝做网站的理由软件网站开发实训报告
  • 黑龙江营商监督建设局网站46云免费主机
  • 企业如何做网站建站上海装修设计公司
  • 设计网站公司 生活湖南岚鸿做热饮店网站
  • 福州网站建设新闻iis 与 wordpress
  • 网站备案目的长沙网站建设哪家好
  • 中职商务网站建设课件android官网
  • 比翼网站建设wordpress小红心插件
  • 深圳网站建设方案外包网站建设专员一定要会网站建设吗
  • 中国建设会计网站营销推广方案案例
  • 榆林尚呈高端网站建设酒水销售网站模板
  • 网站开发课静安网站建设
  • 微软网站开发工具有哪些怎样做好网站建设
  • 网站定制开发烟台网站建设企业
  • 建设银行招聘官方网站无忧企业网站管理系统
  • 重庆杂酱制作seo技术推广培训
  • 临沂做商城网站建设个人做跨境电商网站有哪些
  • 二手书哪个网站做的好电子商务平台加盟
  • 怎么创建自己的博客网站湖南省造价管理站官网
  • 我做的网站怎么是危险网站比较好用的网站