① 如何在DXP里找到51單片機是因為電子元器件庫只有兩個嗎不過這兩個不是基本的庫嗎點擊搜索後彈
運算符中選擇包含,然後---范圍---選擇-----庫文件路徑
搜索直接輸入c51或者c52就行,引腳兼容的。
② AD怎麼找89c51單片機
89S51相對於89C51增加的新功能包括:
-- 新增加很多功能,性能有了較大提升,價格只比89C51稍高一些
-- ISP在線編程功能,這個功能的優勢在於改寫單片機存儲器內的程序不需要把晶元從工作環境中剝離。是一個強大易用的功能。
-- 最高工作頻率為33MHz,大家都知道89C51的極限工作頻率是24M,就是說S51具有更高工作頻率,從而具有了更快的計算速度。
-- 具有雙工UART串列通道。
-- 內部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。
-- 雙數據指示器。
-- 電源關閉標識。
-- 全新的加密演算法,這使得對於89S51的解密變為不可能,程序的保密性大大加強,這樣就可以有效的保護知識產權不被侵犯。
-- 兼容性方面:向下完全兼容51全部字系列產品。比如8051、89C51等等早期MCS-51兼容產品。也就是說所有教科書、網路教程上的程序(不論教科書上採用的單片機是8051還是89C51還是MCS-51等等),在89S51上一樣可以照常運行,這就是所謂的向下兼容。
比較結果:就如同INTEL的P3向P4升級一樣,雖然都可以跑Windows,不過速度是不同的。
從AT89C51升級到AT89S51 ,也是同理。和S51比起來,C51就要遜色一些,實際應用市場方面技術的進步是永遠向前的。
③ 請教stc自帶ad的51單片機的使用方法
#include<reg52.h>#include<intrins.h>
#define uchar unsigned char#define uint unsigned int
sfr ADC_CONTR = 0xbc; //ADC控制寄存器
sfr ADC_RES = 0xbd; //ADC轉換結果高八位寄存器
sfr ADC_LOW2 = 0xbe; //ADC轉換結果低兩位寄存器
sfr P1ASF = 0x9d; //P1口模擬功能控制寄存器
#define ADC_POWER 0x80 //ADC電源控制位
#define ADC_FLAG 0x10 //ADC結束標志位
#define ADC_START 0x08 //ADC啟動標志位
#define ADC_SPEEDLL 0x00 //540個時鍾周期
#define ADC_SPEEDL 0x20 //360個時鍾周期
#define ADC_SPEEDH 0x40 //180個時鍾周期
#define ADC_SPEEDHH 0x60 //90 個時鍾周期
void InitUart();
void SendData(uchar);
void Delay(uint n);
void InitADC();
uchar ch=0; //ADC通道選擇
void main()
{
InitUart(); //初始化串口
InitADC(); //初始化ADC
IE = 0xa0; //打開總中斷
while(1);}
/*ADC中斷函數*/
void ads_isr() interrupt 5 using 1
{
ADC_CONTR&=!ADC_FLAG; //將ADC結束標志位清零
SendData(ch); //將對應ADC通道號發送給電腦 SendData(ADC_RES); //將轉換結果發送給電腦
if(++ch > 7)ch = 0; //下一個ADC通道 ADC_CONTR = ADC_POWER|ADC_SPEEDLL|ADC_START|ch; //打開ADC電源、轉換時間540個時鍾周期、開始轉換、選擇通道號
}
/*初始化ADC寄存器*/
void InitADC()
{
P1ASF = 0xff; //定義p1口為ADC轉換口
ADC_RES = 0;
ADC_CONTR = ADC_POWER|ADC_SPEEDLL|ADC_START|ch; //打開ADC電源、轉換時間540個時鍾周期、開始轉換、選擇通道號
Delay(2); //等待ADC上電穩定然後開始ADC轉換?應該是先開電源,等待後再START,可能STC官方程序有問題
}
/*初始化串口*/
void InitUart()
{
SCON = 0x5a;
TMOD = 0x20;
TH1 = 0xfd; //在11.0592MHZ晶振下,波特率為9600
TL1 = 0xfd;
TR1 = 1;
}
/*串口發送數據*/
void SendData(uchar dat)
{
while(!TI);
TI = 0;
SBUF = dat;
}
/*延時函數*/
void Delay(uint n)
{
uint x;
while(n--)
{
x=5000;
while(x--);
}
}
注釋原創
④ AD中如何顯示40引腳的51單片機
原理圖就自己畫吧,這裡面有好多常用的封裝,自行翻閱,有51的
⑤ 自帶12位AD轉換器的51系列單片機
樓上說的好,和51單片機的數據傳輸線就是8根的。外加幾條控制線如:CLK、OE、START之類的。沒別的一般的參考書上都會有的。
⑥ 51單片機AD採集
程序可以直接相除,但只保留整數部分,所以如果你要得到小數兩位,就先乘以100再除,顯示的時候知道最低兩位實際是小數點後兩位就行了。
⑦ dxp中怎麼找at89c51我要具體方法
1. DXP的庫文件都是以公司的名字為索引方式,DS18B20你可以去「Dallas Semiconctor」目錄下尋找「Dallas Sensor Temperature Sensor」庫;AT89S51你可以去「Atmel」目錄下的的8位控制器庫內尋找。
2.DS18B20安裝地址:LibraryDallas SemiconctorDallas Sensor Temperature Sensor.IntLib,
⑧ 51單片機ad采樣可以採集什麼
51單片機有很多型號,普通的51單片機是沒有ADC的,需要外接ADC晶元,一般是ADC0832等等,網上很多,利用51單片機驅動AD晶元進行采樣就可以實現AD採集,利用定時器設置好采樣率就OK了,為了得到較高精度,你將除數乘以100,再除被除數。所以最好定義為int型。內存中肯定以十六進制形式(二進制)存儲的。