|
各位大神,本人刚学单片机,现想用STC8G1K08A-SOP8芯片做下演示板,不用外围晶振,原理图如下:
程式如下:
#include <STC8G.h>
#include<intrins.h>
#include<math.h>
#define CLKSEL (*(unsigned char volatile xdata*)0xfe00)
unsigned char p,z=0;
unsigned int i=0,q=0,m=5;
sbit k1=P3^1;
sbit echo=P3^2;
sbit trig=P3^3;
void delay_us(unsigned int i)
{
while(i)
{
unsigned char a;
for(a=5;a>0;a--);
i--;
}
}
void delay100ms(unsigned int i)
{
while(i)
{
unsigned char a,b,c;
for(c=106;c>0;c--);
for(b=197;b>0;b--);
for(a=38;a>0;a--);
_nop_();
i--;
}
}
void main()
{
P3M1=0x00;
P3M0=0x0e;
P5M1=0;
P5M0=0;
P_SW2=0x80;
CLKSEL=0x00;
P_SW2=0x00;
P3=0xff;
while(1)
{
echo=0;
trig=0;
delay100ms(50); //启动5秒种后开炸头
echo=1;
trig=1;
delay100ms(30); //开炸头3秒,如此反复工作开关继电器通断控制炸头
}
}
采用U8W工具写程式的提示信息如下图:
但结果系芯片按原理图上电后,红色及绿色指示灯不闪动,一直亮。请教下各位指点下那里不对,谢谢!
|
|