久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
STC15F104W和STC15W401AS單片機(jī)代碼可以通用嗎
[打印本頁]
作者:
xbox007
時(shí)間:
2019-3-17 12:12
標(biāo)題:
STC15F104W和STC15W401AS單片機(jī)代碼可以通用嗎
最近使用STC15F104W單片機(jī)做的定時(shí)器電路,時(shí)鐘誤差很大,現(xiàn)在想用外接晶振的方法解決問題。由于STC15F104W本身不支持外接晶振,所以查手冊(cè)得知STC15W401AS可以外接晶振,現(xiàn)在就是不知道STC15F104W和STC15W401AS代碼可以通用不,如果要修改要怎么改,先謝謝了。
使用芯片:STC15F104E
晶振:11.0592MHZ
波特率:9600
編譯環(huán)境:Keil
*********************************************************************/
/********************************************************************/
#include<reg52.h> //庫文件
#define uchar unsigned char//宏定義無符號(hào)字符型
#define uint unsigned int //宏定義無符號(hào)整型
/********************************************************************
初始定義
*********************************************************************/
uint sec = 0; //定義計(jì)數(shù)值,每過1/10 秒,sec 加一
uint tcnt = 0; //鍵值判斷
uchar Start_Flag = 1;//定義一個(gè)全局變量,值初始化為1,用來判斷首次上電的
/********************************************************************
I/O定義
*********************************************************************/
sbit OUT1=P3^3;//定義輸出口為P3.3口 用以控制繼電器
sbit IN1=P3^5; //定義輸入口為P3.5口 用以輸入信號(hào)
/********************************************************************
定時(shí)中斷服務(wù)函數(shù)
*********************************************************************/
void t0(void) interrupt 1 using 0 //定時(shí)中斷服務(wù)函數(shù)
{
tcnt++;
if(tcnt==4000)
{
tcnt=0;
sec++;
if(Start_Flag == 1)
{
if(sec==10)
{
OUT1=1;
}
if(sec==20)
{
OUT1=0;
sec=0;
Start_Flag = 0;
}
}
else
{
if(sec==30)
{
OUT1=1;
}
if(sec==40)
{
OUT1=0;
sec=0;
}
}
}
}
/********************************************************************
主函數(shù)
*********************************************************************/
void main()
{
TMOD=0x02; //定時(shí)器工作在方式2
TH0=0x06; //對(duì)TH0 TL0 賦值
TL0=0x06;
TR0=1; //開始定時(shí)
ET0=1;
EA=1;
sec=0;
OUT1=0;//模塊通電繼電器吸合
while(1)
{
if(IN1==0){OUT1=1;while(!IN1);OUT1=0;}
}
}
/********************************************************************
結(jié)束
*********************************************************************/
作者:
13764578747
時(shí)間:
2020-4-9 23:32
頭文件用 stc15.h
作者:
13764578747
時(shí)間:
2020-4-9 23:44
頭文件用 stc15.h , TMOD =0X00 16位自動(dòng)重載。 然后,把定時(shí)中斷里的if,全拉到主程序來,定時(shí)中斷就留一個(gè)tcnt++, 時(shí)間就準(zhǔn)了。另外,定時(shí)器中斷太頻繁了,建議控制在5ms一次中斷比較好,那么200次一秒,累加只需要用到uchar,而不需要用到uint,我用stc15f104至今,定時(shí)器誤差直局限于下載時(shí)調(diào)整晶振速率時(shí)那點(diǎn)差值,實(shí)際使用中連別人說的頻飄都沒遇到過。
作者:
wulin
時(shí)間:
2020-4-10 05:56
就樓主這個(gè)簡(jiǎn)單程序,只是使用了定時(shí)器0的模式2,沒有使用其它任何特殊功能,程序什么都不用改。STC的芯片都能直接用,當(dāng)然包括STC15W401AS在內(nèi)。不知樓主使用STC15F104W單片機(jī)做的定時(shí)器電路下載程序時(shí)選擇內(nèi)部時(shí)鐘是多少頻率,從程序中看定時(shí)器設(shè)置是12MHz/250us。如果下載程序選擇內(nèi)部時(shí)鐘默認(rèn)11.0592MHz就會(huì)誤差很大。在實(shí)際應(yīng)用中STC內(nèi)部時(shí)鐘1小時(shí)誤差在10秒內(nèi)。其實(shí)如果誤差比較穩(wěn)定還可以通過修改if(tcnt==4000)的數(shù)值增減使誤差控制在每小時(shí)1秒內(nèi),沒有必要加外部晶振。其實(shí)TB賣的晶振也準(zhǔn)不到那里去。
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
欧美性猛片aaaaaaa做受
|
欧美电影一区
|
久久综合成人精品亚洲另类欧美
|
久久久久久高潮国产精品视
|
亚洲劲爆av
|
日韩欧美一级精品久久
|
www国产亚洲精品
|
欧美在线精品一区
|
美女黄视频网站
|
国内精品视频免费观看
|
视频一区二区中文字幕
|
在线第一页
|
久久99精品久久久久久国产越南
|
国产综合久久
|
亚洲一区
|
国产一级在线
|
天天久久
|
日韩精品一区二区三区
|
一区二区三区亚洲
|
91在线一区
|
午夜性色a√在线视频观看9
|
自拍偷拍精品
|
国产一区二区久久
|
精品视频免费
|
91视频进入
|
中文字幕在线三区
|
嫩呦国产一区二区三区av
|
黑人精品
|
亚洲一区国产精品
|
免费观看一级毛片
|
91综合网
|
久久一视频
|
久久久久久久久蜜桃
|
国产精品久久一区二区三区
|
久久一视频
|
久久久久无码国产精品一区
|
日本一区二区高清视频
|
日韩黄色小视频
|
国产乱码久久久久久
|
日本特黄特色aaa大片免费
|
青娱乐av
|