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

標題: 求教!我這個是什么問題? [打印本頁]

作者: glr    時間: 2013-10-17 12:19
標題: 求教!我這個是什么問題?
初學stc12c5a單片機,編程如下:


#include<stc12c5a.h>
#include <stdio.h>
#include <stdlib.h>


signed long int aaa;
                                                

void Init_Uart()
{
// 115200波特率
PCON &= 0x7f;//波特率不倍速
SCON = 0x50;//8位數據,可變波特率
BRT = 0xFD;//設定獨立波特率發生器重裝值 11.0592M晶振
AUXR |= 0x04;//獨立波特率發生器時鐘為Fosc,即1T
AUXR |= 0x01;//串口1選擇獨立波特率發生器為波特率發生器
AUXR |= 0x10;//啟動獨立波特率發生器
ES = 1; //充許串口1中斷
}                                                         


char putchar (unsigned char i)
{
    ES     =   0;  //關串口中斷
    TI     =   0;  //清零串口發送完成中斷請求標志
    SBUF   =   i;
    while(TI ==0); //等待發送完成
    TI     =   0;  //清零串口發送完成中斷請求標志
    ES     =   1;  //允許串口中斷
    return SBUF;
}


void abc()
{

aaa=32001;
}



        




//主函數,C語言的入口函數:        
void main(void)  
{
        Init_Uart();
          while(1)
        {
             abc();
           if(RI)
                {
                RI=0;                        
        if (SBUF=='l'){printf("%d", aaa);}
                  }
}




用串口調試助手,收到的aaa為0. 如果aaa定義為:signed  int aaa;  則正常收到32001.是這個單片機不能用長整型,還是其他什么問題?


作者: dqzcq    時間: 2013-10-17 12:23
新新手幫頂
作者: glr    時間: 2013-10-21 00:30
沒人知道?
唉,原以為可以用單片機做點事,沒想一接觸,就碰了壁。32767并不是一個很大的數,稍不留意,就會超出,導致出錯。用c 語言看來是不行了,用匯編,實在是太麻煩。看來,只能回到PC機與DOS程序里去了。




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