📄 main.c
字号:
//#include "REG_STC516AD.h"
#include <RegSTC51.h>
#include <intrins.h>
#include <stdio.h>
sbit CR = 0xDE;
typedef unsigned char INT8U;
typedef unsigned int INT16U;
void PWM_Output(INT8U nDiv)
{
CMOD = 0x02;
CL = 0x00;
CH = 0x00;
CCAP0L = nDiv;
CCAP0H = nDiv;
PCA_PWM0 = 0x00;
CCAPM0 = 0x42;
CR = 1;
}
void Delay(INT8U uDelayTime)
{
INT8U n;
INT16U m;
for (n=0; n<uDelayTime; n++)
{
for (m=0; m<10000; m++)
;
}
}
void InitCOM(void)
{
SCON = 0x52; /* SCON */ /* setup serial port control */
TMOD = 0x20; /* TMOD */ /* hardware (2400 BAUD @12MHZ) */
TCON = 0x69; /* TCON */
TH1 = 0xf3; /* TH1 */
}
void SendByte(INT8U uByte)
{
TI = 0;
SBUF = uByte;
while (TI == 0)
;
TI = 0;
}
INT8U GetADResult(INT8U uChannel)
{
INT8U uADFinished = 0;
ADC_DATA = 0;
ADC_CONTR = uChannel;
Delay(1);
ADC_CONTR |= 0x08;
uADFinished = 0;
while (uADFinished == 0)
uADFinished = (ADC_CONTR &0x10);
ADC_CONTR &= 0xF7;
return ADC_DATA;
}
void SendDataToCOM(unsigned char* pBuffer, INT8U Length)
{
INT8U data I;
for (I=0; I<Length; I++)
{
while (TI == 0) ;
SBUF = *(pBuffer+I);
TI = 0;
}
}
void main(void)
{
InitCOM();
P1 = P1 | 0x63;
P1_ADC_EN = 0x63;
SendDataToCOM("Hello", 5);
while (1)
{
SendByte(GetADResult(0));
Delay(0x200);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -