📄 main.c
字号:
#include <XC161.H>
#include <stdio.h>
#define VREF 5 /* Voltage Reference */
void main ( void ) {
/* initialize the serial interface */
#ifndef Monitor /* do not initialize if you use Monitor-166 */
P3 |= 0x0400; /* SET PORT 3.10 OUTPUT LATCH (TXD) */
DP3 |= 0x0400; /* SET PORT 3.10 DIRECTION CONTROL (TXD OUTPUT) */
DP3 &= 0xF7FF; /* RESET PORT 3.11 DIRECTION CONTROL (RXD INPUT) */
ASC0_TIC = 0x80; /* SET TRANSMIT INTERRUPT FLAG */
ASC0_RIC = 0x00; /* DELETE RECEIVE INTERRUPT FLAG */
ASC0_BG = 0x40; /* SET BAUDRATE TO 9600 BAUD @ 20MHz */
ASC0_CON = 0x8011; /* SET SERIAL MODE */
ALTSEL0P3 |= 0x0C00; /* Configure port pins for serial interface 0 */
#endif
/* A/D Converter */
while (1){
/* Init ADC */
ADC_CON = 0x80; /* Enable A/D converter */
/* Start Convert on AD0BUSY set */
ADC_CON_ADBSY = 1; /* Start ADC conversion */
while (ADC_CON_ADBSY); /* Wait for conversion */
/* Output 0-1023 ADDAT value without using floating-point */
printf ("ADDAT Value %4u = %01u.%04u Volts\r",
(unsigned) ADC_DAT,
(unsigned) (ADC_DAT * VREF) >> 10, /* Output Integer Portion */
(unsigned) ((ADC_DAT * VREF * 10000UL) >> 10UL) % 10000); /* Output Decimal Portion */
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -