修改了 1 中不能连续调用 字符串发送的BUG!!
/*-----------------------------------------------
名称:串口通信 修复程序1中无法连续调用字符串发送的BUG
编写:LZM kaly.liu@163.com
日期:2015.05.24
修改:无
内容:连接好串口波特率设置为9600,无奇偶校验
晶振11.0592MHz
接上串口,可以接收到自己发送的字符
------------------------------------------------*/
#include /******************************************************************* 请提前计算一下所选晶振能达到的最高速度,波特率不能超过最高速度 (1) 波特率加倍(SMOD=1): Max_Baud = FOSC/12/16 (2) 波特率不加倍(SMOD=0):Max_Baud = FOSC/12/32 例如:22.1184MHz晶振,波特率加倍时,最大波特率=22118400/12/16=115200 *******************************************************************/ #define FOSC 11059200 //振荡频率 #define BAUD 9600 //波特率 #define SMOD 1 //是否波特率加倍 #if SMOD #define TC_VAL (256-FOSC/16/12/BAUD) #else #define TC_VAL (256-FOSC/32/12/BAUD) #endif typedef unsigned char uint8; typedef unsigned int uint16; code const char str1[] = "The string is 来自单片机!rn"; code const char str2[] = "Author: Louis rn"; code const char str3[] = "多多指教~~rn"; //const 限定一个变量不允许被改变。在一定程度上提高程序安全性和可靠性 //code 存储区间为 程序存储区 /***************函数声明*******************/ void InitUART(void); void SendOneByte(uint8); void SendrStr(const uint8 *ptr); /****************主函数********************/ void main(void) { uint8 i=0; InitUART(); while(str2[i]!='