『壹』 單片機代碼
#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
main()
{
uchari,j;
P0=0xaa;
delay(250);
P0=0x55;
delay(250);
for(i=0;i<10;i++)
{
P0=0xfe;
for(j=0;j<8;j++)
{
P0=_crol_(P0,1);
delay(250);
}
}
while(1);
}
『貳』 什麼是單片機源程序
首先,源程序就是通過用某種編程語言編碼後,利用編譯器編譯成相應的可執行文件。
那麼單片機的源程序就是,利用keil將寫好的c代碼文件編譯成可執行的.HEX文件。
『叄』 求51單片機語言源程序
//程序功能:LED、蜂鳴器開0.5秒,關0.5秒
#include <REG52.H>
//工作頻率12M,所以定時器脈沖頻率為1M=1000000
#define F 12
#define ONE_SECOND (F*1000000/12) // 每秒脈沖數
#define TIMES 50 // 50ms中斷一次
#define oTH0 (65536-ONE_SECOND*TIMES/1000) / 256
#define oTL0 (65536-ONE_SECOND/TIMES/1000) % 256
sbit LED=P1^0; //接LED
sbit BUZZER=P1^1; //接蜂鳴器
void Init_timer0(void)
{
//初始化定時器0
TMOD |= 0x1; // timer 0, mode 1, 16-bit
TH0 = oTH0;
TL0 = oTL0;
TR0 = 1;
ET0 = 1;
EA = 1;
}
void main(void)
{
Init_timer0();
while(1);
}
void timer0() interrupt 1 using 2
{
static unsigned char Ct; //中斷次數計數器
Ct++;
if(Ct == 10)
{
//中斷10次,開始0.5秒鍾後,LED、蜂鳴器開
LED = 1;
BUZZER =1;
}
if(Ct == 20)
{
//中斷20次,開始1秒鍾後LED、蜂鳴器關
LED = 0;
BUZZER =0;
Ct =0 ; //計數清0,重新開始一個開關周期
}
TH0 = oTH0;
TL0 = oTL0;
}
『肆』 單片機代碼
void delay(unsigned int x) //延時 x ms
{
unsigned int i,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
延時1ms 即為使x=1;
這程序延時約1ms(x=1時用keil測出來約 0.96831272ms,近似1ms),用C語言很難做到准確的1ms。注意晶振為11.0592MHZ的時候用~
滿意請採納,不懂繼續問
『伍』 單片機上的源代碼和固件有什麼區別
源代碼就是人能看懂的程序代碼,通常說寫程序也就是寫的源代碼;固件是源碼經過編譯過後生成的目標程序,是二進制代碼,一般為bin或hex格式,燒錄進單片機能夠被識別和執行。
『陸』 如何修改單片機的源程序
使用編程軟體如(keil,iar軟體)編寫和修改程序。選擇產生hex文件後,利用程序下載軟體flashmagic等(單片機不同而不同)下載程序到單片機。單片機上電運行即可!找本單片機書籍,應該就有很詳細的介紹!
『柒』 單片機源程序
這個簡單,但是你沒有按鍵的啊,你上面的按鍵是單片機復位用的啊,你必須在單片機P1.1埠在接個按鍵,我幫你寫過程序啊!
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
**/
#include "REG52.H"
sbit LED1_INPUT = P1^0;
sbit KEY1_INTPT = P3^4;
void Delay_1ms(unsigned int Cnt)
{
unsigned int x, y;
for(x = Cnt; x > 0; x--)
for(y = 120; y > 0; y--);
}
int main(void)
{
P0 = 0xFF;
P1 = 0xFF;
P2 = 0xFF;
P3 = 0xFF;
while(1)
{
if(KEY1_INTPT == 0)
{
Delay_1ms(10);
if(KEY1_INTPT == 0)
{
LED1_INPUT = ~LED1_INPUT;
}
while(KEY1_INTPT == 0);
}
}
}
『捌』 源碼怎麼下載到單片機
不是什麼源碼都可以寫入任何一個型號單片機的,你需要根據不同型號的單片機設置建立不同的工程文件,設置好單片機的具體型號。根據源碼生成編譯後的hex或者obj等對應的格式文件才能使用模擬器或編程器寫入。
『玖』 請教單片機代碼,
#include
#define uchar unsigned char
uchar dis,led,cnt=0,run=0;
uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};
sbit key=P1^0;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
if(cnt>=10)
{
cnt=0;
P0=_crol_(P0,1);
run++;
run%=8;
if(run==0 && dis>0)dis--;
}
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{
P0=table[dis];
if(key==0)
{
while(key==0);
dis++;
}
}
}
『拾』 急求80c51單片機源碼和電路圖!!!!
二. 交通燈的設計程序框圖
開始
↓
四個路口紅燈亮
↓
東西綠燈亮,南北紅燈亮,延時
↓
東西黃燈閃爍,南北紅燈亮,延時
↓
東西紅燈亮,南北綠燈亮,延時
↓
東西紅燈亮,南北黃燈閃爍,延時
↓
三.交通燈程序的主程序
程序如下:
ORG 0000H
SJMP A3 ;四盞紅燈亮
A3:MOV SP,#60H
MOV A, #24H
MOV P1, A
CLR P3.4
CLR P3.3
SETB P3.5
SETB P3.2 ;顯示5秒
MOV R4,#05H
LOOP1:MOV R2,#03H
LCALL xian ;調顯示子程序
DJNZ R4,LOOP1
MOV R4,#00H
MOV R2,#03H
LCALL xian
;東西綠燈亮,南北紅燈亮
A2:MOV A,#0CH
CLR P3.5
MOV P1,A
SETB P3.3
CLR P3.4
SETB P3.2 ;顯示20秒
MOV R4,#14H
LOOP2 :MOV R2,#03H
LCALL xian ;調顯示子程序
DJNZ R4,LOOP2
MOV R4,#00H
MOV R2,#03H
LCALL xian ;調顯示子程序
SETB P3.2
CLR P3.3 ; 顯示5秒
MOV R4 ,#05H ;東西黃燈亮,南北紅燈亮
LOOP9:MOV A,#14H
MOV P1 ,A
CLR P3.5
SETB P3.4
MOV R2,#02H
LCALL xian ;調顯示子程序
MOV R2,#01H ;定時
LCALL DELAY ;調延時子程序
;南北紅燈亮
MOV A ,#04H
MOV P1 ,A
CLR P3.4
CLR P3.5
MOV R2,#01H ;定時
LCALL DELAY ;調延時子程序
DJNZ R4,LOOP9
MOV R4,#00H
MOV R2,#03H
LCALL xian ;調顯示子程序
;東西紅燈亮,南北綠燈亮
A8: MOV A, #61H
MOV P1,A
CLR P3.4
CLR P3.3
CLR P3.2
SETB P3.5 ; 顯示20秒
MOV R4,#14H
LOOP3: MOV R2,#03H
LCALL xian ;調顯示子程序
DJNZ R4,LOOP3
MOV R4,#00H
MOV R2,#03H
LCALL xian ;調顯示子程序
SETB P3.5
MOV R4 ,#05H
LOOP10: MOV R2,#02H
LCALL xian ;調顯示子程序
; 東西紅燈亮,南北黃燈亮
A0:MOV A,#0A2H
MOV P1,A
CLR P3.4
CLR P3.3
CLR P3.2
MOV R2,#01H ;定時
LCALL DELAY ;調延時子程序
; 東西紅燈亮
MOV A,#20H
MOV P1,A
CLR P3.4
CLR P3.3
CLR P3.2
MOV R2,#01H ;定時
LCALL DELAY ;調延時子程序
DJNZ R4,LOOP10
MOV R4,#00H
MOV R2,#03H
LCALL xian ;調顯示子程序
LJMP A2 ;延時子程序
DELAY:PUSH 2
PUSH 1
PUSH 0
DELAY1: MOV 1,#00H
DELAY2:MOV 0,#0B2H
DJNZ 0,$
DJNZ 1,DELAY2
DJNZ 2,DELAY1
POP 0
POP 1
POP 2
DJNZ R2 ,DELAY
RET
;顯示子程序
xian: MOV A,R4
MOV B,#10
DIV AB
MOV R6,A
MOV DPTR,#TAB
MOV A,B
MOVC A,@A+DPTR
MOV SBUF,A
MOV R7,#0FH
H55S:DJNZ R7,H55S
MOV A,R6
MOVC A,@A+DPTR
MOV SBUF,A
MOV R7,#0FH
H55S1:DJNZ R7,H55S1
LCALL DELAY
RET
TAB:DB 0fch,60h,0dah,0f2h,66h,0b6h,0beh,0e0h
DB 0feh,0f6h,0eeh,3eh,9ch,7ah,9eh,8eh
END