當前位置:首頁 » 編程語言 » c脈沖語言

c脈沖語言

發布時間: 2023-05-31 15:37:43

1. c語言里用什麼語句實現脈沖

隨便你輸入那困耐山一天都能算星期幾

#include<time.h>
#include<汪中stdio.h>
#include<conio.h>
#include<stddef.h>
#define BIG 1
#define SMALL 2

void info()
{
textcolor(RED);
gotoxy(37,11);
puts("WEEKDAY");
}
int runyear(int year) /*判斷是否為閏年*/
{
return !(year%4)&&year%100||!(year%400);
}
void main()
{
int year,month,day,yeardata,monthdata;
char *weekday;
time_t lt;
struct tm *ptr;
lt=time(NULL);
do
{
clrscr();
info();
gotoxy(18,15);
printf("Please Input The Year: ");
scanf("%d",&year);
}while(year<0||year>9999);
yeardata=runyear(year);
do
{
clrscr();
info();
gotoxy(18,15);
printf("Please Input The Month:");
scanf("%d",&month);
}while(month<1||month>12);
switch(month) /*大小月,2月*/
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: monthdata=BIG; break;
case 4:
case 6:
case 9:
case 11: monthdata=SMALL; break;
case 2: monthdata=3; break;
}
l1:
clrscr();
info();
gotoxy(18,15);
printf("Please Input The Day:");
scanf("%d",&day);
if(monthdata==BIG)/*大畝襲月*/
{
if(day<1||day>31)
goto l1;
}
if(monthdata==SMALL)/*小月*/
{
if(day<1||day>30)
goto l1;
}
if(yeardata==0&&monthdata==3)/*平年2月*/
{
if(day<1||day>28)
goto l1;
}
if(yeardata==1&&monthdata==3)/*閏年2月*/
{
if(day<1||day>29)
goto l1;
}
ptr=localtime(lt);
weekday=asctime(ptr);
ptr->tm_mday=day;
ptr->tm_mon=month;
ptr->tm_year=year;
weekday=asctime(ptr);
clrscr();
gotoxy(13,30);
puts(weekday);
}

2. c語言如何中斷函數控制脈沖

外部中斷的常用功能

外部中斷經常用來記錄外部脈沖的個數,也就是當我們使用外部中斷1時,如果想記錄自身單片機的某個引腳的下降沿個數,只需用杜邦線把這個引腳和P3.3連接即可。

比如P2.3引腳產生這樣的電平無規律跳轉,則下降沿的個數為5

所以我們就用外部中斷1來實現記錄K4按鍵從按下到鬆手的抖動過程中經歷了多少個下降沿,把下降沿的個數顯示在數碼管上。

2.程序思路

我們定義一個16位的全局變數pulse用來記錄P2.3下降沿的個數,在中斷函數中的任務就是簡單的pulse自加,因為引腳遇到下降沿就會進入中斷函數。

在主函數里就是負責數碼管顯示即可。

3.代碼#include 

#include //陸睜詳見第六章第8講

u16 pulse=0;

void main()

{

u16 x,PULSE_buf;

IT1 = 1;   //下降沿觸發模式

EX1 = 1;

EA  = 1;

LED_Init();//初始化LED硬體模塊

KEY_Init();//初始化按鍵功能模顫早塊

ShowNumber(pulse);

while(1)

{

SEG_Scan();

if(PULSE_buf!=pulse)ShowNumber(pulse);//pulse不再是前一次的值,也就是pulse數值更新了,所以數碼管緩存區也要更新pulse的數值以便顯示出來

x++;

if(x>=50)//隔一段時間過來記錄此時的pulse數值

{

x=0;

PULSE_buf=pulse;

}

}

}

//請把P3.3和P2.3用杜邦線連接起來

void EXTI1_IRQHandler() interrupt 2

{

pulse++;

}

大家多按幾次K4,發現按下後鬆手茄悉雀的一個動作里有時pulse就自加了幾次,顯示在數碼管上的數加了好幾下。

3. c語言脈沖發生器

你說的是單片機C編程吧,不知道你要的脈沖頻分是多少畝型,也不知道你用的是哪種單片機,只能給你個思路.
while(1)
{
定時1;
輸出高電平信迅模猜號;
定時2;
輸出低電平信號;
}
定時1和定時2要自己控制,可用單片機的定時器做,也可碼旦以用循環做.

4. c語言編寫單片機計數脈沖

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uint times,freq;
sbit p35=P3^5;
main()
{
TMOD=0x01;
TH0=0;
TL0=0;
while(1)
{
while(p35);
TR0=1;
while(!p35);
while(p35);
TR0=0;
times=TH0*256+TL0;
freq=1000000/times;
//處理頻率,自己做
}
}

5. 單片機脈沖計數問題(C語言)

設計數值為num
num=0;
P0^0=jishu;
jishu=1;檢測低電平IO要設置高
main()
{
if(jishu==0)

{
num++;

whlie(jishu==0);為了防止P0^0一直為低電平num一直在加

}
if(num==9990)
{
P0^1=0;

num=0;繼續下一輪計數
}
}

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:333
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:376
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:610
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:31
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:941
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:802
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:510
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371