『壹』 求51單片機代碼 STC15F2K60S2.H
給一種模式答案:
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
SETB ET0
SETB EA
MOV R2,#8
MOV A,#0FEH
SJMP $
T0ISR:
CLR TR0
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
DJNZ R2,T0E
MOV P1,A
RL A
T0E:
RETI
END
『貳』 STC15F2K60S2單片機
這個不能改的。只能通過時鍾分頻寄存器把主時鍾分頻。比如主時鍾設為16M,分頻值為16,那麼單片機及外設的時鍾就是1M。不過即使如此,相同的代碼執行時間也和STC89系列不一致。因為STC15系列並不是把所有的指令執行時間都提高了12倍,所以還是修改代碼吧。。。
『叄』 STC15F2K60S2單片機用定時器2做波特率發生器的串口程序,求大神解答
/*這個STC-ISP帶這個工具的,我一般也就用這個,下面供參考*/
voidUartInit(void) //[email protected]
{
S2CON=0x50; //8位數據,可變波特率
AUXR|=0x04; //定時器2時鍾為Fosc,即1T
T2L=0xE0; //設定定時初值
T2H=0xFE; //設定定時初值
AUXR|=0x10; //啟動定時器2
}
『肆』 STC15系列單片機的延時函數問題
你這里的系統頻率應該是指晶振頻率,和指令周期是兩碼事,不過他們是存在個比率關系;
如C51晶元,通常系統頻率為12MHz,但是其最小指令周期為 1uS,即 1MHz;
又如STM32f1xx晶元,其晶振頻率為12MHz,可在內部就把這個頻率提升到了72MHz,這樣其最小指令周期就會比 1uS小得多了;
『伍』 請教STC15系單片機《ADC使用內部基準計算外部電壓》問題
這個在數據手冊里有詳細描述,也可參考工具軟體裡面的常式。
也就是說「隙電壓」是一個穩定的值,這個值在「標准供電電壓下」的「測量值」存儲在單片機的內部,通過讀取這個事先存儲的值,已知標准供電電壓值,再和當下讀取的值共同計算出當下實際供電電壓值,然後就可以計算出你想要檢測的東西。
『陸』 求講解這段STC15單片機的代碼,外部中斷2讓LED燈亮
「為什麼按下外部中斷鍵就能讓LED燈亮一下」
因為程序裡面一旦進入外部中斷,就把P1.0管腳翻轉一下,如果接了LED就會有亮滅的變化。
「P10=!P10 是什麼意思」、
將P1.0管腳的輸出電平翻轉。
「為什麼我改成P20=!P20就報錯」
因為程序里只定義了P10,P20這個符號沒有定義,你需要自己添加 sbit P20 = P2^0;
「開發板的外部中斷焊接到單片機的P1.0引腳,如果我焊接的不是P1.0引腳,那P10=!P10還好使嗎」
外部中斷跟P1.0管腳沒有關系。你重新看電路圖去……
「為什麼頭文件加上#include「STC15.H」就會報錯」
因為編譯器找不到這個文件在哪兒,當然就會嗷嗷叫喚……
『柒』 關於STC15單片機定時器產生PWM的問題。官方常式如下。
貌似確實如此,if....else裡面應該再加一個P_PWM置位、清零語句。
『捌』 STC15F2K60S2單片機利用中斷求脈沖周期可直接調用的子函數(要求輸出的值是頻率f0)
第一個上升沿到來,讀取計數器數據jishu1,第二個上升沿到來,讀取計數器數據jishu 2,兩者相減根據時鍾頻率算出時間T ,其倒數即為頻率