新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機能力測試

        單片機能力測試

        作者: 時間:2016-11-10 來源:網絡 收藏
        1、74HC595為串行輸入、并行輸出的邏輯芯片,調用函數MDIP_HC595(0x01);在輸出端輸出7個低電平及1個高電平,其中參數為無符號8位變量BYTE,請用C語言編寫函數void MDIP_HC595(BYTE gLOcal_1);

        答案:
        sbit SER=P1^0; //595串行數據輸入
        sbit SRCLK=P1^1; //595時鐘出入
        void MDIP_HC595(BYTE gLOcal_1)
        {
        BYTE i;
        for(i=0;i<8;i++)
        SRCLK=0; //時鐘為低
        SER=gLOcal_1&0x80; //寫入一位串行數據
        gLOcal_1=gLOcal_1<<1;//數據左移一位
        SRCLK=1; //時鐘為高
        }

        本文引用地址:http://www.104case.com/article/201611/317315.htm

        2、AT89C51為8051系列中比較通用的1個芯片,如果用C語言編寫程序,子函數可以被調用最大多少層,為什么?

        答案:對于AT89C51來說一般控制在10層內。因為對函數的嵌套調用層次的限制是由于其片內RAM中缺少大型堆棧空間所致。在AT89C51內部RAM共有128B,在這個區域中的任何子區域都可以用作堆棧區。

        3、請說明子函數被調用時單片機是如何動作的。

        答案:每次子函數被調用時單片機把2字節壓入內部堆棧,C編譯器通常依靠堆棧來頻繁地進行參數傳遞。



        關鍵詞: 單片機能力測

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 承德县| 城步| 天祝| 林西县| 赤峰市| 民和| 江永县| 公安县| 台东县| 永泰县| 宿迁市| 双柏县| 开原市| 道孚县| 昌平区| 达日县| 元朗区| 阳泉市| 广元市| 玉环县| 深水埗区| 罗山县| 涿鹿县| 贵港市| 南乐县| 枣阳市| 玛多县| 阿拉尔市| 海晏县| 章丘市| 天台县| 鄂伦春自治旗| 寿阳县| 龙江县| 治县。| 祁东县| 都昌县| 陆良县| 澄江县| 乐至县| 墨脱县|