M
Maverickmax
Guest
Hej
Jeg har forsøgt at gøre mit mikrocontroller til at sende data til HyperTerminal, men der skete ingenting.Im ikke 100 procent helt sikker på, om min kode forårsage problemet.Så kan du bedes du venligst tjekke min kode for eventuelle fejl?
Cheer
Maverick Max
Kode:
/ / Header-filer
# include "main.h"
# include "port.h"
# include "delay_loop.h"int result_G;void serial_init ();
void send_serial (unsigned char * s);
void send_1_char (unsigned char c);void initialize ();
void start_conversion ();/ / interrupt1 () afbryder 2void serial_init ()
(
SCON = 0x50; / / Setup til 8-bit data
TMOD = 0x20; / / Setup timer 1 for auto-reload
Th1 = 0xF3; / / Setup til 2400 baud
TR1 = 1; / / Slå timeren 1
TI = 1; / / Angiv klar til at sende
)void send_serial (unsigned char * s)
(
while (* s! = 0x00)
(
SBUF =* s;
while (! TI)
()
TI = 0;s ;
)
)void send_1_char (unsigned char c)
(
SBUF = c;
while (! TI)
()
TI = 0;
)void initialize ()
(
ADC_RD = 1;
ADC_WR = 1;
IT1 = 1;
EX1 = 1;
EA = 1;
)void start_conversion ()
(
ADC_WR = 0;
ADC_WR = 1;
)interrupt1 () afbryder 2
(
ADC_RD = 0;
result_G = DATA;ADC_RD = 1;
send_1_char (result_G);
Delay_Loop (100);
start_conversion ();
)void main (void)
(
unsigned char crlf [] = (0x0D, 0x0A, 0x00);
serial_init ();
send_serial (crlf);
send_serial ("--------------------------------");
send_serial (crlf);initialize ();
start_conversion ();while (1)
(
LED = ON;
Delay_Loop (25);
LED = OFF;
Delay_Loop (25);
))
Jeg har forsøgt at gøre mit mikrocontroller til at sende data til HyperTerminal, men der skete ingenting.Im ikke 100 procent helt sikker på, om min kode forårsage problemet.Så kan du bedes du venligst tjekke min kode for eventuelle fejl?
Cheer
Maverick Max
Kode:
/ / Header-filer
# include "main.h"
# include "port.h"
# include "delay_loop.h"int result_G;void serial_init ();
void send_serial (unsigned char * s);
void send_1_char (unsigned char c);void initialize ();
void start_conversion ();/ / interrupt1 () afbryder 2void serial_init ()
(
SCON = 0x50; / / Setup til 8-bit data
TMOD = 0x20; / / Setup timer 1 for auto-reload
Th1 = 0xF3; / / Setup til 2400 baud
TR1 = 1; / / Slå timeren 1
TI = 1; / / Angiv klar til at sende
)void send_serial (unsigned char * s)
(
while (* s! = 0x00)
(
SBUF =* s;
while (! TI)
()
TI = 0;s ;
)
)void send_1_char (unsigned char c)
(
SBUF = c;
while (! TI)
()
TI = 0;
)void initialize ()
(
ADC_RD = 1;
ADC_WR = 1;
IT1 = 1;
EX1 = 1;
EA = 1;
)void start_conversion ()
(
ADC_WR = 0;
ADC_WR = 1;
)interrupt1 () afbryder 2
(
ADC_RD = 0;
result_G = DATA;ADC_RD = 1;
send_1_char (result_G);
Delay_Loop (100);
start_conversion ();
)void main (void)
(
unsigned char crlf [] = (0x0D, 0x0A, 0x00);
serial_init ();
send_serial (crlf);
send_serial ("--------------------------------");
send_serial (crlf);initialize ();
start_conversion ();while (1)
(
LED = ON;
Delay_Loop (25);
LED = OFF;
Delay_Loop (25);
))