?? l_9_3_autobaud.c
字號:
#include "config.h"#include "serial.c"#include "serio.c"// do autobaud detection// prototypesvoid autobuad(void);// HSPLL mode, crystal = 7.3728 MHz // so Fosc = 29,491,200char baud_rate[] = {191,95,47,31,15,7};// enter carriage return repeatedly// to set baud ratevoid autobaud(void){ char i,c,exit; i=0; serial_init(baud_rate[i],1); exit = 0; while(!exit) { // wait for character while (!RCIF); // check RCIF bit c = RCREG; if (FERR || OERR) { // baud rate too fast, reset i = 0; CREN = 0; // clear error CREN = 1; } if (c == 0x0D) { // found baud rate printf("Found baud rate."); pcrlf(); exit = 1; } else { i++; if (i > 5) i = 0; // try again serial_init(baud_rate[i],1); } }} // Try to automatically determine baud rate,// then echovoid main(void){ char c; autobaud(); while(1){ // do character echo c = getch(); c++; putch(c); }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -