導航:首頁 > 操作系統 > 單片機脈沖怎麼寫

單片機脈沖怎麼寫

發布時間:2023-12-05 14:38:47

1. 用C51單片機,編寫脈沖控制步進電機的驅動器

是什麼步進電機啊,有沒有驅動器,如果有的話,就直接給脈沖就好了。

2. 向51單片機里寫發出脈沖信號的c程序怎麼編啊

//用ADC0808控制PWM輸出
//通過可變電阻調節脈沖寬度
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit CLK =P2^4;
sbit ST=P2^5;
sbit EOC=P2^6;
sbit OE=P2^7;
sbit PWM=P3^0;
//延時
void Delay(uchar x)
{
uchar i;
while(x--)
for(i=0;i<40;i++);
}
void main()
{
uchar Val;
TMOD=0x02;//定時器T0工作於方式2自動重裝8位計數器
TH0=0x14;
TL0=0x00;
IE=0x82; //允許T0中斷
TR0=1; //啟動定時器
while(1)
{
ST=0;ST=1;ST=0; //啟動A/D轉換
while(!EOC); //等待轉換完成
OE=1;
Val=P1; //讀取轉換結果
OE=0;
if(Val==0) //PWM輸出占空比為0
{
PWM=0;
Delay(0xff);
continue;}
if(Val==0xFF) // PWM輸出占空比為100%
{
PWM=1;
Delay(0xff);
continue;
}
PWM=1;
Delay(Val); //PWM輸出占空比
PWM=0;
Delay(0xff-Val);
}
}
//--------------------------------
//T0定時器中斷給ADC0808提供時鍾信號
//---------------------------------
void Timer0_INT() interrupt 1
{
CLK=!CLK; //ADC0808時鍾
}

能看明白嗎?我也是剛學的,照書上寫的

3. 如何寫一個單片機輸入上升沿和下降沿的脈沖輸出信號的c語言程序

如果是循環中查詢的話我一般這樣做, 定義一個變數比如keyLastStatus來記錄上一次掃描周期的狀態
sbit key=P2.0; char keyLastStatus=0;
keyLastStatus=key; //初始化
while (1)
{
if(key==0 && keyLastStatus!=key) Todo(); //上升沿
if(key==1 && keyLastStatus!=key) Todo(); //下降沿
keyLastStatus=key; //記錄上一次的狀態
}

4. 如何用單片機記脈沖數

1、用單片機產生200ms,占空比為50%的周期信號,即高低電平各100ms;
2、將該200ms信號接到INT0或INT1上,將外部脈沖信號接到T0或T1上,注意要對應接,即INT0與TO一起用或INT1和T1一起用。
3、設置定時器/計數器工作方式控制寄存器TMOD的GATE = 1(門控方式) ,C/T = 1 (計數方式)。
這樣,就可以用100ms作為一個控制門,在這個門有效(相應外部中斷)時,外部計數脈沖就可以進入這個門,定時器/計數器計數初值設為加1就溢出,中斷服務程序中計數就可以了。

閱讀全文

與單片機脈沖怎麼寫相關的資料

熱點內容
vue多端編譯 瀏覽:750
程序員qq表白代碼編輯 瀏覽:893
聯想伺服器怎麼進後台 瀏覽:114
安卓定製rom怎麼刷 瀏覽:539
三層交換機的配置命令 瀏覽:110
49演算法公式 瀏覽:788
求最小生成樹演算法代碼及運行圖片 瀏覽:930
python掃雷計數 瀏覽:879
什麼安卓手機品牌最保值 瀏覽:844
編程貓買房子 瀏覽:134
c語言系列編程 瀏覽:742
符合國標加密標准技術 瀏覽:496
加密狗介面會壞嗎 瀏覽:625
javame開發 瀏覽:380
python3偽裝瀏覽器 瀏覽:242
信息聯想伺服器專班是干什麼的 瀏覽:99
python獲取cpu個數 瀏覽:864
命令提示符查網速 瀏覽:229
對於某個理論演算法可以直接抄嗎 瀏覽:188
如何訪問ftp伺服器下載文件 瀏覽:392