欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機C語言強制類型轉換之bit示例程序 [打印本頁]

作者: zmc419    時間: 2019-5-12 19:57
標題: 單片機C語言強制類型轉換之bit示例程序
/*C51中的bit強制類型轉換示例*/
/*用于74HC595等串轉并的數據分離很方便*/
/*bit類型轉換時保留的是最高位(加0xff后溢出)*/
/*其它強制類型轉換保留低位,扔掉高位*/
#include<STC90C5xAD.H>
#include <intrins.h>
sbit smgSER = P1^0; // 595(14 腳)SER 數據輸入引腳
sbit RCK = P1^1; // 595(12 腳)STCP 鎖存時鐘 1 個上升沿所存一次數據
sbit SCK = P1^2; // 595(11 腳)SHCP 移位時鐘 8 個時鐘移入一個字節
//void HC595_WrOneByte(unsigned char ucDat);
void HC595_WrOneByte(unsigned char ucDat)
{
    unsigned char i = 0;
    /* 通過 8 循環將 8 位數據依次移入 74HC595 */
    for (i=0; i<8; i++)
    {
                P0 =ucDat & 0x80; //debug調試用
        smgSER = (bit)(ucDat & 0x80); //強制bit轉換
        /*等價于if(ucDat&0x80) smgSER=1;
        else smgSER=0;*/
        SCK = 0;
        ucDat <<= 1;
        SCK = 1;
    }
    /* 數據并行輸出(借助上升沿) */
    RCK = 0;
    _nop_();
    _nop_();
    RCK = 1;
}
void main(void)
{
    HC595_WrOneByte(0x81);
}






歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1